75 lines
2.5 KiB
JavaScript
75 lines
2.5 KiB
JavaScript
|
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;
|
||
|
});
|
||
|
});
|
||
|
});
|