#553 address backend unit tests

This commit is contained in:
Carlos Jimenez 2018-08-21 14:59:04 +02:00
parent fdefb2eb21
commit 1c19e6c3a9
2 changed files with 84 additions and 10 deletions

View File

@ -125,16 +125,16 @@ INSERT INTO `vn`.`province`(`id`, `name`, `countryFk`, `warehouseFk`, `zoneFk`)
INSERT INTO `vn`.`agencyHour`(`id`, `agencyFk`, `weekDay`, `warehouseFk`, `provinceFk`, `maxHour`)
VALUES
( 1 , 1, 0, 1, 1, 13),
( 2 , 1, 1, 1, 1, 14),
( 3 , 1, 2, 1, 1, 15),
( 4 , 1, 3, 1, 1, 16),
( 5 , 1, 4, 1, 1, 17),
( 6 , 2, 0, 1, 1, 13),
( 7 , 2, 1, 1, 1, 14),
( 8 , 2, 2, 1, 1, 15),
( 9 , 2, 3, 1, 1, 16),
( 10, 2, 4, 1, 1, 17),
( 1 , 1, 0, 1, 1, 22),
( 2 , 1, 1, 1, 1, 22),
( 3 , 1, 2, 1, 1, 22),
( 4 , 1, 3, 1, 1, 22),
( 5 , 1, 4, 1, 1, 22),
( 6 , 2, 0, 1, 1, 22),
( 7 , 2, 1, 1, 1, 22),
( 8 , 2, 2, 1, 1, 22),
( 9 , 2, 3, 1, 1, 22),
( 10, 2, 4, 1, 1, 22),
( 11, 7, 0, 1, 1, 22),
( 12, 7, 1, 1, 1, 22),
( 13, 7, 2, 1, 1, 22),

View File

@ -0,0 +1,74 @@
const app = require(`${servicesDir}/client/server/server`);
describe('loopback model address', () => {
let createdAddressId;
afterAll(async() => {
let address = await app.models.Address.findById(25516);
let client = await app.models.Client.findById(101);
await address.updateAttribute('isDefaultAddress', true);
await app.models.Address.destroyById(createdAddressId);
await client.updateAttribute('isEqualizated', false);
});
describe('observe()', () => {
it('should throw an error if the default consignee is unchecked', async() => {
let error;
let address = await app.models.Address.findById(25516);
await address.updateAttribute('isActive', false)
.catch(e => {
error = e;
expect(error.message).toEqual('The default consignee can not be unchecked');
});
expect(error).toBeDefined();
});
it('should set isDefaultAddress to false of all the addresses for a given client', async() => {
let previousDefaultAddress = await app.models.Address.findById(25516);
expect(previousDefaultAddress.isDefaultAddress).toBeTruthy();
let address = await app.models.Address.findById(121);
expect(address.isDefaultAddress).toBeFalsy();
let defaultAddress = await address.updateAttribute('isDefaultAddress', true);
expect(defaultAddress.isDefaultAddress).toBeTruthy();
let noLongerDefaultAddress = await app.models.Address.findById(25516);
expect(noLongerDefaultAddress.isDefaultAddress).toBeFalsy();
});
it('should set isEqualizated to true of a given Client to trigger any new address to have it', async() => {
let client = await app.models.Client.findById(101);
expect(client.isEqualizated).toBeFalsy();
await client.updateAttribute('isEqualizated', true);
let newAddress = await app.models.Address.create({
clientFk: 101,
agencyModeFk: 5,
city: 'here',
isActive: true,
isDefaultAddress: false,
mobile: '555555555',
nickname: 'Test address',
phone: '555555555',
postalCode: '00000',
provinceFk: 1,
street: 'Test address'
});
expect(newAddress.isEqualizated).toBeTruthy();
createdAddressId = newAddress.id;
});
});
});