<!DOCTYPE html>
<html>

<head>
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>

  <script src="../resources/profile-utils.js"></script>
</head>

<body>

  <script>
    // Note: moving these function definitions will change the expected
    //       outcomes below.
    function scriptFunction(sample) {
      sample();
    }
  </script>

  <script>
    promise_test(async t => {
      // *.headers file should ensure we sesrve COOP and COEP headers.
      assert_true(self.crossOriginIsolated,
        "Cross origin isolation is required to surface markers");
      const trace = await ProfileUtils.profileFunction(scriptFunction);

      assert_true(ProfileUtils.containsSample(trace, {
        stackId: 7,
        marker: 'script'
      }));
    }, 'markers logged correctly');

  </script>
</body>

</html>
