forked from mozilla/gecko-dev
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
merge mozilla-inbound to mozilla-central a=merge
- Loading branch information
Showing
653 changed files
with
10,360 additions
and
7,444 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
143 changes: 143 additions & 0 deletions
143
accessible/tests/mochitest/treeupdate/test_bug1276857.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,143 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
|
||
<head> | ||
<title>DOM mutations test</title> | ||
<link rel="stylesheet" type="text/css" | ||
href="chrome://mochikit/content/tests/SimpleTest/test.css" /> | ||
|
||
<script type="application/javascript" | ||
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script> | ||
|
||
<script type="application/javascript" | ||
src="../common.js"></script> | ||
<script type="application/javascript" | ||
src="../role.js"></script> | ||
<script type="application/javascript" | ||
src="../events.js"></script> | ||
|
||
<script type="application/javascript"> | ||
function runTest() | ||
{ | ||
// children change will recreate the table | ||
this.eventSeq = [ | ||
new invokerChecker(EVENT_REORDER, getNode('c1')) | ||
]; | ||
|
||
this.invoke = function runTest_invoke() { | ||
var tree = { | ||
SECTION: [ // c1 | ||
{ TEXT_LEAF: [] }, // Some text | ||
{ TEXT_CONTAINER: [ | ||
{ TEXT_LEAF: [] } // something with .. | ||
] }, | ||
{ TEXT_LEAF: [] } // More text | ||
] | ||
}; | ||
testAccessibleTree('c1', tree); | ||
|
||
getNode('c1_t').querySelector('span').remove(); | ||
}; | ||
|
||
this.finalCheck = function runTest_finalCheck() { | ||
var tree = { | ||
SECTION: [ // c1 | ||
{ TEXT_LEAF: [] }, // Some text | ||
{ TEXT_LEAF: [] } // More text | ||
] | ||
}; | ||
testAccessibleTree('c1', tree); | ||
}; | ||
|
||
this.getID = function runTest_getID() | ||
{ | ||
return 'child DOM node is removed before the layout notifies the a11y about parent removal/show'; | ||
}; | ||
} | ||
|
||
function runShadowTest() | ||
{ | ||
// children change will recreate the table | ||
this.eventSeq = [ | ||
new invokerChecker(EVENT_REORDER, 'c2') | ||
]; | ||
|
||
this.invoke = function runShadowTest_invoke() { | ||
var tree = { | ||
SECTION: [ // c2 | ||
{ TEXT_LEAF: [] }, // Some text | ||
{ TEXT_CONTAINER: [ | ||
{ TEXT_LEAF: [] } // something with .. | ||
] }, | ||
{ TEXT_LEAF: [] } // More text | ||
] | ||
}; | ||
testAccessibleTree('c2', tree); | ||
|
||
gShadowRoot.firstElementChild.querySelector('span').remove(); | ||
}; | ||
|
||
this.finalCheck = function runShadowTest_finalCheck() { | ||
var tree = { | ||
SECTION: [ // c2 | ||
{ TEXT_LEAF: [] }, // Some text | ||
{ TEXT_LEAF: [] } // More text | ||
] | ||
}; | ||
testAccessibleTree('c2', tree); | ||
}; | ||
|
||
this.getID = function runShadowTest_getID() { | ||
return 'child DOM node is removed before the layout notifies the a11y about parent removal/show in shadow DOM'; | ||
}; | ||
} | ||
|
||
//enableLogging("tree"); | ||
//gA11yEventDumpToConsole = true; | ||
|
||
var gQueue = null; | ||
function doTest() | ||
{ | ||
gQueue = new eventQueue(); | ||
gQueue.push(new runTest()); | ||
gQueue.push(new runShadowTest()); | ||
gQueue.invoke(); // will call SimpleTest.finish(); | ||
} | ||
|
||
SimpleTest.waitForExplicitFinish(); | ||
addA11yLoadEvent(doTest); | ||
</script> | ||
|
||
</head> | ||
|
||
<body> | ||
<p id="display"></p> | ||
<div id="content" style="display: none"></div> | ||
<pre id="test"> | ||
</pre> | ||
|
||
<div id="c1"> | ||
<div id="c1_t" style="display: table" role="presentation"> | ||
Some text | ||
<span style="display: table-cell">something with accessibles goes here</span> | ||
More text | ||
</div> | ||
</div> | ||
|
||
<template id="tmpl"> | ||
<div style="display: table" role="presentation"> | ||
Some text | ||
<span style="display: table-cell">something with accessibles goes here</span> | ||
More text | ||
</div> | ||
</template> | ||
|
||
<div id="c2"><div id="c2_c" role="presentation"></div></div> | ||
|
||
<script> | ||
var gShadowRoot = document.getElementById('c2_c').createShadowRoot(); | ||
var tmpl = document.getElementById('tmpl'); | ||
gShadowRoot.appendChild(document.importNode(tmpl.content, true)); | ||
</script> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,3 +4,4 @@ support-files = | |
|
||
[test-leak-window-events.js] | ||
[test-leak-event-dom-closed-window.js] | ||
[test-leak-event-chrome.js] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
/* This Source Code Form is subject to the terms of the Mozilla Public | ||
* License, v. 2.0. If a copy of the MPL was not distributed with this | ||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ | ||
'use strict'; | ||
|
||
const { gc } = require("./leak-utils"); | ||
const { Loader } = require("sdk/test/loader"); | ||
const { Cu } = require("chrome"); | ||
const { Services } = Cu.import("resource://gre/modules/Services.jsm", {}); | ||
|
||
exports["test sdk/event/chrome does not leak when not referenced"] = function*(assert) { | ||
let loader = Loader(module); | ||
let { observe } = loader.require("sdk/event/chrome"); | ||
let { on } = loader.require("sdk/event/core"); | ||
|
||
let gotFooEvent = false; | ||
on(observe("test-foo"), "data", function(evt) { | ||
gotFooEvent = true; | ||
}); | ||
|
||
let bar = observe("test-bar"); | ||
let barPromise = new Promise(resolve => { | ||
on(bar, "data", function(evt) { | ||
assert.ok(!gotFooEvent, "should not have gotten test-foo event"); | ||
resolve(); | ||
}); | ||
}); | ||
|
||
// This should clear the test-foo observer channel because we are not | ||
// holding a reference to it above. | ||
yield gc(); | ||
|
||
Services.obs.notifyObservers(null, "test-foo", null); | ||
Services.obs.notifyObservers(null, "test-bar", null); | ||
|
||
yield barPromise; | ||
|
||
loader.unload(); | ||
} | ||
|
||
require("sdk/test").run(exports); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.