import './index'; describe('Order', () => { describe('Component vnOrderVolume', () => { let controller; let $httpBackend; let $state; let $scope; beforeEach(ngModule('order')); beforeEach(angular.mock.inject(($componentController, _$state_, _$httpBackend_, $rootScope) => { $httpBackend = _$httpBackend_; $scope = $rootScope.$new(); $scope.model = {data: [{itemFk: 1}, {itemFk: 2}], accept: () => { return { then: () => {} }; }}; $scope.descriptor = {show: () => {}}; $scope.popover = {relocate: () => {}}; $state = _$state_; $state.params.id = 1; const $element = angular.element(''); controller = $componentController('vnOrderVolume', {$element, $scope}); })); it('should join the sale volumes to its respective sale', () => { let response = {volumes: [{itemFk: 1, volume: 0.008}, {itemFk: 2, volume: 0.003}]}; $httpBackend.whenGET(`Orders/1/getVolumes`).respond(response); $httpBackend.expectGET(`Orders/1/getVolumes`); controller.onDataChange(); $httpBackend.flush(); expect(controller.$.model.data[0].volume).toBe(0.008); expect(controller.$.model.data[1].volume).toBe(0.003); }); describe('showDescriptor()', () => { it('should set $scope.descriptor.itemFk, $scope.descriptor.parent and call $scope.descriptor.show()', () => { let event = {target: 1}; let itemFk = 1; jest.spyOn(controller.$.descriptor, 'show'); controller.showDescriptor(event, itemFk); expect(controller.$.descriptor.itemFk).toBe(1); expect(controller.$.descriptor.parent).toBe(1); expect(controller.$.descriptor.show).toHaveBeenCalledWith(); }); }); describe('onDescriptorLoad()', () => { it('should call $scope.popover.relocate()', () => { jest.spyOn(controller.$.popover, 'relocate'); controller.onDescriptorLoad(); expect(controller.$.popover.relocate).toHaveBeenCalledWith(); }); }); }); });