salix/modules/order/back/methods/order-row/specs/removes.spec.js

48 lines
1.2 KiB
JavaScript

const app = require('vn-loopback/server/server');
describe('order removes()', () => {
let row;
let newRow;
beforeAll(async done => {
row = await app.models.OrderRow.findOne({where: {id: 12}});
row.id = null;
newRow = await app.models.OrderRow.create(row);
done();
});
it('should throw an error if rows property is empty', async() => {
let error;
try {
await app.models.OrderRow.removes({rows: []});
} catch (e) {
error = e;
}
expect(error).toEqual(new Error('There is nothing to delete'));
});
it('should throw an error if the row selected is not editable', async() => {
let error;
try {
await app.models.OrderRow.removes({rows: [2]});
} catch (e) {
error = e;
}
expect(error).toEqual(new Error('This order is not editable'));
});
it('should delete the row', async() => {
let params = {
rows: [newRow.id],
actualOrderId: 16
};
let res = await app.models.OrderRow.removes(params);
expect(res).toEqual([{count: 1}]);
});
});