Bug 1050049 - Tests. r=smaug

This commit is contained in:
Bobby Holley 2014-08-11 20:06:56 -07:00
parent 25f875bfcb
commit 6cb9ec6bc5
3 changed files with 68 additions and 0 deletions

View File

@ -3,6 +3,7 @@ support-files =
bug503926.xul
file_bug618176.xul
file_bug996069.html
file_bug1050049.xml
file_discardSystemSource.html
worker_discardSystemSource.js
file_evalInSandbox.html
@ -64,6 +65,7 @@ skip-if = buildapp == 'mulet'
[test_bug996069.xul]
[test_bug1041626.xul]
[test_bug1042436.xul]
[test_bug1050049.html]
[test_xrayToJS.xul]
skip-if = buildapp == 'mulet'
[test_chrometoSource.xul]

View File

@ -0,0 +1,10 @@
<?xml version="1.0"?>
<bindings id="testBindings" xmlns="http://www.mozilla.org/xbl"
xmlns:html="http://www.w3.org/1999/xhtml">
<binding id="regularChromeBinding">
<content><html:p>Anonymous Paragraph</html:p></content>
</binding>
<binding id="whitelistedChromeBinding" bindToUntrustedContent="true">
<content><html:p>Anonymous Paragraph</html:p></content>
</binding>
</bindings>

View File

@ -0,0 +1,56 @@
<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=1050049
-->
<head>
<meta charset="utf-8">
<title>Test for Bug 1050049</title>
<script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="chrome://global/skin"/>
<link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"/>
<script type="application/javascript">
/** Test for Bug 1050049 **/
SimpleTest.waitForExplicitFinish();
var regularBindingURI = window.location.toString().replace("test_bug1050049.html", "file_bug1050049.xml") + "#regularChromeBinding";
var whitelistedBindingURI = window.location.toString().replace("test_bug1050049.html", "file_bug1050049.xml") + "#whitelistedChromeBinding";
function testApplyBinding(doc, bindingURI, expectBind) {
var d = doc.createElement('div');
doc.body.appendChild(d);
d.style.MozBinding = "url(" + bindingURI + ")";
return new Promise(function(resolve, reject) {
// Wait two ticks of the refresh driver for the binding to be applied.
function onceBindingWouldBeApplied() {
is(!!doc.getAnonymousNodes(d), expectBind, "Binding " + (expectBind ? "should" : "shouldn't") +
" be applied: " + bindingURI + ", " + doc.location);
resolve();
}
window.requestAnimationFrame(function() { window.requestAnimationFrame(onceBindingWouldBeApplied); });
});
}
function go() {
testApplyBinding(document, regularBindingURI, true)
.then(testApplyBinding.bind(null, window[0].document, regularBindingURI, false))
.then(testApplyBinding.bind(null, document, whitelistedBindingURI, true))
.then(testApplyBinding.bind(null, window[0].document, whitelistedBindingURI, true))
.then(SimpleTest.finish.bind(SimpleTest));
}
</script>
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1050049">Mozilla Bug 1050049</a>
<p id="display"></p>
<div id="content" style="display: none">
</div>
<pre id="test">
</pre>
<iframe onload="go();" src="http://example.org/tests/js/xpconnect/tests/mochitest/file_empty.html"></iframe>
</body>
</html>