web: Add test for classic <frame>s
This commit is contained in:
parent
a0bfe72b19
commit
a7abdba49c
|
@ -0,0 +1,9 @@
|
|||
<ruffle-object
|
||||
type="application/x-shockwave-flash"
|
||||
data="/test_assets/example.swf"
|
||||
width="550"
|
||||
height="400"
|
||||
>
|
||||
<param name="movie" value="/test_assets/example.swf" />
|
||||
<param name="quality" value="high" />
|
||||
</ruffle-object>
|
|
@ -0,0 +1,11 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Nav</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<a href="frame2.html" target="content" id="reload-link">Reload frame</a>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,26 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>REAL CONTENT</title>
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="test-container">
|
||||
<object
|
||||
type="application/x-shockwave-flash"
|
||||
data="/test_assets/example.swf"
|
||||
width="550"
|
||||
height="400"
|
||||
>
|
||||
<param name="movie" value="/test_assets/example.swf" />
|
||||
<param name="quality" value="high" />
|
||||
</object>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,40 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>WEB</title>
|
||||
<script>
|
||||
window.RufflePlayer = window.RufflePlayer || {};
|
||||
window.RufflePlayer.config = {
|
||||
polyfills: [
|
||||
"static-content",
|
||||
"plugin-detect",
|
||||
"dynamic-content",
|
||||
"frames",
|
||||
],
|
||||
};
|
||||
</script>
|
||||
<!--
|
||||
Frame polyfilling depends on ruffle being loaded first,
|
||||
so here we explicitly add it early and not after-load
|
||||
-->
|
||||
<script src="/dist/ruffle.js"></script>
|
||||
</head>
|
||||
|
||||
<frameset rows="10%,90%">
|
||||
<frame
|
||||
id="nav-frame"
|
||||
name="nav"
|
||||
src="frame1.html"
|
||||
scrolling="no"
|
||||
frameborder="0"
|
||||
></frame>
|
||||
<frame
|
||||
id="test-frame"
|
||||
name="content"
|
||||
src="frame2.html"
|
||||
scrolling="no"
|
||||
frameborder="0"
|
||||
></frame>
|
||||
</frameset>
|
||||
</html>
|
|
@ -0,0 +1,46 @@
|
|||
const { open_test } = require("../utils");
|
||||
const { expect, use } = require("chai");
|
||||
const chaiHtml = require("chai-html");
|
||||
const fs = require("fs");
|
||||
|
||||
use(chaiHtml);
|
||||
|
||||
describe("Object and embed", () => {
|
||||
it("loads the test", () => {
|
||||
open_test(browser, __dirname);
|
||||
});
|
||||
|
||||
it("polyfills inside a frame", () => {
|
||||
browser.switchToFrame(browser.$("#test-frame"));
|
||||
browser.waitUntil(() =>
|
||||
browser.execute(() => document.readyState === "complete")
|
||||
);
|
||||
|
||||
const actual = browser.$("#test-container").getHTML(false);
|
||||
const expected = fs.readFileSync(`${__dirname}/expected.html`, "utf8");
|
||||
expect(actual).html.to.equal(expected);
|
||||
});
|
||||
|
||||
it("polyfills even after a reload", () => {
|
||||
// Contaminate the old contents, to ensure we get a "fresh" state
|
||||
browser.execute(() => {
|
||||
document.getElementById("test-container").remove();
|
||||
});
|
||||
|
||||
// Then reload
|
||||
browser.switchToParentFrame();
|
||||
browser.switchToFrame(browser.$("#nav-frame"));
|
||||
browser.$("#reload-link").click();
|
||||
|
||||
// And finally, check
|
||||
browser.switchToParentFrame();
|
||||
browser.switchToFrame(browser.$("#test-frame"));
|
||||
browser.waitUntil(() =>
|
||||
browser.execute(() => document.readyState === "complete")
|
||||
);
|
||||
|
||||
const actual = browser.$("#test-container").getHTML(false);
|
||||
const expected = fs.readFileSync(`${__dirname}/expected.html`, "utf8");
|
||||
expect(actual).html.to.equal(expected);
|
||||
});
|
||||
});
|
|
@ -28,8 +28,6 @@ function inject_ruffle(browser) {
|
|||
function inject_ruffle_and_wait(browser) {
|
||||
inject_ruffle(browser);
|
||||
wait_for_ruffle(browser);
|
||||
|
||||
console.log(browser.$("html").getHTML(true));
|
||||
}
|
||||
|
||||
function open_test(browser, absolute_dir, file_name) {
|
||||
|
|
Loading…
Reference in New Issue