Blame devtools/server/tests/browser/browser_markers-docloading-02.js

Packit f0b94e
/* Any copyright is dedicated to the Public Domain.
Packit f0b94e
   http://creativecommons.org/publicdomain/zero/1.0/ */
Packit f0b94e
Packit f0b94e
/**
Packit f0b94e
 * Test that we get DOMContentLoaded and Load markers
Packit f0b94e
 */
Packit f0b94e
"use strict";
Packit f0b94e
Packit f0b94e
const { TimelineFront } = require("devtools/shared/fronts/timeline");
Packit f0b94e
const MARKER_NAMES = ["document::DOMContentLoaded", "document::Load"];
Packit f0b94e
Packit f0b94e
add_task(async function () {
Packit f0b94e
  let browser = await addTab(MAIN_DOMAIN + "doc_innerHTML.html");
Packit f0b94e
  // eslint-disable-next-line mozilla/no-cpows-in-tests
Packit f0b94e
  let doc = browser.contentDocumentAsCPOW;
Packit f0b94e
Packit f0b94e
  initDebuggerServer();
Packit f0b94e
  let client = new DebuggerClient(DebuggerServer.connectPipe());
Packit f0b94e
  let form = await connectDebuggerClient(client);
Packit f0b94e
  let front = TimelineFront(client, form);
Packit f0b94e
  let rec = await front.start({ withMarkers: true, withDocLoadingEvents: true });
Packit f0b94e
Packit f0b94e
  await new Promise(resolve => {
Packit f0b94e
    front.once("doc-loading", resolve);
Packit f0b94e
    doc.location.reload();
Packit f0b94e
  });
Packit f0b94e
Packit f0b94e
  ok(true, "At least one doc-loading event got fired.");
Packit f0b94e
Packit f0b94e
  await waitForMarkerType(front, MARKER_NAMES, () => true, e => e, "markers");
Packit f0b94e
  await front.stop(rec);
Packit f0b94e
Packit f0b94e
  ok(true, "Found the required marker names.");
Packit f0b94e
Packit f0b94e
  await client.close();
Packit f0b94e
  gBrowser.removeCurrentTab();
Packit f0b94e
});