/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */

"use strict";

// Test that the docShell has the right profile timeline API

const URL = "data:text/html;charset=utf-8,Test page";

add_task(async function () {
  await BrowserTestUtils.withNewTab(
    { gBrowser, url: URL },
    async function (browser) {
      await SpecialPowers.spawn(browser, [], function () {
        ok(
          "recordProfileTimelineMarkers" in docShell,
          "The recordProfileTimelineMarkers attribute exists"
        );
        ok(
          "popProfileTimelineMarkers" in docShell,
          "The popProfileTimelineMarkers function exists"
        );
        ok(
          docShell.recordProfileTimelineMarkers === false,
          "recordProfileTimelineMarkers is false by default"
        );
        ok(
          docShell.popProfileTimelineMarkers().length === 0,
          "There are no markers by default"
        );

        docShell.recordProfileTimelineMarkers = true;
        ok(
          docShell.recordProfileTimelineMarkers === true,
          "recordProfileTimelineMarkers can be set to true"
        );

        docShell.recordProfileTimelineMarkers = false;
        ok(
          docShell.recordProfileTimelineMarkers === false,
          "recordProfileTimelineMarkers can be set to false"
        );
      });
    }
  );
});
