<!DOCTYPE HTML>
<html>
<head>
  <script src="/tests/SimpleTest/SimpleTest.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
</head>
<body>

<script type="application/javascript">
"use strict";

add_task(async function main_test() {
  await SpecialPowers.pushPrefEnv({
    set: [["dom.ipc.processCount.webIsolated", 10]],
  });

  let frame1 = document.createElement("iframe");
  frame1.src = "http://example.com";
  document.body.appendChild(frame1);
  await new Promise(resolve => {
    frame1.addEventListener("load", resolve, { once: true })
  });
  info("frame 1 loaded");

  let frame2 = document.createElement("iframe");
  frame2.src = "http://example.com";
  document.body.appendChild(frame2);
  await new Promise(resolve => {
    frame2.addEventListener("load", resolve, { once: true })
  });
  info("frame 2 loaded");

  let id1 = await SpecialPowers.spawn(frame1, [], () => {
    return ChromeUtils.domProcessChild.childId;
  });
  let id2 = await SpecialPowers.spawn(frame2, [], () => {
    return ChromeUtils.domProcessChild.childId;
  });

  is(id1, id2, "childID for example.com subframes should match");
});

</script>
</body>
</html>
