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

"use strict";

const { ProfilerTestUtils } = ChromeUtils.importESModule(
  "resource://testing-common/ProfilerTestUtils.sys.mjs"
);

const TEST_URI =
  "data:text/html;charset=utf-8," +
  "<p>browser_telemetry_toolboxtabs_jsprofiler.js</p>";

// Because we need to gather stats for the period of time that a tool has been
// opened we make use of setTimeout() to create tool active times.
const TOOL_DELAY = 200;

add_setup(ProfilerTestUtils.assertProfilerInactive);

add_task(async function () {
  await addTab(TEST_URI);
  Services.fog.testResetFOG();

  await openAndCloseToolbox(2, TOOL_DELAY, "performance");
  checkResults();

  gBrowser.removeCurrentTab();
});

function checkResults() {
  is(2, Glean.devtools.jsprofilerOpenedCount.testGetValue());
  Assert.greater(Glean.devtools.jsprofilerTimeActive.testGetValue().sum, 0);
}
