From 18b091cc2001b473489f97e1b8dcda0ddb5f2229 Mon Sep 17 00:00:00 2001 From: Marcel Rossi <54536778+MarcelR1998@users.noreply.github.com> Date: Thu, 30 Nov 2023 18:44:30 +0100 Subject: [PATCH] feat: exposes gotoPeriod method to top level (#212) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: exposes gotoPeriod method to top level * test: add unit test for new public method goToPeriod * test: fix bad test naming --------- Co-authored-by: Tom Ă–sterlund --- src/Qalendar.vue | 7 ++++++- src/components/header/Header.vue | 6 +++--- tests/unit/components/Qalendar.test.ts | 11 +++++++++++ 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/Qalendar.vue b/src/Qalendar.vue index 168f5281..2dc7a56f 100644 --- a/src/Qalendar.vue +++ b/src/Qalendar.vue @@ -18,6 +18,7 @@ diff --git a/src/components/header/Header.vue b/src/components/header/Header.vue index e5998164..2816e69b 100644 --- a/src/components/header/Header.vue +++ b/src/components/header/Header.vue @@ -12,13 +12,13 @@ @@ -188,7 +188,7 @@ export default defineComponent({ this.$emit('updated-period', value); }, - goToPeriod(event: MouseEvent, direction: 'previous' | 'next') { + goToPeriod(direction: 'previous' | 'next') { (this.$refs.periodSelect as typeof DatePicker).goToPeriod(direction); }, } diff --git a/tests/unit/components/Qalendar.test.ts b/tests/unit/components/Qalendar.test.ts index c7735ad4..fd16ccd0 100644 --- a/tests/unit/components/Qalendar.test.ts +++ b/tests/unit/components/Qalendar.test.ts @@ -480,4 +480,15 @@ describe('Qalendar.vue', () => { month.vm.$emit('updated-period', { start: new Date(), end: new Date(), selectedDate: new Date() }) expect(wrapper.vm.mode).toBe('day') }) + + it('should invoke the goToPeriod method in the header', () => { + const wrapper = mount(Qalendar) + const header = wrapper.findComponent({ name: 'AppHeader' }) + const goToPeriodSpy = vi.spyOn(header.vm, 'goToPeriod') + const expectedDirection = 'forward' + + wrapper.vm.goToPeriod(expectedDirection) + + expect(goToPeriodSpy).toHaveBeenCalledWith(expectedDirection) + }) })