From 9390c0efedb180902b0cdf7c140f1391ef639bf7 Mon Sep 17 00:00:00 2001 From: Javier Segarra Date: Fri, 7 Feb 2025 07:53:00 +0100 Subject: [PATCH] test: refs #6321 getSimilar.spec.js --- modules/item/back/methods/item/getSimilar.js | 2 +- .../methods/item/specs/getSimilar.spec.js | 49 +++++++++++++++++++ 2 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 modules/item/back/methods/item/specs/getSimilar.spec.js diff --git a/modules/item/back/methods/item/getSimilar.js b/modules/item/back/methods/item/getSimilar.js index 2479d08b52..05c4a20e53 100644 --- a/modules/item/back/methods/item/getSimilar.js +++ b/modules/item/back/methods/item/getSimilar.js @@ -1,5 +1,5 @@ module.exports = Self => { - Self.remoteMethodCtx('getSimilar', { + Self.remoteMethod('getSimilar', { description: 'Returns list of items with similar item requested', accessType: 'READ', accepts: [ diff --git a/modules/item/back/methods/item/specs/getSimilar.spec.js b/modules/item/back/methods/item/specs/getSimilar.spec.js new file mode 100644 index 0000000000..5dec077b66 --- /dev/null +++ b/modules/item/back/methods/item/specs/getSimilar.spec.js @@ -0,0 +1,49 @@ +const models = require('vn-loopback/server/server').models; + +describe('Item get similar', () => { + let options; + let tx; + const ctx = beforeAll.getCtx(); + beforeAll.mockLoopBackContext(); + beforeEach(async() => { + tx = await models.Item.beginTransaction({}); + options = {transaction: tx}; + }); + + afterEach(async() => { + if (tx) + await tx.rollback(); + }); + + it('should return similar items', async() => { + const filter = { + itemFk: 88, sales: 43, + where: { + 'scopeDays': '2', + 'showType': true, + 'alertLevelCode': 'FREE', + 'date': '2001-01-01T11:00:00.000Z', + 'warehouseFk': 1 + } + }; + const result = await models.Item.getSimilar(ctx, filter, options); + + expect(result.length).toEqual(2); + }); + + it('should return empty array is if not exists', async() => { + const filter = { + itemFk: 88, sales: 43, + where: { + 'scopeDays': '2', + 'showType': true, + 'alertLevelCode': 'FREE', + 'date': '2001-01-01T11:00:00.000Z', + 'warehouseFk': 60 + } + }; + const result = await models.Item.getSimilar(ctx, filter, options); + + expect(result.length).toEqual(0); + }); +});