From 9f7f9876ffb1109bdb3cacfbdeade397242ca7f3 Mon Sep 17 00:00:00 2001 From: Sverre <sverrefh@stud.ntnu.no> Date: Mon, 29 Apr 2024 14:33:50 +0200 Subject: [PATCH] Added unit test to CompletedMilestoneDisplay to test rendering --- .../CompletedMilestoneDisplay.spec.ts | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 src/components/__tests__/CompletedMilestoneDisplay.spec.ts diff --git a/src/components/__tests__/CompletedMilestoneDisplay.spec.ts b/src/components/__tests__/CompletedMilestoneDisplay.spec.ts new file mode 100644 index 0000000..5268d48 --- /dev/null +++ b/src/components/__tests__/CompletedMilestoneDisplay.spec.ts @@ -0,0 +1,41 @@ +import { mount } from '@vue/test-utils'; +import CompletedMilestoneDisplay from '../milestone/CompletedMilestoneDisplay.vue' +import { describe, it, expect } from 'vitest' +import { nextTick } from 'vue' + +describe('CompletedMilestoneDisplay', () => { + it('renders with props', async () => { + const wrapper = mount(CompletedMilestoneDisplay, { + props: { + id: 1, + title: 'Test Title', + description: 'Test Description', + goalSum: 1000, + currentSum: 500, + deadline: new Date('2024-05-01'), + startDate: new Date('2024-04-01'), + image: 'test.jpg' + } + }); + + expect(wrapper.find('.title').text()).toBe('Test Title'); + + expect(wrapper.find('.info').exists()).toBe(true); + expect(wrapper.find('.info h4').text()).toBe('Du sparte 500kr'); + + await wrapper.trigger('mouseover'); + + await nextTick(); + + expect(wrapper.find('.info').exists()).toBe(true); + expect(wrapper.find('.info h4').text()).toBe('Test Description'); + + await wrapper.trigger('mouseleave'); + + await nextTick(); + + expect(wrapper.find('.info').exists()).toBe(true); + expect(wrapper.find('.info h4').text()).toBe('Du sparte 500kr'); + }); + +}); -- GitLab