summaryrefslogtreecommitdiffstats
path: root/accessible/tests/browser/e10s/browser_caching_large_update.js
diff options
context:
space:
mode:
Diffstat (limited to 'accessible/tests/browser/e10s/browser_caching_large_update.js')
-rw-r--r--accessible/tests/browser/e10s/browser_caching_large_update.js97
1 files changed, 47 insertions, 50 deletions
diff --git a/accessible/tests/browser/e10s/browser_caching_large_update.js b/accessible/tests/browser/e10s/browser_caching_large_update.js
index ccf8a86921..9a36ac7326 100644
--- a/accessible/tests/browser/e10s/browser_caching_large_update.js
+++ b/accessible/tests/browser/e10s/browser_caching_large_update.js
@@ -8,59 +8,56 @@
* Test a large update which adds many thousands of Accessibles with a
* lot of content in each.
*/
-addAccessibleTask(
- `<main id="main" hidden></main>`,
- async function (browser, docAcc) {
- let shown = waitForEvent(EVENT_SHOW, "main");
- await invokeContentTask(browser, [], () => {
- // Make a long string.
- let text = "";
- for (let i = 0; i < 100; ++i) {
- text += "a";
- }
- // Create lots of nodes which include the long string.
- const contMain = content.document.getElementById("main");
- // 15000 children of main.
- for (let w = 0; w < 15000; ++w) {
- // Each of those goes 9 deep.
- let parent = contMain;
- for (let d = 0; d < 10; ++d) {
- const div = content.document.createElement("div");
- div.setAttribute("aria-label", `${w} ${d} ${text}`);
- parent.append(div);
- parent = div;
- }
- }
- contMain.hidden = false;
- });
- const main = (await shown).accessible;
- is(main.childCount, 15000, "main has correct number of children");
-
- // We don't want to output passes for every check, since that would output
- // hundreds of thousands of lines, which slows the test to a crawl. Instead,
- // output any failures and keep track of overall success/failure.
- let treeOk = true;
- function check(val, msg) {
- if (!val) {
- ok(false, msg);
- treeOk = false;
- }
+addAccessibleTask(`<main id="main" hidden></main>`, async function (browser) {
+ let shown = waitForEvent(EVENT_SHOW, "main");
+ await invokeContentTask(browser, [], () => {
+ // Make a long string.
+ let text = "";
+ for (let i = 0; i < 100; ++i) {
+ text += "a";
}
-
- info("Checking tree");
+ // Create lots of nodes which include the long string.
+ const contMain = content.document.getElementById("main");
+ // 15000 children of main.
for (let w = 0; w < 15000; ++w) {
- let acc = main.getChildAt(w);
- let parent = main;
+ // Each of those goes 9 deep.
+ let parent = contMain;
for (let d = 0; d < 10; ++d) {
- check(acc, `Got child ${w} depth ${d}`);
- const name = `${w} ${d}`;
- check(acc.name.startsWith(name + " "), `${name}: correct name`);
- check(acc.parent == parent, `${name}: correct parent`);
- parent = acc;
- acc = acc.firstChild;
+ const div = content.document.createElement("div");
+ div.setAttribute("aria-label", `${w} ${d} ${text}`);
+ parent.append(div);
+ parent = div;
}
}
- // check() sets treeOk to false for any failure.
- ok(treeOk, "Tree is correct");
+ contMain.hidden = false;
+ });
+ const main = (await shown).accessible;
+ is(main.childCount, 15000, "main has correct number of children");
+
+ // We don't want to output passes for every check, since that would output
+ // hundreds of thousands of lines, which slows the test to a crawl. Instead,
+ // output any failures and keep track of overall success/failure.
+ let treeOk = true;
+ function check(val, msg) {
+ if (!val) {
+ ok(false, msg);
+ treeOk = false;
+ }
+ }
+
+ info("Checking tree");
+ for (let w = 0; w < 15000; ++w) {
+ let acc = main.getChildAt(w);
+ let parent = main;
+ for (let d = 0; d < 10; ++d) {
+ check(acc, `Got child ${w} depth ${d}`);
+ const name = `${w} ${d}`;
+ check(acc.name.startsWith(name + " "), `${name}: correct name`);
+ check(acc.parent == parent, `${name}: correct parent`);
+ parent = acc;
+ acc = acc.firstChild;
+ }
}
-);
+ // check() sets treeOk to false for any failure.
+ ok(treeOk, "Tree is correct");
+});