From 0a17a59f2d5485a07c4520efa4775b9209ff553b Mon Sep 17 00:00:00 2001 From: Carlos Date: Tue, 26 Sep 2017 18:21:11 +0200 Subject: [PATCH] client unit tests for autocomplete field() --- .../src/autocomplete/autocomplete.spec.js | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/client/core/src/autocomplete/autocomplete.spec.js b/client/core/src/autocomplete/autocomplete.spec.js index 9ebd6f0521..99be2f97bf 100644 --- a/client/core/src/autocomplete/autocomplete.spec.js +++ b/client/core/src/autocomplete/autocomplete.spec.js @@ -57,4 +57,24 @@ describe('Component vnAutocomplete', () => { }); }); }); + + describe('field() setter', () => { + describe('when value is an object with valueField property', () => { + it(`should set _field and _multifield values and remove it from _multifield if called again`, () => { + let controller = $componentController('vnAutocomplete', {$scope, $element, $httpBackend, $timeout}); + controller.valueField = 'name'; + controller.field = {name: 'Bruce Wayne'}; + + expect(controller._field).toEqual('Bruce Wayne'); + expect(controller._multiField[0]).toEqual('Bruce Wayne'); + + controller.field = {name: 'Bruce Wayne'}; + + expect(controller._multiField).toEqual([]); + + // value is still stored in _field after second call... is this correct? or should be deleted as per _multifield? ask Dani! + expect(controller._field).toEqual('Bruce Wayne'); + }); + }); + }); });