ruffle/web/packages/selfhosted/test/polyfill/classic_frames_provided/test.js

43 lines
1.5 KiB
JavaScript
Raw Normal View History

const { open_test } = require("../../utils");
2020-05-23 17:37:06 +00:00
const { expect, use } = require("chai");
const chaiHtml = require("chai-html");
const fs = require("fs");
use(chaiHtml);
describe("Flash inside frame with provided ruffle", () => {
it("loads the test", async () => {
await open_test(browser, __dirname);
2020-05-23 17:37:06 +00:00
});
it("polyfills inside a frame", async () => {
await browser.switchToFrame(await browser.$("#test-frame"));
await browser.$("<ruffle-object />").waitForExist();
2020-05-23 17:37:06 +00:00
const actual = await browser.$("#test-container").getHTML(false);
2020-05-23 17:37:06 +00:00
const expected = fs.readFileSync(`${__dirname}/expected.html`, "utf8");
expect(actual).html.to.equal(expected);
});
it("polyfills even after a reload", async () => {
2020-05-23 17:37:06 +00:00
// Contaminate the old contents, to ensure we get a "fresh" state
await browser.execute(() => {
2020-05-23 17:37:06 +00:00
document.getElementById("test-container").remove();
});
// Then reload
await browser.switchToParentFrame();
await browser.switchToFrame(await browser.$("#nav-frame"));
await browser.$("#reload-link").click();
2020-05-23 17:37:06 +00:00
// And finally, check
await browser.switchToParentFrame();
await browser.switchToFrame(await browser.$("#test-frame"));
await browser.$("<ruffle-object />").waitForExist();
2020-05-23 17:37:06 +00:00
const actual = await browser.$("#test-container").getHTML(false);
2020-05-23 17:37:06 +00:00
const expected = fs.readFileSync(`${__dirname}/expected.html`, "utf8");
expect(actual).html.to.equal(expected);
});
});