DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (c68fe15a81fc)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
<!DOCTYPE html>
<title>Tests that portal don't navigate to non-http schemes.</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<body>
<script>
async_test(t => {
  assert_implements("HTMLPortalElement" in self);
  var portal = document.createElement("portal");
  portal.src = "data:text/html,empty portal";
  portal.onload = t.unreached_func("Portal loaded data URL.");
  document.body.appendChild(portal);
  t.step_timeout(() => { portal.remove(); t.done(); }, 3000);
}, "Tests that a portal can't navigate to a data URL.");

async_test(t => {
  assert_implements("HTMLPortalElement" in self);
  var portal = document.createElement("portal");
  portal.src = "about:blank";
  portal.onload = t.unreached_func("Portal loaded about:blank.");
  document.body.appendChild(portal);
  t.step_timeout(() => { portal.remove(); t.done(); }, 3000);
}, "Tests that a portal can't navigate to about:blank.");

async_test(t => {
  assert_implements("HTMLPortalElement" in self);
  var portal = document.createElement("portal");
  portal.src = "resources/simple-portal.html";
  portal.onload = t.step_func(() => {
    portal.onmessage = t.unreached_func("Portal execute javascript.");
    portal.src = "javascript:window.portalHost.postMessage('executed', '*')";
    t.step_timeout(() => { portal.remove(); t.done(); }, 3000);
  });
  document.body.appendChild(portal);
}, "Tests that a portal can't navigate to javascript URLs.");
</script>
</body>