const app = require('vn-loopback/server/server'); describe('loopback model Supplier', () => { let supplierOne; let supplierTwo; beforeAll(async done => { supplierOne = await app.models.Supplier.findById(1); supplierTwo = await app.models.Supplier.findById(442); done(); }); afterAll(async done => { await supplierOne.updateAttribute('payMethodFk', supplierOne.payMethodFk); await supplierTwo.updateAttribute('payMethodFk', supplierTwo.payMethodFk); done(); }); describe('payMethodFk', () => { it('should throw an error when attempting to set an invalid payMethod id in the supplier', async() => { let error; const expectedError = 'You can not select this payment method without a registered bankery account'; const supplier = await app.models.Supplier.findById(1); await supplier.updateAttribute('payMethodFk', 4) .catch(e => { error = e; expect(error.message).toContain(expectedError); }); expect(error).toBeDefined(); }); it('should not throw if the payMethod id is valid', async() => { let error; const supplier = await app.models.Supplier.findById(442); await supplier.updateAttribute('payMethodFk', 4) .catch(e => { error = e; }); expect(error).toBeDefined(); }); }); });