web: Work around webdriverio frame-switching bug with selectors
This commit is contained in:
parent
ab49f34b15
commit
737c8e1605
|
@ -13,11 +13,28 @@ describe("Flash inside frame with injected ruffle", () => {
|
||||||
it("polyfills inside a frame", async () => {
|
it("polyfills inside a frame", async () => {
|
||||||
await injectRuffleAndWait(browser);
|
await injectRuffleAndWait(browser);
|
||||||
await browser.switchToFrame(await browser.$("#test-frame"));
|
await browser.switchToFrame(await browser.$("#test-frame"));
|
||||||
await browser.$("ruffle-object").waitForExist();
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed, use browser.$("ruffle-object")
|
||||||
|
await browser
|
||||||
|
.$(
|
||||||
|
() =>
|
||||||
|
(
|
||||||
|
document.querySelector(
|
||||||
|
"#test-frame",
|
||||||
|
) as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector(
|
||||||
|
"ruffle-object",
|
||||||
|
) as HTMLElement,
|
||||||
|
)
|
||||||
|
.waitForExist();
|
||||||
|
|
||||||
const actual = await browser
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed
|
||||||
.$("#test-container")
|
// use browser.$("#test-container").getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
||||||
.getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
const actual = await browser.execute(() => {
|
||||||
|
const el = (
|
||||||
|
document.querySelector("#test-frame") as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector("#test-container");
|
||||||
|
return el?.innerHTML;
|
||||||
|
});
|
||||||
const expected = fs.readFileSync(
|
const expected = fs.readFileSync(
|
||||||
`${import.meta.dirname}/expected.html`,
|
`${import.meta.dirname}/expected.html`,
|
||||||
"utf8",
|
"utf8",
|
||||||
|
@ -39,11 +56,28 @@ describe("Flash inside frame with injected ruffle", () => {
|
||||||
// And finally, check
|
// And finally, check
|
||||||
await browser.switchToFrame(null);
|
await browser.switchToFrame(null);
|
||||||
await browser.switchToFrame(await browser.$("#test-frame"));
|
await browser.switchToFrame(await browser.$("#test-frame"));
|
||||||
await browser.$("ruffle-object").waitForExist();
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed, use browser.$("ruffle-object")
|
||||||
|
await browser
|
||||||
|
.$(
|
||||||
|
() =>
|
||||||
|
(
|
||||||
|
document.querySelector(
|
||||||
|
"#test-frame",
|
||||||
|
) as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector(
|
||||||
|
"ruffle-object",
|
||||||
|
) as HTMLElement,
|
||||||
|
)
|
||||||
|
.waitForExist();
|
||||||
|
|
||||||
const actual = await browser
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed
|
||||||
.$("#test-container")
|
// use browser.$("#test-container").getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
||||||
.getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
const actual = await browser.execute(() => {
|
||||||
|
const el = (
|
||||||
|
document.querySelector("#test-frame") as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector("#test-container");
|
||||||
|
return el?.innerHTML;
|
||||||
|
});
|
||||||
const expected = fs.readFileSync(
|
const expected = fs.readFileSync(
|
||||||
`${import.meta.dirname}/expected.html`,
|
`${import.meta.dirname}/expected.html`,
|
||||||
"utf8",
|
"utf8",
|
||||||
|
|
|
@ -12,11 +12,28 @@ describe("Flash inside frame with provided ruffle", () => {
|
||||||
|
|
||||||
it("polyfills inside a frame", async () => {
|
it("polyfills inside a frame", async () => {
|
||||||
await browser.switchToFrame(await browser.$("#test-frame"));
|
await browser.switchToFrame(await browser.$("#test-frame"));
|
||||||
await browser.$("ruffle-object").waitForExist();
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed, use browser.$("ruffle-object")
|
||||||
|
await browser
|
||||||
|
.$(
|
||||||
|
() =>
|
||||||
|
(
|
||||||
|
document.querySelector(
|
||||||
|
"#test-frame",
|
||||||
|
) as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector(
|
||||||
|
"ruffle-object",
|
||||||
|
) as HTMLElement,
|
||||||
|
)
|
||||||
|
.waitForExist();
|
||||||
|
|
||||||
const actual = await browser
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed
|
||||||
.$("#test-container")
|
// use browser.$("#test-container").getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
||||||
.getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
const actual = await browser.execute(() => {
|
||||||
|
const el = (
|
||||||
|
document.querySelector("#test-frame") as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector("#test-container");
|
||||||
|
return el?.innerHTML;
|
||||||
|
});
|
||||||
const expected = fs.readFileSync(
|
const expected = fs.readFileSync(
|
||||||
`${import.meta.dirname}/expected.html`,
|
`${import.meta.dirname}/expected.html`,
|
||||||
"utf8",
|
"utf8",
|
||||||
|
@ -38,11 +55,28 @@ describe("Flash inside frame with provided ruffle", () => {
|
||||||
// And finally, check
|
// And finally, check
|
||||||
await browser.switchToFrame(null);
|
await browser.switchToFrame(null);
|
||||||
await browser.switchToFrame(await browser.$("#test-frame"));
|
await browser.switchToFrame(await browser.$("#test-frame"));
|
||||||
await browser.$("ruffle-object").waitForExist();
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed, use browser.$("ruffle-object")
|
||||||
|
await browser
|
||||||
|
.$(
|
||||||
|
() =>
|
||||||
|
(
|
||||||
|
document.querySelector(
|
||||||
|
"#test-frame",
|
||||||
|
) as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector(
|
||||||
|
"ruffle-object",
|
||||||
|
) as HTMLElement,
|
||||||
|
)
|
||||||
|
.waitForExist();
|
||||||
|
|
||||||
const actual = await browser
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed
|
||||||
.$("#test-container")
|
// use browser.$("#test-container").getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
||||||
.getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
const actual = await browser.execute(() => {
|
||||||
|
const el = (
|
||||||
|
document.querySelector("#test-frame") as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector("#test-container");
|
||||||
|
return el?.innerHTML;
|
||||||
|
});
|
||||||
const expected = fs.readFileSync(
|
const expected = fs.readFileSync(
|
||||||
`${import.meta.dirname}/expected.html`,
|
`${import.meta.dirname}/expected.html`,
|
||||||
"utf8",
|
"utf8",
|
||||||
|
|
|
@ -13,11 +13,28 @@ describe("Flash inside iframe with injected ruffle", () => {
|
||||||
it("polyfills inside an iframe", async () => {
|
it("polyfills inside an iframe", async () => {
|
||||||
await injectRuffleAndWait(browser);
|
await injectRuffleAndWait(browser);
|
||||||
await browser.switchToFrame(await browser.$("#test-frame"));
|
await browser.switchToFrame(await browser.$("#test-frame"));
|
||||||
await browser.$("ruffle-object").waitForExist();
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed, use browser.$("ruffle-object")
|
||||||
|
await browser
|
||||||
|
.$(
|
||||||
|
() =>
|
||||||
|
(
|
||||||
|
document.querySelector(
|
||||||
|
"#test-frame",
|
||||||
|
) as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector(
|
||||||
|
"ruffle-object",
|
||||||
|
) as HTMLElement,
|
||||||
|
)
|
||||||
|
.waitForExist();
|
||||||
|
|
||||||
const actual = await browser
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed
|
||||||
.$("#test-container")
|
// use browser.$("#test-container").getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
||||||
.getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
const actual = await browser.execute(() => {
|
||||||
|
const el = (
|
||||||
|
document.querySelector("#test-frame") as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector("#test-container");
|
||||||
|
return el?.innerHTML;
|
||||||
|
});
|
||||||
const expected = fs.readFileSync(
|
const expected = fs.readFileSync(
|
||||||
`${import.meta.dirname}/expected.html`,
|
`${import.meta.dirname}/expected.html`,
|
||||||
"utf8",
|
"utf8",
|
||||||
|
@ -38,11 +55,28 @@ describe("Flash inside iframe with injected ruffle", () => {
|
||||||
// And finally, check
|
// And finally, check
|
||||||
await browser.switchToFrame(null);
|
await browser.switchToFrame(null);
|
||||||
await browser.switchToFrame(await browser.$("#test-frame"));
|
await browser.switchToFrame(await browser.$("#test-frame"));
|
||||||
await browser.$("ruffle-object").waitForExist();
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed, use browser.$("ruffle-object")
|
||||||
|
await browser
|
||||||
|
.$(
|
||||||
|
() =>
|
||||||
|
(
|
||||||
|
document.querySelector(
|
||||||
|
"#test-frame",
|
||||||
|
) as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector(
|
||||||
|
"ruffle-object",
|
||||||
|
) as HTMLElement,
|
||||||
|
)
|
||||||
|
.waitForExist();
|
||||||
|
|
||||||
const actual = await browser
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed
|
||||||
.$("#test-container")
|
// use browser.$("#test-container").getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
||||||
.getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
const actual = await browser.execute(() => {
|
||||||
|
const el = (
|
||||||
|
document.querySelector("#test-frame") as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector("#test-container");
|
||||||
|
return el?.innerHTML;
|
||||||
|
});
|
||||||
const expected = fs.readFileSync(
|
const expected = fs.readFileSync(
|
||||||
`${import.meta.dirname}/expected.html`,
|
`${import.meta.dirname}/expected.html`,
|
||||||
"utf8",
|
"utf8",
|
||||||
|
|
|
@ -12,11 +12,28 @@ describe("Flash inside iframe with provided ruffle", () => {
|
||||||
|
|
||||||
it("polyfills inside an iframe", async () => {
|
it("polyfills inside an iframe", async () => {
|
||||||
await browser.switchToFrame(await browser.$("#test-frame"));
|
await browser.switchToFrame(await browser.$("#test-frame"));
|
||||||
await browser.$("ruffle-object").waitForExist();
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed, use browser.$("ruffle-object")
|
||||||
|
await browser
|
||||||
|
.$(
|
||||||
|
() =>
|
||||||
|
(
|
||||||
|
document.querySelector(
|
||||||
|
"#test-frame",
|
||||||
|
) as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector(
|
||||||
|
"ruffle-object",
|
||||||
|
) as HTMLElement,
|
||||||
|
)
|
||||||
|
.waitForExist();
|
||||||
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed
|
||||||
|
// use browser.$("#test-container").getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
||||||
|
const actual = await browser.execute(() => {
|
||||||
|
const el = (
|
||||||
|
document.querySelector("#test-frame") as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector("#test-container");
|
||||||
|
return el?.innerHTML;
|
||||||
|
});
|
||||||
|
|
||||||
const actual = await browser
|
|
||||||
.$("#test-container")
|
|
||||||
.getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
|
||||||
const expected = fs.readFileSync(
|
const expected = fs.readFileSync(
|
||||||
`${import.meta.dirname}/expected.html`,
|
`${import.meta.dirname}/expected.html`,
|
||||||
"utf8",
|
"utf8",
|
||||||
|
@ -37,11 +54,28 @@ describe("Flash inside iframe with provided ruffle", () => {
|
||||||
// And finally, check
|
// And finally, check
|
||||||
await browser.switchToFrame(null);
|
await browser.switchToFrame(null);
|
||||||
await browser.switchToFrame(await browser.$("#test-frame"));
|
await browser.switchToFrame(await browser.$("#test-frame"));
|
||||||
await browser.$("ruffle-object").waitForExist();
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed, use browser.$("ruffle-object")
|
||||||
|
await browser
|
||||||
|
.$(
|
||||||
|
() =>
|
||||||
|
(
|
||||||
|
document.querySelector(
|
||||||
|
"#test-frame",
|
||||||
|
) as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector(
|
||||||
|
"ruffle-object",
|
||||||
|
) as HTMLElement,
|
||||||
|
)
|
||||||
|
.waitForExist();
|
||||||
|
|
||||||
const actual = await browser
|
// TODO: After https://github.com/webdriverio/webdriverio/issues/13218 is fixed
|
||||||
.$("#test-container")
|
// use browser.$("#test-container").getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
||||||
.getHTML({ includeSelectorTag: false, pierceShadowRoot: false });
|
const actual = await browser.execute(() => {
|
||||||
|
const el = (
|
||||||
|
document.querySelector("#test-frame") as HTMLIFrameElement
|
||||||
|
).contentDocument?.body.querySelector("#test-container");
|
||||||
|
return el?.innerHTML;
|
||||||
|
});
|
||||||
const expected = fs.readFileSync(
|
const expected = fs.readFileSync(
|
||||||
`${import.meta.dirname}/expected.html`,
|
`${import.meta.dirname}/expected.html`,
|
||||||
"utf8",
|
"utf8",
|
||||||
|
|
Loading…
Reference in New Issue