diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /testing/web-platform/tests/navigation-timing/resources | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'testing/web-platform/tests/navigation-timing/resources')
7 files changed, 233 insertions, 0 deletions
diff --git a/testing/web-platform/tests/navigation-timing/resources/blank_page_green.html b/testing/web-platform/tests/navigation-timing/resources/blank_page_green.html new file mode 100644 index 000000000..b8a1947b7 --- /dev/null +++ b/testing/web-platform/tests/navigation-timing/resources/blank_page_green.html @@ -0,0 +1,10 @@ +<!DOCTYPE HTML> +<html> + <head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> + <title>Green Test Page</title> + </head> + <body style="background-color:#00FF00;"> + <h1>Placeholder</h1> + </body> +</html> diff --git a/testing/web-platform/tests/navigation-timing/resources/blank_page_green_with_onunload.html b/testing/web-platform/tests/navigation-timing/resources/blank_page_green_with_onunload.html new file mode 100644 index 000000000..2f401747b --- /dev/null +++ b/testing/web-platform/tests/navigation-timing/resources/blank_page_green_with_onunload.html @@ -0,0 +1,11 @@ +<!DOCTYPE HTML> +<html> + <head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> + <title>Green Test Page</title> + </head> + <!-- use onunload to ensure this does not trigger bfcache --> + <body style="background-color:#00FF00;" onunload="1;"> + <h1>Placeholder</h1> + </body> +</html> diff --git a/testing/web-platform/tests/navigation-timing/resources/blank_page_meta_redirect.html b/testing/web-platform/tests/navigation-timing/resources/blank_page_meta_redirect.html new file mode 100644 index 000000000..50d6e7057 --- /dev/null +++ b/testing/web-platform/tests/navigation-timing/resources/blank_page_meta_redirect.html @@ -0,0 +1,11 @@ +<!DOCTYPE HTML> +<html> + <head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> + <meta http-equiv="refresh" content="1;URL='blank_page_green.html'" /> + <title>Redirect Placeholder</title> + </head> + <body style="background-color:#FFFF00";> + <h1>Placeholder</h1> + </body> +</html> diff --git a/testing/web-platform/tests/navigation-timing/resources/blank_page_unload.html b/testing/web-platform/tests/navigation-timing/resources/blank_page_unload.html new file mode 100644 index 000000000..bb2a27f16 --- /dev/null +++ b/testing/web-platform/tests/navigation-timing/resources/blank_page_unload.html @@ -0,0 +1,25 @@ +<!DOCTYPE HTML> +<html> + <head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> + + <title>Yellow Test Page</title> + + <script type="text/javascript"> + function onbeforeunload_handler() + { + var temp = "onbeforeunload"; + } + + function onunload_handler() + { + var temp = "onunload"; + } + </script> + </head> + <body onbeforeunload="onbeforeunload_handler();" + onunload="onunload_handler();" + style="background-color:#FFFF00;"> + <h1>Unload</h1> + </body> +</html> diff --git a/testing/web-platform/tests/navigation-timing/resources/blank_page_yellow.html b/testing/web-platform/tests/navigation-timing/resources/blank_page_yellow.html new file mode 100644 index 000000000..4e5e1a000 --- /dev/null +++ b/testing/web-platform/tests/navigation-timing/resources/blank_page_yellow.html @@ -0,0 +1,10 @@ +<!DOCTYPE HTML> +<html> + <head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> + <title>Yellow Test Page</title> + </head> + <body style="background-color:#FFFF00;"> + <h1>Placeholder</h1> + </body> +</html>
\ No newline at end of file diff --git a/testing/web-platform/tests/navigation-timing/resources/blank_page_yellow_with_onunload.html b/testing/web-platform/tests/navigation-timing/resources/blank_page_yellow_with_onunload.html new file mode 100644 index 000000000..771e0701d --- /dev/null +++ b/testing/web-platform/tests/navigation-timing/resources/blank_page_yellow_with_onunload.html @@ -0,0 +1,11 @@ +<!DOCTYPE HTML> +<html> + <head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> + <title>Yellow Test Page</title> + </head> + <!-- use onunload to ensure this does not trigger bfcache --> + <body style="background-color:#FFFF00;" onunload="1;"> + <h1>Placeholder</h1> + </body> +</html>
\ No newline at end of file diff --git a/testing/web-platform/tests/navigation-timing/resources/webperftestharness.js b/testing/web-platform/tests/navigation-timing/resources/webperftestharness.js new file mode 100644 index 000000000..750946dde --- /dev/null +++ b/testing/web-platform/tests/navigation-timing/resources/webperftestharness.js @@ -0,0 +1,155 @@ +/* +Distributed under both the W3C Test Suite License [1] and the W3C +3-clause BSD License [2]. To contribute to a W3C Test Suite, see the +policies and contribution forms [3]. + +[1] http://www.w3.org/Consortium/Legal/2008/04-testsuite-license +[2] http://www.w3.org/Consortium/Legal/2008/03-bsd-license +[3] http://www.w3.org/2004/10/27-testcases + */ + +// +// Helper Functions for NavigationTiming W3C tests +// + +var performanceNamespace = window.performance; +var timingAttributes = [ + 'connectEnd', + 'connectStart', + 'domComplete', + 'domContentLoadedEventEnd', + 'domContentLoadedEventStart', + 'domInteractive', + 'domLoading', + 'domainLookupEnd', + 'domainLookupStart', + 'fetchStart', + 'loadEventEnd', + 'loadEventStart', + 'navigationStart', + 'redirectEnd', + 'redirectStart', + 'requestStart', + 'responseEnd', + 'responseStart', + 'unloadEventEnd', + 'unloadEventStart' +]; + +var namespace_check = false; + +// +// All test() functions in the WebPerf test suite should use wp_test() instead. +// +// wp_test() validates the window.performance namespace exists prior to running tests and +// immediately shows a single failure if it does not. +// + +function wp_test(func, msg, properties) +{ + // only run the namespace check once + if (!namespace_check) + { + namespace_check = true; + + if (performanceNamespace === undefined || performanceNamespace == null) + { + // show a single error that window.performance is undefined + test(function() { assert_true(performanceNamespace !== undefined && performanceNamespace != null, "window.performance is defined and not null"); }, "window.performance is defined and not null.", {author:"W3C http://www.w3.org/",help:"http://www.w3.org/TR/navigation-timing/#sec-window.performance-attribute",assert:"The window.performance attribute provides a hosting area for performance related attributes. "}); + } + } + + test(func, msg, properties); +} + +function test_namespace(child_name, skip_root) +{ + if (skip_root === undefined) { + var msg = 'window.performance is defined'; + wp_test(function () { assert_true(performanceNamespace !== undefined, msg); }, msg,{author:"W3C http://www.w3.org/",help:"http://www.w3.org/TR/navigation-timing/#sec-window.performance-attribute",assert:"The window.performance attribute provides a hosting area for performance related attributes. "}); + } + + if (child_name !== undefined) { + var msg2 = 'window.performance.' + child_name + ' is defined'; + wp_test(function() { assert_true(performanceNamespace[child_name] !== undefined, msg2); }, msg2,{author:"W3C http://www.w3.org/",help:"http://www.w3.org/TR/navigation-timing/#sec-window.performance-attribute",assert:"The window.performance attribute provides a hosting area for performance related attributes. "}); + } +} + +function test_attribute_exists(parent_name, attribute_name, properties) +{ + var msg = 'window.performance.' + parent_name + '.' + attribute_name + ' is defined.'; + wp_test(function() { assert_true(performanceNamespace[parent_name][attribute_name] !== undefined, msg); }, msg, properties); +} + +function test_enum(parent_name, enum_name, value, properties) +{ + var msg = 'window.performance.' + parent_name + '.' + enum_name + ' is defined.'; + wp_test(function() { assert_true(performanceNamespace[parent_name][enum_name] !== undefined, msg); }, msg, properties); + + msg = 'window.performance.' + parent_name + '.' + enum_name + ' = ' + value; + wp_test(function() { assert_equals(performanceNamespace[parent_name][enum_name], value, msg); }, msg, properties); +} + +function test_timing_order(attribute_name, greater_than_attribute, properties) +{ + // ensure it's not 0 first + var msg = "window.performance.timing." + attribute_name + " > 0"; + wp_test(function() { assert_true(performanceNamespace.timing[attribute_name] > 0, msg); }, msg, properties); + + // ensure it's in the right order + msg = "window.performance.timing." + attribute_name + " >= window.performance.timing." + greater_than_attribute; + wp_test(function() { assert_true(performanceNamespace.timing[attribute_name] >= performanceNamespace.timing[greater_than_attribute], msg); }, msg, properties); +} + +function test_timing_greater_than(attribute_name, greater_than, properties) +{ + var msg = "window.performance.timing." + attribute_name + " > " + greater_than; + test_greater_than(performanceNamespace.timing[attribute_name], greater_than, msg, properties); +} + +function test_timing_equals(attribute_name, equals, msg, properties) +{ + var test_msg = msg || "window.performance.timing." + attribute_name + " == " + equals; + test_equals(performanceNamespace.timing[attribute_name], equals, test_msg, properties); +} + +// +// Non-test related helper functions +// + +function sleep_milliseconds(n) +{ + var start = new Date().getTime(); + while (true) { + if ((new Date().getTime() - start) >= n) break; + } +} + +// +// Common helper functions +// + +function test_true(value, msg, properties) +{ + wp_test(function () { assert_true(value, msg); }, msg, properties); +} + +function test_equals(value, equals, msg, properties) +{ + wp_test(function () { assert_equals(value, equals, msg); }, msg, properties); +} + +function test_greater_than(value, greater_than, msg, properties) +{ + wp_test(function () { assert_true(value > greater_than, msg); }, msg, properties); +} + +function test_greater_or_equals(value, greater_than, msg, properties) +{ + wp_test(function () { assert_true(value >= greater_than, msg); }, msg, properties); +} + +function test_not_equals(value, notequals, msg, properties) +{ + wp_test(function() { assert_true(value !== notequals, msg); }, msg, properties); +} |