diff --git a/app/src/components/shared/sharedFilter/FilterHistoryDiagramCard.vue b/app/src/components/shared/sharedFilter/FilterHistoryDiagramCard.vue index e745fad718c668d48a55d36f999b01477ec310c7..90e9bdb4c3326b18d4cffbfb8b608615dac2c22f 100644 --- a/app/src/components/shared/sharedFilter/FilterHistoryDiagramCard.vue +++ b/app/src/components/shared/sharedFilter/FilterHistoryDiagramCard.vue @@ -2,7 +2,7 @@ <v-row> <v-col cols="12"> <v-card> - <v-card-title> + <v-card-title data-testid="CardTitle"> {{ title }} </v-card-title> @@ -14,7 +14,7 @@ {{ $t("sharedTable.selectedAreaDiagram") }} </div> <v-container class="justify-center" fluid> - <v-alert v-show="showFailAlert" dismissible transition="fade-transition" type="error"> + <v-alert v-show="showFailAlert" dismissible transition="fade-transition" data-testid="ErrorMessage" type="error"> {{ errorMessage }} </v-alert> </v-container> diff --git a/app/tests/unit/FilterHistoryDiagramCard.spec.ts b/app/tests/unit/FilterHistoryDiagramCard.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..6558f764d3273556f976280b01f38d29d4767f34 --- /dev/null +++ b/app/tests/unit/FilterHistoryDiagramCard.spec.ts @@ -0,0 +1,49 @@ +import {expect} from "chai"; +import {Locales} from "@/i18n/locales"; +import {createLocalVue, mount} from "@vue/test-utils"; +import {setupI18n} from "@/plugins/i18n"; +import vuetify from "@/plugins/vuetify"; +import VueRouter from "vue-router"; +import FilterHistoryDiagramsCard from "@/components/shared/sharedFilter/FilterHistoryDiagramCard.vue"; + +declare const global: any; + +describe("FilterHistoryDiagramsCard.vue", () => { + global.requestAnimationFrame = (cb: any) => cb(); + let wrapper: any = null; + + beforeEach(() => { + const localVue = createLocalVue(); + localVue.use(VueRouter); + const router = new VueRouter(); + const i18n = setupI18n(localVue); + i18n.locale = Locales.DE; + + wrapper = mount(FilterHistoryDiagramsCard, { + i18n, + localVue, + vuetify, + router, + stubs: ["VegaLite"], + mocks: { + $auth: { + isAuthenticated: true, + }, + }, + propsData: { + title: "InspectionCount", + errorMessage: "Error", + showFailAlert: true, + }, + }); + }); + afterEach(() => { + wrapper = null; + }); + + it("FilterHistoryDiagramCard should show error messages and card-title", () => { + expect(wrapper.find("[data-testid='CardTitle']").exists()).to.equal(true); + expect(wrapper.find("[data-testid='ErrorMessage']").exists()).to.equal(true); + expect(wrapper.vm.$props.errorMessage).to.equal("Error"); + }); +});