salix/modules/supplier/front/account/index.spec.js

72 lines
2.3 KiB
JavaScript
Raw Normal View History

2021-01-07 14:14:38 +00:00
import './index.js';
describe('Supplier Component vnSupplierAccount', () => {
let $scope;
let $element;
let controller;
let $httpBackend;
beforeEach(ngModule('supplier'));
2021-01-07 14:14:38 +00:00
beforeEach(inject(($componentController, $rootScope, _$httpBackend_) => {
$httpBackend = _$httpBackend_;
$scope = $rootScope.$new();
$scope.bankEntity = {
2021-02-17 12:32:09 +00:00
open: () => {}
};
$element = angular.element('<vn-supplier-accounts></supplier-accounts>');
controller = $componentController('vnSupplierAccount', {$element, $scope});
controller.supplierAccount = {
supplierFk: 442,
name: 'Verdnatura'
};
}));
2021-01-07 14:14:38 +00:00
describe('showBankEntity()', () => {
it('should do nothing if it default is prevented', () => {
const event = {
defaultPrevented: true,
preventDefault: () => {}
};
jest.spyOn(event, 'preventDefault');
2021-02-17 12:32:09 +00:00
jest.spyOn(controller.$.bankEntity, 'open');
2021-01-07 14:14:38 +00:00
controller.showBankEntity(event);
2021-01-07 14:14:38 +00:00
expect(event.preventDefault).not.toHaveBeenCalledWith();
2021-02-17 12:32:09 +00:00
expect(controller.$.bankEntity.open).not.toHaveBeenCalledWith();
});
2021-02-17 12:32:09 +00:00
it('should call preventDefault() and open() when the default is not prevented', () => {
const event = {
defaultPrevented: false,
preventDefault: () => {}
};
2021-02-17 12:32:09 +00:00
jest.spyOn(event, 'preventDefault');
2021-02-17 12:32:09 +00:00
jest.spyOn(controller.$.bankEntity, 'open');
controller.showBankEntity(event);
2021-01-07 14:14:38 +00:00
expect(event.preventDefault).toHaveBeenCalledWith();
2021-02-17 12:32:09 +00:00
expect(controller.$.bankEntity.open).toHaveBeenCalledWith();
});
it('should request to create a new bank entity', () => {
controller.bankEntity = {
name: 'My new bank entity',
bic: 'ES1234',
countryFk: 1,
id: 2200
};
const query = `SupplierAccounts/${controller.$.bankEntity.id}/createBankEntity`;
$httpBackend.expectPATCH(query).respond({id: 2200});
controller.onBankEntityAccept();
$httpBackend.flush();
2021-01-07 14:14:38 +00:00
expect(controller.supplierAccount.bankEntityFk).toEqual(controller.bankEntity.id);
2021-01-07 14:14:38 +00:00
});
});
});