summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/timing-entrytypes-registry/registry.window.js
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/timing-entrytypes-registry/registry.window.js')
-rw-r--r--testing/web-platform/tests/timing-entrytypes-registry/registry.window.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/testing/web-platform/tests/timing-entrytypes-registry/registry.window.js b/testing/web-platform/tests/timing-entrytypes-registry/registry.window.js
new file mode 100644
index 0000000000..21ef2230e9
--- /dev/null
+++ b/testing/web-platform/tests/timing-entrytypes-registry/registry.window.js
@@ -0,0 +1,33 @@
+// META: script=resources/utils.js
+
+test(() => {
+ assert_true(!!self.PerformanceObserver, "PerformanceObserver");
+ assert_true(!!self.PerformanceObserver.supportedEntryTypes,
+ "PerformanceObserver.supportedEntryTypes");
+}, "PerformanceObserver.supportedEntryTypes exists");
+
+// UPDATE HERE if new entry
+[
+ [ "navigation", "PerformanceNavigationTiming" ],
+ [ "paint", "PerformancePaintTiming" ],
+ [ "longtask", "PerformanceLongTaskTiming" ],
+].forEach(test_support);
+
+// UPDATE BELOW to ensure the entry gets created
+
+// paint
+if (self.document) document.head.parentNode.appendChild(document.createTextNode('text inserted on purpose'));
+
+// longtask
+function syncWait(waitDuration) {
+ if (waitDuration <= 0)
+ return;
+
+ const startTime = performance.now();
+ let unused = '';
+ for (let i = 0; i < 10000; i++)
+ unused += '' + Math.random();
+
+ return syncWait(waitDuration - (performance.now() - startTime));
+}
+syncWait(50);