salix/modules/ticket/back/methods/state/specs/editableState.spec.js

74 lines
2.3 KiB
JavaScript
Raw Normal View History

const models = require('vn-loopback/server/server').models;
2019-08-08 06:33:27 +00:00
describe('ticket editableStates()', () => {
2020-03-26 11:00:07 +00:00
const filter = {where: {name: {like: '%%'}}};
it('should return the expected state for the given role', async() => {
const tx = await models.State.beginTransaction({});
2020-03-26 11:00:07 +00:00
try {
const options = {transaction: tx};
2019-08-08 06:33:27 +00:00
const productionRole = 49;
const ctx = {req: {accessToken: {userId: productionRole}}};
const editableStates = await models.State.editableStates(ctx, filter, options);
const deliveredState = editableStates.some(state => state.code == 'DELIVERED');
expect(deliveredState).toBeTruthy();
await tx.rollback();
} catch (e) {
await tx.rollback();
throw e;
}
2019-08-08 06:33:27 +00:00
});
2020-10-15 16:57:27 +00:00
it(`should return the expected states by a specific role`, async() => {
const tx = await models.State.beginTransaction({});
try {
const options = {transaction: tx};
const productionRole = 18;
const ctx = {req: {accessToken: {userId: productionRole}}};
const editableStates = await models.State.editableStates(ctx, filter, options);
const deliveredState = editableStates.some(state => state.code == 'DELIVERED');
const pickerDesignedState = editableStates.some(state => state.code == 'PICKER_DESIGNED');
expect(deliveredState).toBeFalsy();
expect(pickerDesignedState).toBeTruthy();
await tx.rollback();
} catch (e) {
await tx.rollback();
throw e;
}
2019-08-08 06:33:27 +00:00
});
it(`should return again the expected state by a specific role`, async() => {
const tx = await models.State.beginTransaction({});
try {
const options = {transaction: tx};
const employeeRole = 1;
const ctx = {req: {accessToken: {userId: employeeRole}}};
const editableStates = await models.State.editableStates(ctx, filter, options);
const pickerDesignedState = editableStates.some(state => state.code == 'PICKER_DESIGNED');
expect(pickerDesignedState).toBeTruthy();
2019-08-08 06:33:27 +00:00
await tx.rollback();
} catch (e) {
await tx.rollback();
throw e;
}
2019-08-08 06:33:27 +00:00
});
});