diff --git a/assets/js/components/Config/LoadpointModal.vue b/assets/js/components/Config/LoadpointModal.vue index f45710d8b..82b5cbb98 100644 --- a/assets/js/components/Config/LoadpointModal.vue +++ b/assets/js/components/Config/LoadpointModal.vue @@ -713,8 +713,8 @@ export default { }, phasesOptions() { return [ - { value: "1", name: this.$t("config.loadpoint.phases1p") }, - { value: "3", name: this.$t("config.loadpoint.phases3p") }, + { value: 1, name: this.$t("config.loadpoint.phases1p") }, + { value: 3, name: this.$t("config.loadpoint.phases3p") }, ]; }, showCircuit() { diff --git a/assets/js/components/Helper/SelectGroup.vue b/assets/js/components/Helper/SelectGroup.vue index 0b7f26c16..3b33a413b 100644 --- a/assets/js/components/Helper/SelectGroup.vue +++ b/assets/js/components/Helper/SelectGroup.vue @@ -25,7 +25,7 @@ export default defineComponent({ name: "SelectGroup", props: { id: String, - options: Array as PropType[]>, + options: Array as PropType[]>, modelValue: [Number, String, Boolean, null], equalWidth: Boolean, large: Boolean, diff --git a/tests/config-loadpoint.spec.ts b/tests/config-loadpoint.spec.ts index e3bf82e5b..7fb36559e 100644 --- a/tests/config-loadpoint.spec.ts +++ b/tests/config-loadpoint.spec.ts @@ -43,7 +43,21 @@ test.describe("charging loadpoint", async () => { await chargerModal.getByLabel("Charge status").selectOption("C"); await chargerModal.getByLabel("Power").fill("11000"); await chargerModal.getByRole("button", { name: "Save" }).click(); + await expectModalHidden(chargerModal); + await expectModalVisible(lpModal); await expect(lpModal.getByLabel("Title")).toHaveValue("Solar Carport"); + // verify defaults + await expect(lpModal.getByLabel("Default mode")).toHaveValue(""); + // mode + await expect(lpModal.getByTestId("loadpointSolarMode-default")).toHaveClass(/active/); + await expect(lpModal.getByTestId("loadpointSolarMode-custom")).not.toHaveClass(/active/); + // min/max current + await expect(lpModal.getByTestId("chargerPower-11kw")).toHaveClass(/active/); + await expect(lpModal.getByTestId("chargerPower-22kw")).not.toHaveClass(/active/); + await expect(lpModal.getByTestId("chargerPower-other")).not.toHaveClass(/active/); + // phases + await expect(lpModal.getByTestId("loadpointParamPhases-1")).not.toHaveClass(/active/); + await expect(lpModal.getByTestId("loadpointParamPhases-3")).toHaveClass(/active/); // create loadpoint await lpModal.getByRole("button", { name: "Save" }).click(); @@ -70,6 +84,7 @@ test.describe("charging loadpoint", async () => { await expect(lpModal.getByRole("heading", { name: "Edit Charging Point" })).toBeVisible(); await lpModal.getByLabel("Title").fill("Solar Carport 2"); await lpModal.getByRole("button", { name: "Save" }).click(); + await expectModalHidden(lpModal); await expect(page.getByTestId("loadpoint")).toContainText("Solar Carport 2"); // restart