<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=1274159
-->
<head>
  <title>Test HTMLConstructor for custom elements.</title>
  <script src="/tests/SimpleTest/SimpleTest.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1274159">Bug 1274159</a>
<script type="text/javascript">
function test_with_new_window(f) {
  return new Promise((aResolve) => {
    let iframe = document.createElement('iframe');
    iframe.setAttribute('type', 'content');
    iframe.setAttribute('src', 'dummy_page.html');
    iframe.onload = function() {
      f(iframe.contentWindow);
      aResolve();
    };
    document.body.appendChild(iframe);
  });
}

// Fake the Cu.waiveXrays, so that we can share the tests with mochitest chrome.
var Cu = { waiveXrays: (obj) => obj };
var promises = [];
SimpleTest.waitForExplicitFinish();
</script>
<!-- Test cases for autonomous element -->
<script type="text/javascript" src="htmlconstructor_autonomous_tests.js"></script>
<!-- Test cases for customized built-in element -->
<script type="text/javascript" src="htmlconstructor_builtin_tests.js"></script>
<script type="text/javascript">
Promise.all(promises).then(() => {
  SimpleTest.finish();
});
</script>
</body>
</html>
