salix/modules/travel/back/methods/travel/specs/deleteThermograph.spec.js

55 lines
1.9 KiB
JavaScript

const app = require('vn-loopback/server/server');
describe('Travel deleteThermograph()', () => {
const models = app.models;
const travelId = 1;
const currentUserId = 1102;
const thermographId = 'TZ1905012010';
const travelThermographId = 4;
const dmsId = 5;
const ctx = {req: {accessToken: {userId: currentUserId}}};
let travelThermographBefore;
afterAll(async() => {
await app.models.TravelThermograph.rawSql(`
UPDATE travelThermograph
SET travelFk = ?, dmsFk = ?
WHERE id = ?`, [
travelThermographBefore.travelFk,
travelThermographBefore.dmsFk,
travelThermographBefore.id
]);
});
it(`should set the travelFk and dmsFk properties to null for travel thermograph removal`, async() => {
spyOn(app.models.Dms, 'removeFile').and.returnValue([{id: 5}]);
travelThermographBefore = await models.TravelThermograph.findOne({
where: {
thermographFk: thermographId,
travelFk: travelId
}
});
await models.Travel.deleteThermograph(ctx, travelThermographId);
const travelThermographAfter = await models.TravelThermograph.findOne({
where: {
thermographFk: thermographId,
travelFk: null
}
});
expect(app.models.Dms.removeFile).toHaveBeenCalledWith(ctx, dmsId);
expect(travelThermographBefore).toBeDefined();
expect(travelThermographBefore.thermographFk).toEqual(thermographId);
expect(travelThermographBefore.travelFk).toEqual(travelId);
expect(travelThermographBefore.dmsFk).toEqual(5);
expect(travelThermographAfter).toBeDefined();
expect(travelThermographAfter.thermographFk).toEqual(thermographId);
expect(travelThermographAfter.travelFk).toBeNull();
});
});