From fe7bce8771369debe7745b19832305f09989446c Mon Sep 17 00:00:00 2001 From: Tanmay1201 Date: Thu, 26 Mar 2020 18:53:12 +0530 Subject: [PATCH 1/3] Unit Test addition of LicenseDropdown.vue --- src/components/LicenseDropdown.vue | 118 +++++++++++++++-------------- tests/e2e/specs/FirstStep.js | 0 tests/unit/LicenseDropdown.spec.js | 71 +++++++++++++++++ 3 files changed, 131 insertions(+), 58 deletions(-) create mode 100644 tests/e2e/specs/FirstStep.js create mode 100644 tests/unit/LicenseDropdown.spec.js diff --git a/src/components/LicenseDropdown.vue b/src/components/LicenseDropdown.vue index 39cf5a63c..d806a007f 100644 --- a/src/components/LicenseDropdown.vue +++ b/src/components/LicenseDropdown.vue @@ -1,67 +1,69 @@ diff --git a/tests/e2e/specs/FirstStep.js b/tests/e2e/specs/FirstStep.js new file mode 100644 index 000000000..e69de29bb diff --git a/tests/unit/LicenseDropdown.spec.js b/tests/unit/LicenseDropdown.spec.js new file mode 100644 index 000000000..e1cf09a8b --- /dev/null +++ b/tests/unit/LicenseDropdown.spec.js @@ -0,0 +1,71 @@ +import { mount, createLocalVue, config } from "@vue/test-utils"; +import LicenseDropdown from "@/Components/LicenseDropdown.vue"; +import VueI18n from "vue-i18n"; +import Vuex from "vuex"; +import Buefy from "buefy"; +import { doesNotReject } from "assert"; + +describe("LicenseDropdown.vue", () => { + let wrapper; + let getters; + let store; + + beforeEach(() => { + const localVue = createLocalVue(); + localVue.use(VueI18n); + localVue.use(Vuex); + localVue.use(Buefy); + + getters = { + shortName: state => { + return "foo"; + }, + fullName: state => { + return "foo-bar"; + } + }; + + store = new Vuex.Store({ + getters + }); + + const messages = require("@/locales/en.json"); + const i18n = new VueI18n({ + locale: "en", + fallbackLocale: "en", + messages: messages + }); + + config.mocks.i18n = i18n; + + config.mocks.$t = key => { + return i18n.messages[key]; + }; + wrapper = mount(LicenseDropdown, { + localVue, + store + }); + }); + + it("Has the main field tag", () => { + expect(wrapper.contains(".license-dropdown")).toBe(true); + }); + + it("Has the option tag", () => { + expect(wrapper.contains(".options")).toBe(true); + }); + + it("should emit input event from setCurrentLicense method", async () => { + wrapper.vm.$emit("input"); + await wrapper.vm.$nextTick(); + expect(wrapper.emitted().input).toBeTruthy(); + }); + + it("Checks whether select element is getting triggered", () => { + wrapper + .findAll(".select") + .at(0) + .trigger("input"); + }); + +}); From a5045b06cfb48938e8f2d2d778553f45f50b6edc Mon Sep 17 00:00:00 2001 From: Tanmay1201 Date: Thu, 26 Mar 2020 19:41:41 +0530 Subject: [PATCH 2/3] Updated Tests for LicenseDropdown.vue --- tests/unit/LicenseDropdown.spec.js | 31 +++++++++++------------------- 1 file changed, 11 insertions(+), 20 deletions(-) diff --git a/tests/unit/LicenseDropdown.spec.js b/tests/unit/LicenseDropdown.spec.js index e1cf09a8b..b54bb37b8 100644 --- a/tests/unit/LicenseDropdown.spec.js +++ b/tests/unit/LicenseDropdown.spec.js @@ -3,7 +3,6 @@ import LicenseDropdown from "@/Components/LicenseDropdown.vue"; import VueI18n from "vue-i18n"; import Vuex from "vuex"; import Buefy from "buefy"; -import { doesNotReject } from "assert"; describe("LicenseDropdown.vue", () => { let wrapper; @@ -16,24 +15,21 @@ describe("LicenseDropdown.vue", () => { localVue.use(Vuex); localVue.use(Buefy); - getters = { - shortName: state => { - return "foo"; - }, - fullName: state => { - return "foo-bar"; - } - }; + const language = require("../../src/locales/en.json"); + + const i18n = new VueI18n({ + locale: "en", + fallbackLocale: "en", + messages: language + }); store = new Vuex.Store({ getters }); - const messages = require("@/locales/en.json"); - const i18n = new VueI18n({ - locale: "en", - fallbackLocale: "en", - messages: messages + wrapper = mount(LicenseDropdown, { + localVue, + store }); config.mocks.i18n = i18n; @@ -41,13 +37,9 @@ describe("LicenseDropdown.vue", () => { config.mocks.$t = key => { return i18n.messages[key]; }; - wrapper = mount(LicenseDropdown, { - localVue, - store - }); }); - it("Has the main field tag", () => { + it("Has the field tag", () => { expect(wrapper.contains(".license-dropdown")).toBe(true); }); @@ -67,5 +59,4 @@ describe("LicenseDropdown.vue", () => { .at(0) .trigger("input"); }); - }); From 1a80a0f54d1124796d9d35e43d09b2615b49beb6 Mon Sep 17 00:00:00 2001 From: Tanmay1201 Date: Fri, 27 Mar 2020 00:25:43 +0530 Subject: [PATCH 3/3] Updated Unit tests for LicenseDropdown.vue --- tests/unit/LicenseDropdown.spec.js | 32 ++++++++++++++++++------------ 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/tests/unit/LicenseDropdown.spec.js b/tests/unit/LicenseDropdown.spec.js index b54bb37b8..969e5df22 100644 --- a/tests/unit/LicenseDropdown.spec.js +++ b/tests/unit/LicenseDropdown.spec.js @@ -8,6 +8,7 @@ describe("LicenseDropdown.vue", () => { let wrapper; let getters; let store; + let state; beforeEach(() => { const localVue = createLocalVue(); @@ -15,28 +16,33 @@ describe("LicenseDropdown.vue", () => { localVue.use(Vuex); localVue.use(Buefy); - const language = require("../../src/locales/en.json"); - - const i18n = new VueI18n({ - locale: "en", - fallbackLocale: "en", - messages: language - }); + getters = { + shortName: state => { + return "name"; + }, + fullName: state => { + return "fullName"; + } + }; store = new Vuex.Store({ + store, getters }); - - wrapper = mount(LicenseDropdown, { - localVue, - store + const messages = require("@/locales/en.json"); + const i18n = new VueI18n({ + locale: "en", + fallbackLocale: "en", + messages: messages }); - config.mocks.i18n = i18n; - config.mocks.$t = key => { return i18n.messages[key]; }; + wrapper = mount(LicenseDropdown, { + localVue, + store + }); }); it("Has the field tag", () => {