salix/modules/ticket/back/methods/ticket-dms/specs/saveSign.spec.js

58 lines
1.9 KiB
JavaScript
Raw Normal View History

const models = require('vn-loopback/server/server').models;
fdescribe('TicketDms saveSign()', () => {
const FormData = require('form-data');
const data = new FormData();
let ctx = {req: {
accessToken: {userId: 9},
headers: {
...data.getHeaders()
},
on: (param, cb) => {}
}};
it(`should not save sign if the ticket's alert level is lower than 2`, async() => {
const tx = await models.TicketDms.beginTransaction({});
const ticketWithOkState = 12;
try {
const options = {transaction: tx};
ctx.args = {tickets: [ticketWithOkState]};
await models.TicketDms.saveSign(ctx, options);
const ticket = await models.Ticket.findById(ticketWithOkState, {fields: ['isSigned']}, options);
const ticketDms = await models.TicketDms.findOne({where: {ticketFk: ticketWithOkState}}, options);
expect(ticket.isSigned).toEqual(false);
expect(ticketDms).toEqual(null);
await tx.rollback();
} catch (e) {
await tx.rollback();
throw e;
}
});
it(`should save sign if the ticket's alert level is greater than 2`, async() => {
const tx = await models.TicketDms.beginTransaction({});
const ticketWithPackedState = 7;
try {
const options = {transaction: tx};
ctx.args = {tickets: [ticketWithPackedState]};
await models.TicketDms.saveSign(ctx, options);
const ticket = await models.Ticket.findById(ticketWithPackedState, {fields: ['isSigned']}, options);
const ticketDms = await models.TicketDms.findOne({where: {ticketFk: ticketWithPackedState}}, options);
expect(ticket.isSigned).toEqual(true);
expect(ticketDms).toBeDefined();
await tx.rollback();
} catch (e) {
await tx.rollback();
throw e;
}
});
});