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

46 lines
1.1 KiB
JavaScript

const app = require(`${serviceRoot}/server/server`);
describe('order removes()', () => {
let row;
let newRow;
beforeAll(async() => {
row = await app.models.OrderRow.findOne({where: {id: 12}});
row.id = null;
newRow = await app.models.OrderRow.create(row);
});
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}]);
});
});