diff --git a/e2e/macrorugo-remous.e2e-spec.ts b/e2e/macrorugo-remous.e2e-spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..f9dea9fd0f01c7c3332d6855d1ac0902b9eb3f0e --- /dev/null +++ b/e2e/macrorugo-remous.e2e-spec.ts @@ -0,0 +1,60 @@ +import { ListPage } from "./list.po"; +import { PreferencesPage } from "./preferences.po"; +import { Navbar } from "./navbar.po"; +import { browser, $, $$, expect } from '@wdio/globals' +import { isElementDisplayed } from "./util.po"; + +//TODO à réactiver après fusion de #618 dans devel +xdescribe("MacroRugoRemous - ", () => { + let prefPage: PreferencesPage; + let listPage: ListPage; + let navBar: Navbar; + + beforeAll(() => { + prefPage = new PreferencesPage(); + listPage = new ListPage(); + navBar = new Navbar(); + }); + + beforeEach(async () => { + // disable evil option "empty fields on module creation" + await prefPage.navigateTo(); + await browser.pause(200); + await prefPage.disableEvilEmptyFields(); + await browser.pause(200); + }); + + it("check select empty message is present when no PAM is in the session", async () => { + // start page + await navBar.clickNewCalculatorButton(); + await browser.pause(200); + + // MacroRugoRemous calculator + await listPage.clickMenuEntryForCalcType(37); + browser.pause(200); + + // const emptyMsg = element(by.css("div .message-when-empty")); + const emptyMsg = await $("div .message-when-empty"); + expect(await isElementDisplayed(emptyMsg)).toBe(true); + }); + + it("check select empty message is not present when a PAM exists in the session", async () => { + // start page + await navBar.clickNewCalculatorButton(); + await browser.pause(200); + + // PAM calculator + await listPage.clickMenuEntryForCalcType(11); + browser.pause(200); + + await navBar.clickNewCalculatorButton(); + await browser.pause(200); + + // MacroRugoRemous calculator + await listPage.clickMenuEntryForCalcType(37); + browser.pause(200); + + const emptyMsg = $("div .message-when-empty"); + expect(await isElementDisplayed(emptyMsg)).toBe(false); + }); +}); diff --git a/e2e/util.po.ts b/e2e/util.po.ts index 4acf0e3038359ab5e1dd85e0a1d2ba3819d924ae..04f8564f967a691ba15cf5126d8f658b88f8d1bc 100644 --- a/e2e/util.po.ts +++ b/e2e/util.po.ts @@ -84,3 +84,10 @@ export async function loadSession(navbar: Navbar, sideNav: SideNav, path: string await sideNav.loadSessionFile(path); } + +/** + * @returns true if an element exists and is displayed + */ +export async function isElementDisplayed(element) { + return await element.isExisting() && await element.isDisplayed(); +}