summaryrefslogtreecommitdiffstats
path: root/dom/xbl/test/test_bug1359859.xhtml
diff options
context:
space:
mode:
Diffstat (limited to 'dom/xbl/test/test_bug1359859.xhtml')
-rw-r--r--dom/xbl/test/test_bug1359859.xhtml41
1 files changed, 41 insertions, 0 deletions
diff --git a/dom/xbl/test/test_bug1359859.xhtml b/dom/xbl/test/test_bug1359859.xhtml
new file mode 100644
index 000000000..564c2f96d
--- /dev/null
+++ b/dom/xbl/test/test_bug1359859.xhtml
@@ -0,0 +1,41 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <!--
+ https://bugzilla.mozilla.org/show_bug.cgi?id=1359859
+ -->
+ <head>
+ <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
+ <bindings xmlns="http://www.mozilla.org/xbl">
+ <binding id="testBinding">
+ <implementation>
+ <constructor>
+ XPCNativeWrapper.unwrap(window).running();
+ this.constructed = true;
+ throw new Error("Constructor threw");
+ </constructor>
+ <field name="throwingField">throw new Error("field threw")</field>
+ <field name="normalField">"hello"</field>
+ </implementation>
+ </binding>
+ </bindings>
+ <script>
+ // We need to wait for the binding to load.
+ SimpleTest.waitForExplicitFinish();
+ function running() {
+ // Wait for the rest of the constructor to run
+ SimpleTest.executeSoon(function() {
+ is(document.getElementById("bound").throwingField, undefined,
+ "Should not have a value for a throwing field");
+ is(document.getElementById("bound").normalField, "hello",
+ "Binding should be installed");
+ // The real test is that we haven't gotten any error events so far.
+ SimpleTest.finish();
+ });
+ }
+ </script>
+ </head>
+ <body>
+ <div id="bound" style="-moz-binding: url(#testBinding)"/>
+ </body>
+</html>
+