diff options
3 files changed, 35 insertions, 0 deletions
diff --git a/desktop/packages/mullvad-vpn/test/e2e/route-object-models/daita-settings/daita-settings-route-object-model.ts b/desktop/packages/mullvad-vpn/test/e2e/route-object-models/daita-settings/daita-settings-route-object-model.ts new file mode 100644 index 0000000000..ba9b73a019 --- /dev/null +++ b/desktop/packages/mullvad-vpn/test/e2e/route-object-models/daita-settings/daita-settings-route-object-model.ts @@ -0,0 +1,29 @@ +import { Page } from 'playwright'; + +import { TestUtils } from '../../utils'; +import { createSelectors } from './selectors'; + +export class DaitaSettingsRouteObjectModel { + readonly page: Page; + readonly utils: TestUtils; + readonly selectors: ReturnType<typeof createSelectors>; + + constructor(page: Page, utils: TestUtils) { + this.page = page; + this.utils = utils; + this.selectors = createSelectors(page); + } + + getEnableDaitaSwitch() { + return this.selectors.enableDaitaSwitch(); + } + + async setEnableDaitaSwitch(enabled: boolean) { + const enableDaitaSwitch = this.selectors.enableDaitaSwitch(); + const ariaChecked = await enableDaitaSwitch.getAttribute('aria-checked'); + + if ((enabled && ariaChecked === 'false') || (!enabled && ariaChecked === 'true')) { + await enableDaitaSwitch.click(); + } + } +} diff --git a/desktop/packages/mullvad-vpn/test/e2e/route-object-models/daita-settings/index.ts b/desktop/packages/mullvad-vpn/test/e2e/route-object-models/daita-settings/index.ts new file mode 100644 index 0000000000..458dc4cafc --- /dev/null +++ b/desktop/packages/mullvad-vpn/test/e2e/route-object-models/daita-settings/index.ts @@ -0,0 +1 @@ +export * from './daita-settings-route-object-model'; diff --git a/desktop/packages/mullvad-vpn/test/e2e/route-object-models/daita-settings/selectors.ts b/desktop/packages/mullvad-vpn/test/e2e/route-object-models/daita-settings/selectors.ts new file mode 100644 index 0000000000..4c8f8c51bd --- /dev/null +++ b/desktop/packages/mullvad-vpn/test/e2e/route-object-models/daita-settings/selectors.ts @@ -0,0 +1,5 @@ +import { Page } from 'playwright'; + +export const createSelectors = (page: Page) => ({ + enableDaitaSwitch: () => page.getByLabel('Enable'), +}); |
