salix/modules/ticket/back/methods/sale/specs/deleteSales.spec.js

46 lines
1.2 KiB
JavaScript

const app = require('vn-loopback/server/server');
describe('sale deleteSales()', () => {
let sale;
let newSale;
beforeAll(async done => {
try {
sale = await app.models.Sale.findOne({where: {id: 9}});
sale.id = null;
newSale = await app.models.Sale.create(sale);
} catch (error) {
console.error(error);
}
done();
});
it('should throw an error if the ticket of the given sales is not editable', async() => {
let ctx = {req: {accessToken: {userId: 9}}};
let error;
const sales = [{id: 1, instance: 0}, {id: 2, instance: 1}];
const ticketId = 2;
try {
await app.models.Sale.deleteSales(ctx, sales, ticketId);
} catch (e) {
error = e;
}
expect(error).toEqual(new Error(`The sales of this ticket can't be modified`));
});
it('should delete the sale', async() => {
let ctx = {req: {accessToken: {userId: 9}}};
const sales = [{id: newSale.id, instance: 0}];
const ticketId = 16;
let res = await app.models.Sale.deleteSales(ctx, sales, ticketId);
expect(res).toEqual([{count: 1}]);
});
});