From c867d6da5202c51c2836ce17f3311f7072d59ddd Mon Sep 17 00:00:00 2001 From: alexm <alexm@verdnatura.es> Date: Wed, 26 Mar 2025 08:56:37 +0100 Subject: [PATCH] test: refs #8449 refactor VnLog and VnLogFilter unit test --- src/components/common/VnLog.vue | 32 ------------------- src/components/common/VnLogFilter.vue | 1 + src/components/common/__tests__/VnLog.spec.js | 23 ------------- .../common/__tests__/VnLogFilter.spec.js | 28 ++++++++++++++++ 4 files changed, 29 insertions(+), 55 deletions(-) create mode 100644 src/components/common/__tests__/VnLogFilter.spec.js diff --git a/src/components/common/VnLog.vue b/src/components/common/VnLog.vue index c96cc2b25..e9805815e 100644 --- a/src/components/common/VnLog.vue +++ b/src/components/common/VnLog.vue @@ -71,32 +71,8 @@ const filter = { }; const paginate = ref(); -const actions = ref(); -const changeInput = ref(); const searchInput = ref(); -const userRadio = ref(); -const userSelect = ref(); -const dateFrom = ref(); -const dateTo = ref(); const selectedFilters = ref({}); -const checkboxOptions = ref({ - insert: { - label: 'Creates', - selected: false, - }, - update: { - label: 'Edits', - selected: false, - }, - delete: { - label: 'Deletes', - selected: false, - }, - select: { - label: 'Accesses', - selected: false, - }, -}); let validations = models; let pointRecord = ref(null); @@ -298,15 +274,7 @@ function exprBuilder(param, value) { async function clearFilter() { selectedFilters.value = {}; byRecord.value = false; - userSelect.value = undefined; searchInput.value = undefined; - changeInput.value = undefined; - dateFrom.value = undefined; - dateTo.value = undefined; - userRadio.value = undefined; - Object.keys(checkboxOptions.value).forEach( - (opt) => (checkboxOptions.value[opt].selected = false), - ); await applyFilter(); } diff --git a/src/components/common/VnLogFilter.vue b/src/components/common/VnLogFilter.vue index 2c3f0e388..dd34d5c99 100644 --- a/src/components/common/VnLogFilter.vue +++ b/src/components/common/VnLogFilter.vue @@ -112,6 +112,7 @@ function getActions() { :info="t('tooltips.search')" dense filled + data-cy="vnLog-search" /> </template> <template #filter-changedModel="{ params, columnName, searchFn }"> diff --git a/src/components/common/__tests__/VnLog.spec.js b/src/components/common/__tests__/VnLog.spec.js index 53d2732a0..7f33578df 100644 --- a/src/components/common/__tests__/VnLog.spec.js +++ b/src/components/common/__tests__/VnLog.spec.js @@ -108,27 +108,4 @@ describe('VnLog', () => { expect(vm.logTree[0].originFk).toEqual(1); expect(vm.logTree[0].logs[0].user.name).toEqual('salesPerson'); }); - - it('should correctly set the selectedFilters when filtering', () => { - vm.searchInput = '1'; - vm.userSelect = '21'; - vm.checkboxOptions.insert.selected = true; - vm.checkboxOptions.update.selected = true; - - vm.selectFilter('search'); - vm.selectFilter('userSelect'); - - expect(vm.selectedFilters.changedModelId).toEqual('1'); - expect(vm.selectedFilters.userFk).toEqual('21'); - expect(vm.selectedFilters.action).toEqual({ inq: ['insert', 'update'] }); - }); - - it('should correctly set the date from', () => { - vm.dateFrom = '18-09-2023'; - vm.selectFilter('date', 'from'); - expect(vm.selectedFilters.creationDate.between).toEqual([ - new Date('2023-09-18T00:00:00.000Z'), - new Date('2023-09-18T21:59:59.999Z'), - ]); - }); }); diff --git a/src/components/common/__tests__/VnLogFilter.spec.js b/src/components/common/__tests__/VnLogFilter.spec.js new file mode 100644 index 000000000..a28fa85b1 --- /dev/null +++ b/src/components/common/__tests__/VnLogFilter.spec.js @@ -0,0 +1,28 @@ +import { vi, describe, expect, it, beforeAll, afterEach } from 'vitest'; +import { createWrapper } from 'app/test/vitest/helper'; +import VnLogFilter from 'src/components/common/VnLogFilter.vue'; + +describe('VnLogFilter', () => { + let vm; + beforeAll(async () => { + vm = createWrapper(VnLogFilter, { + props: { + dataKey: 'ClaimLog', + }, + }).vm; + }); + + afterEach(() => { + vi.clearAllMocks(); + }); + + it('should getActions selected', async () => { + vm.checkboxOptions.find((o) => o.name == 'insert').selected = true; + vm.checkboxOptions.find((o) => o.name == 'update').selected = true; + + const actions = vm.getActions(); + + expect(actions.length).toEqual(2); + expect(actions).toEqual(['insert', 'update']); + }); +});