UNPKG

@sap_oss/wdio-qmate-service

Version:

[![REUSE status](https://api.reuse.software/badge/github.com/SAP/wdio-qmate-service)](https://api.reuse.software/info/github.com/SAP/wdio-qmate-service)[![Node.js CI](https://github.com/SAP/wdio-qmate-service/actions/workflows/node.js.yml/badge.svg)](http

58 lines (44 loc) 2.38 kB
"use strict"; const { BASE_URL } = require("../../../../src/reuse/constants.ts"); describe("browser - switchToWindow", function () { const sapWindowUrl = `${BASE_URL}/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories`; let sapWindowHandle; const wdioWindowUrl = "https://webdriver.io/"; let wdioWindowHandle; it("Preparation", async function () { await common.navigation.navigateToUrl(sapWindowUrl); sapWindowHandle = await browser.getWindowHandle(); await expect(browser.getTitle()).resolves.toEqual("Shopping Cart"); await browser.newWindow(wdioWindowUrl); wdioWindowHandle = await browser.getWindowHandle(); await expect(browser.getTitle()).resolves.toMatch(/WebdriverIO/); }); it("Execution and Verification", async function () { // First 'sap' window await util.browser.switchToWindow(sapWindowHandle); await expect(browser.getTitle()).resolves.toEqual("Shopping Cart"); let currentWindowHandle = await util.browser.getCurrentWindow(); await common.assertion.expectEqual(sapWindowHandle, currentWindowHandle); //compare reuse and native single handle let currentUrl = await browser.getUrl(); await common.assertion.expectEqual(currentUrl, sapWindowUrl); // Second 'wdio' window await util.browser.switchToWindow(wdioWindowHandle); await expect(browser.getTitle()).resolves.toMatch(/WebdriverIO/); currentWindowHandle = await util.browser.getCurrentWindow(); await common.assertion.expectEqual(wdioWindowHandle, currentWindowHandle); //compare reuse and native single handle currentUrl = await browser.getUrl(); await common.assertion.expectEqual(currentUrl, wdioWindowUrl); }); }); describe("browser - switchToWindow (unhappy case)", function () { const sapWindowUrl = `${BASE_URL}/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories`; it("Preparation", async function () { await common.navigation.navigateToUrl(sapWindowUrl); }); it("Execution and Verification", async function () { const windowHandles = await browser.getWindowHandles(); // returns array of handles await util.browser.switchToWindow(windowHandles[0]); await expect(util.browser.switchToWindow()) .rejects.toThrow(/Malformed type for "handle" parameter of command switchToWindow/); }); });