From ef7ee123739bab7a586e072bdfab4fa64f90634a Mon Sep 17 00:00:00 2001 From: Carlos Date: Wed, 27 Sep 2017 11:51:25 +0200 Subject: [PATCH] client side unit test for autocomplete field() query functionality --- client/core/src/autocomplete/autocomplete.spec.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/client/core/src/autocomplete/autocomplete.spec.js b/client/core/src/autocomplete/autocomplete.spec.js index 92369fcaf..6e2b89bf6 100644 --- a/client/core/src/autocomplete/autocomplete.spec.js +++ b/client/core/src/autocomplete/autocomplete.spec.js @@ -75,8 +75,8 @@ describe('Component vnAutocomplete', () => { }); }); - describe('when value is not an object', () => { - it(`should set _field value`, () => { + describe('when value is a number', () => { + it(`should set field find an existing item in the controller.items property`, () => { let controller = $componentController('vnAutocomplete', {$scope, $element, $httpBackend, $timeout}); controller.items = [{id: 1, name: 'test1'}, {id: 2, name: 'Bruce Wayne'}]; controller.field = 2; @@ -88,6 +88,15 @@ describe('Component vnAutocomplete', () => { expect(controller._field).toEqual(3); }); + + it(`should set field performing a query as the item id isn't present in the controller.items property`, () => { + let controller = $componentController('vnAutocomplete', {$scope, $element, $httpBackend, $timeout}, {url: 'test.com'}); + $httpBackend.whenGET('test.com?filter={"fields":{"id":true,"name":true},"where":{"id":3}}').respond(3); + $httpBackend.expectGET('test.com?filter={"fields":{"id":true,"name":true},"where":{"id":3}}'); + controller.items = [{id: 1, name: 'test1'}, {id: 2, name: 'Bruce Wayne'}]; + controller.field = 3; + $httpBackend.flush(); + }); }); }); });