summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/js-self-profiling/inline-script.html
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--testing/web-platform/tests/js-self-profiling/inline-script.html46
1 files changed, 46 insertions, 0 deletions
diff --git a/testing/web-platform/tests/js-self-profiling/inline-script.html b/testing/web-platform/tests/js-self-profiling/inline-script.html
new file mode 100644
index 0000000000..56a7b55c6b
--- /dev/null
+++ b/testing/web-platform/tests/js-self-profiling/inline-script.html
@@ -0,0 +1,46 @@
+<!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 nestedInlineScriptFunction(sample) {
+ sample();
+ }
+
+ function inlineScriptFunction(sample) {
+ nestedInlineScriptFunction(sample);
+ }
+ </script>
+
+ <script>
+ promise_test(async t => {
+ const trace = await ProfileUtils.profileFunction(inlineScriptFunction);
+
+ assert_true(ProfileUtils.containsResource(trace, location.href),
+ 'inline script resource is included');
+
+ assert_true(ProfileUtils.containsSubstack(trace, [
+ {
+ name: 'nestedInlineScriptFunction',
+ resourceId: trace.resources.indexOf(location.href),
+ line: 13,
+ column: 40,
+ },
+ {
+ name: 'inlineScriptFunction',
+ resourceId: trace.resources.indexOf(location.href),
+ line: 17,
+ column: 34,
+ },
+ ]));
+ }, 'inline script function details');
+ </script>
+</body>
+</html>