refactored performance timing to align with updated spec

refactoring with ResourceFetchMetadata

implemented deprecated window.timing functionality

created ResourceTimingListener trait

fixed w3c links in navigation timing

updated include.ini to run resource timing tests on ci
This commit is contained in:
ddh 2018-03-12 22:24:41 +00:00
parent 3fe83f1d06
commit 26007fddd3
103 changed files with 1881 additions and 322 deletions

View file

@ -103,6 +103,8 @@ skip: true
skip: false
[referrer-policy]
skip: false
[resource-timing]
skip: false
[subresource-integrity]
skip: false
[touch-events]

View file

@ -7,3 +7,4 @@
[Microtasks evaluate afterward when the stack is not empty using createElement()]
expected: FAIL

View file

@ -24,5 +24,3 @@
[A Keep-Alive fetch() with a body over the Quota Limit should reject.]
expected: FAIL
[request-keepalive-quota.html?include=slow-1]

View file

@ -2,31 +2,21 @@
[idlharness]
expected: FAIL
[Performance interface: existence and properties of interface object]
expected: FAIL
[Performance interface: existence and properties of interface prototype object]
expected: FAIL
[Performance interface: attribute timeOrigin]
expected: FAIL
[Performance interface: operation toJSON()]
expected: FAIL
[Performance interface: performance must inherit property "timeOrigin" with the proper type]
expected: FAIL
[Performance interface: performance must inherit property "toJSON()" with the proper type]
expected: FAIL
[Test default toJSON operation of Performance]
expected: FAIL
[idlharness.any.serviceworker.html]
[idlharness]
expected: FAIL
[idlharness.any.sharedworker.html]
[idlharness]
expected: FAIL
@ -42,21 +32,9 @@
[idlharness]
expected: FAIL
[Performance interface: existence and properties of interface object]
expected: FAIL
[Performance interface: existence and properties of interface prototype object]
expected: FAIL
[Performance interface: attribute timeOrigin]
expected: FAIL
[Performance interface: operation toJSON()]
expected: FAIL
[Performance interface: performance must inherit property "timeOrigin" with the proper type]
expected: FAIL
[Performance interface: performance must inherit property "toJSON()" with the proper type]
expected: FAIL

View file

@ -0,0 +1,7 @@
[test_cross_frame_start.html]
[Child created at least 1 second after parent]
expected: FAIL
[Child and parent time bases are correct]
expected: FAIL

View file

@ -6,6 +6,3 @@
[Window and worker timeOrigins are close when created one after another.]
expected: FAIL
[Window and worker timeOrigins differ when worker is created after a delay.]
expected: FAIL

View file

@ -1,5 +0,0 @@
[window-worker-timeOrigin.window.html]
type: testharness
[timeOrigin and now() should be correctly ordered between window and worker]
expected: FAIL

View file

@ -292,7 +292,3 @@
[<meta>: "1\\furl=foo"]
expected: TIMEOUT
[parsing.html?131-last]
[parsing.html?81-90]

View file

@ -0,0 +1,5 @@
[dom_interactive_image_document.html]
expected: ERROR
[Test domInteractive on image document]
expected: NOTRUN

View file

@ -0,0 +1,5 @@
[dom_interactive_media_document.html]
expected: ERROR
[Test domInteractive on media document]
expected: NOTRUN

View file

@ -1,56 +1,11 @@
[nav2_idlharness.html]
type: testharness
[PerformanceNavigationTiming interface: existence and properties of interface object]
expected: FAIL
[PerformanceNavigationTiming interface object length]
expected: FAIL
[PerformanceNavigationTiming interface object name]
expected: FAIL
[PerformanceNavigationTiming interface: existence and properties of interface prototype object]
expected: FAIL
[PerformanceNavigationTiming interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[PerformanceNavigationTiming interface: attribute unloadEventStart]
expected: FAIL
[PerformanceNavigationTiming interface: attribute unloadEventEnd]
expected: FAIL
[PerformanceNavigationTiming interface: attribute domInteractive]
expected: FAIL
[PerformanceNavigationTiming interface: attribute domContentLoadedEventStart]
expected: FAIL
[PerformanceNavigationTiming interface: attribute domContentLoadedEventEnd]
expected: FAIL
[PerformanceNavigationTiming interface: attribute domComplete]
expected: FAIL
[PerformanceNavigationTiming interface: attribute loadEventStart]
expected: FAIL
[PerformanceNavigationTiming interface: attribute loadEventEnd]
expected: FAIL
[PerformanceNavigationTiming interface: attribute type]
expected: FAIL
[PerformanceNavigationTiming interface: attribute redirectCount]
expected: FAIL
[PerformanceNavigationTiming interface: operation toJSON()]
expected: FAIL
[PerformanceNavigationTiming interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
[Navigation Timing 2 IDL tests]
expected: FAIL

View file

@ -1,5 +1,6 @@
[nav2_test_attributes_exist.html]
type: testharness
expected: TIMEOUT
[Performance navigation timing entries are observable.]
expected: FAIL
expected: TIMEOUT

View file

@ -1,5 +1,6 @@
[nav2_test_attributes_values.html]
type: testharness
expected: TIMEOUT
[Performance navigation timing instance's value is reasonable.]
expected: FAIL
expected: TIMEOUT

View file

@ -1,5 +1,6 @@
[nav2_test_instance_accessors.html]
type: testharness
expected: TIMEOUT
[Performance navigation timing entries are accessible through three different accessors.]
expected: FAIL
expected: TIMEOUT

View file

@ -1,5 +1,6 @@
[nav2_test_navigation_type_navigate.html]
type: testharness
expected: TIMEOUT
[Navigation type to be navigate.]
expected: FAIL
expected: TIMEOUT

View file

@ -1,5 +1,6 @@
[nav2_test_redirect_none.html]
type: testharness
expected: TIMEOUT
[Naivation without redirects.]
expected: FAIL
expected: TIMEOUT

View file

@ -1,5 +1,6 @@
[nav2_test_unique_nav_instances.html]
type: testharness
expected: TIMEOUT
[Each window has a unique nav timing 2 instance.]
expected: FAIL
expected: TIMEOUT

View file

@ -1,4 +1,5 @@
[po-navigation.html]
expected: TIMEOUT
[navigation entry is observable]
expected: FAIL
expected: TIMEOUT

View file

@ -36,3 +36,27 @@
[window.performance.timing.unloadEventStart is defined.]
expected: FAIL
[window.performance.timing.domComplete is defined.]
expected: FAIL
[window.performance.timing.domContentLoadedEventEnd is defined.]
expected: FAIL
[window.performance.timing.domContentLoadedEventStart is defined.]
expected: FAIL
[window.performance.timing.domInteractive is defined.]
expected: FAIL
[window.performance.timing.domLoading is defined.]
expected: FAIL
[window.performance.timing.loadEventEnd is defined.]
expected: FAIL
[window.performance.timing.loadEventStart is defined.]
expected: FAIL
[window.performance.timing.navigationStart is defined.]
expected: FAIL

View file

@ -9,9 +9,6 @@
[case-sensitivity.any.html]
type: testharness
[getEntriesByType values are case sensitive]
expected: FAIL
[getEntriesByName values are case sensitive]
expected: FAIL

View file

@ -0,0 +1,8 @@
[clear_resource_timing_functionality.html]
expected: ERROR
[4 resource timing entries should be stored in this page.]
expected: FAIL
[No resource timing entries should be stored after clearResourceTimings.]
expected: FAIL

View file

@ -0,0 +1,243 @@
[idlharness.any.html]
[PerformanceResourceTiming interface: attribute transferSize]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "transferSize" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute decodedBodySize]
expected: FAIL
[Stringification of resource]
expected: FAIL
[Test default toJSON operation of PerformanceNavigationTiming]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "toJSON()" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "decodedBodySize" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute encodedBodySize]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "encodedBodySize" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: operation toJSON()]
expected: FAIL
[PerformanceResourceTiming must be primary interface of resource]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "workerStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute responseEnd]
expected: FAIL
[Performance interface: operation setResourceTimingBufferSize(unsigned long)]
expected: FAIL
[PerformanceResourceTiming interface: attribute secureConnectionStart]
expected: FAIL
[Performance interface: calling setResourceTimingBufferSize(unsigned long) on performance with too few arguments must throw TypeError]
expected: FAIL
[PerformanceResourceTiming interface: attribute fetchStart]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "secureConnectionStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "domainLookupStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "connectStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute workerStart]
expected: FAIL
[PerformanceResourceTiming interface: attribute domainLookupStart]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "redirectStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute connectStart]
expected: FAIL
[Performance interface: operation clearResourceTimings()]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "responseEnd" with the proper type]
expected: FAIL
[Performance interface: performance must inherit property "onresourcetimingbufferfull" with the proper type]
expected: FAIL
[Performance interface: performance must inherit property "setResourceTimingBufferSize(unsigned long)" with the proper type]
expected: FAIL
[Performance interface: attribute onresourcetimingbufferfull]
expected: FAIL
[PerformanceResourceTiming interface: attribute connectEnd]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "redirectEnd" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute redirectEnd]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "domainLookupEnd" with the proper type]
expected: FAIL
[Performance interface: performance must inherit property "clearResourceTimings()" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute domainLookupEnd]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "fetchStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute redirectStart]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "connectEnd" with the proper type]
expected: FAIL
[idlharness.any.worker.html]
[PerformanceResourceTiming interface: resource must inherit property "workerStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "initiatorType" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute transferSize]
expected: FAIL
[Test default toJSON operation of toJSON object]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "secureConnectionStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "requestStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "transferSize" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "domainLookupStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "connectStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute decodedBodySize]
expected: FAIL
[Stringification of resource]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "redirectStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "toJSON()" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "responseEnd" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "redirectEnd" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "nextHopProtocol" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "domainLookupEnd" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "decodedBodySize" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "fetchStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute encodedBodySize]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "connectEnd" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "encodedBodySize" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: operation toJSON()]
expected: FAIL
[PerformanceResourceTiming interface: resource must inherit property "responseStart" with the proper type]
expected: FAIL
[PerformanceResourceTiming must be primary interface of resource]
expected: FAIL
[PerformanceResourceTiming interface: attribute responseEnd]
expected: FAIL
[Performance interface: operation setResourceTimingBufferSize(unsigned long)]
expected: FAIL
[PerformanceResourceTiming interface: attribute secureConnectionStart]
expected: FAIL
[Performance interface: calling setResourceTimingBufferSize(unsigned long) on performance with too few arguments must throw TypeError]
expected: FAIL
[PerformanceResourceTiming interface: attribute fetchStart]
expected: FAIL
[PerformanceResourceTiming interface: attribute workerStart]
expected: FAIL
[PerformanceResourceTiming interface: attribute domainLookupStart]
expected: FAIL
[PerformanceResourceTiming interface: attribute connectStart]
expected: FAIL
[Performance interface: operation clearResourceTimings()]
expected: FAIL
[Performance interface: performance must inherit property "onresourcetimingbufferfull" with the proper type]
expected: FAIL
[Performance interface: performance must inherit property "setResourceTimingBufferSize(unsigned long)" with the proper type]
expected: FAIL
[Performance interface: attribute onresourcetimingbufferfull]
expected: FAIL
[PerformanceResourceTiming interface: attribute connectEnd]
expected: FAIL
[PerformanceResourceTiming interface: attribute redirectEnd]
expected: FAIL
[Performance interface: performance must inherit property "clearResourceTimings()" with the proper type]
expected: FAIL
[PerformanceResourceTiming interface: attribute domainLookupEnd]
expected: FAIL
[PerformanceResourceTiming interface: attribute redirectStart]
expected: FAIL

View file

@ -0,0 +1,7 @@
[resource-timing-tojson.html]
[Untitled]
expected: FAIL
[Test toJSON() in PerformanceResourceTiming]
expected: FAIL

View file

@ -0,0 +1,55 @@
[resource-timing.html]
[No timeline entry for about:blank]
expected: FAIL
[Setting 'document.domain' does not effect same-origin checks]
expected: FAIL
['iframe: 250ms delay before 'responseStart', another 250ms delay before 'responseEnd'.]
expected: FAIL
['xmlhttprequest: 250ms delay before 'responseStart', another 250ms delay before 'responseEnd'.]
expected: FAIL
['script: 250ms delay before 'responseStart', another 250ms delay before 'responseEnd'.]
expected: FAIL
['link: 250ms delay before 'responseStart', another 250ms delay before 'responseEnd'.]
expected: FAIL
['iframe (Redirected): 250ms delay before 'redirectEnd', another 250ms delay before 'responseStart'.]
expected: FAIL
['xmlhttprequest (Redirected): 250ms delay before 'redirectEnd', another 250ms delay before 'responseStart'.]
expected: FAIL
['script (Redirected): 250ms delay before 'redirectEnd', another 250ms delay before 'responseStart'.]
expected: FAIL
['link (Redirected): 250ms delay before 'redirectEnd', another 250ms delay before 'responseStart'.]
expected: FAIL
['iframe (Populate cache): The initial request populates the cache (if appropriate).]
expected: FAIL
['iframe (Potentially Cached): Immediately fetch the same URL, exercising the cache hit path (if any).]
expected: FAIL
['xmlhttprequest (Populate cache): The initial request populates the cache (if appropriate).]
expected: FAIL
['xmlhttprequest (Potentially Cached): Immediately fetch the same URL, exercising the cache hit path (if any).]
expected: FAIL
['script (Populate cache): The initial request populates the cache (if appropriate).]
expected: FAIL
['script (Potentially Cached): Immediately fetch the same URL, exercising the cache hit path (if any).]
expected: FAIL
['link (Populate cache): The initial request populates the cache (if appropriate).]
expected: FAIL
['link (Potentially Cached): Immediately fetch the same URL, exercising the cache hit path (if any).]
expected: FAIL

View file

@ -0,0 +1,5 @@
[resource_TAO_cross_origin_redirect_chain.html]
expected: ERROR
[There should be one entry.]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_TAO_null.htm]
[redirectStart, redirectEnd, domainLookupStart, domainLookupEnd, connectStart, connectEnd, secureConnectionStart, requestStart, and responseStart -- should be all returned as 0 when the value of Timing-Allow-Origin is null and TAO algorithm fails]
expected: FAIL

View file

@ -0,0 +1,34 @@
[resource_TAO_origin.htm]
[domainLookupStart should not be 0 in timing-allow cross-origin request.]
expected: FAIL
[domainLookupEnd should not be 0 in timing-allow cross-origin request.]
expected: FAIL
[connectStart should not be 0 in timing-allow cross-origin request.]
expected: FAIL
[connectEnd should not be 0 in timing-allow cross-origin request.]
expected: FAIL
[requestStart should not be 0 in timing-allow cross-origin request.]
expected: FAIL
[responseStart should not be 0 in timing-allow cross-origin request.]
expected: FAIL
[fetchStart should not be 0 in timing-allow cross-origin request.]
expected: FAIL
[responseEnd should not be 0 in timing-allow cross-origin request.]
expected: FAIL
[redirectStart should be 0 in cross-origin request since no redirect.]
expected: FAIL
[redirectEnd should be 0 in cross-origin request since no redirect.]
expected: FAIL
[secureConnectionStart should be 0 in cross-origin request since no ssl!]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_TAO_origin_uppercase.htm]
[redirectStart, redirectEnd, domainLookupStart, domainLookupEnd, connectStart, connectEnd, secureConnectionStart, requestStart, and responseStart -- should be all returned as 0 when the value of Timing-Allow-Origin is NOT a case-sensitive match for the value of the origin of the current document and TAO algorithm passes]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_TAO_space.htm]
[redirectStart, redirectEnd, domainLookupStart, domainLookupEnd, connectStart, connectEnd, secureConnectionStart, requestStart, and responseStart -- should be all returned as 0 when the Timing-Allow-Origin header value of the HTTP response is a space separated origin/wildcard list]
expected: FAIL

View file

@ -0,0 +1,28 @@
[resource_TAO_zero.htm]
[fetchStart should be greater than 0 in cross-origin request.]
expected: FAIL
[responseEnd should be greater than 0 in cross-origin request.]
expected: FAIL
[secureConnectionStart should be 0 in cross-origin request.]
expected: FAIL
[connectEnd should be 0 in cross-origin request.]
expected: FAIL
[domainLookupStart should be 0 in cross-origin request.]
expected: FAIL
[connectStart should be 0 in cross-origin request.]
expected: FAIL
[redirectStart should be 0 in cross-origin request.]
expected: FAIL
[domainLookupEnd should be 0 in cross-origin request.]
expected: FAIL
[redirectEnd should be 0 in cross-origin request.]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_cached.htm]
[There should be two entries]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_connection_reuse.html]
[There should be 2 PerformanceEntries]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_dedicated_worker.html]
[There should be six entries: 4 scripts, 1 stylesheet, and the worker itself]
expected: FAIL

View file

@ -0,0 +1,13 @@
[resource_dynamic_insertion.html]
[http://web-platform.test:8000/resource-timing/resources/resource_timing_test0.css is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/resource_timing_test0.png is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/inject_resource_test.html is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/inject_resource_test.html is expected to have initiatorType iframe]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_ignore_data_url.html]
[entries.length == 0]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_ignore_failures.html]
[entries.length == 0]
expected: FAIL

View file

@ -0,0 +1,7 @@
[resource_initiator_types.html]
[http://web-platform.test:8000/resource-timing/resources/all_resource_types.htm is not expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/green_frame.htm is not expected to be in the Resource Timing buffer]
expected: FAIL

View file

@ -0,0 +1,20 @@
[resource_memory_cached.sub.html]
expected: ERROR
[http://web-platform.test:8000/resource-timing/resources/blue.png?id=cached is expected to be in the Resource Timing buffer]
expected: FAIL
[requestStart should be non-zero on the same-origin request]
expected: FAIL
[Entry name should start with cross-origin domain]
expected: FAIL
[Entry name should end with file name]
expected: FAIL
[responseEnd should not be before startTime]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/inject_resource_test.html is not expected to be in the Resource Timing buffer]
expected: FAIL

View file

@ -0,0 +1,19 @@
[resource_redirects.html]
[http://web-platform.test:8000/common/redirect.py?location=/resource-timing/resources/resource_timing_test0.css is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/common/redirect.py?location=/resource-timing/resources/blue.png is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/common/redirect.py?location=/resource-timing/resources/blank_page_green.htm is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/common/redirect.py?location=/resource-timing/resources/empty_script.js is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/common/redirect.py?location=/resource-timing/resources/blank_page_green.htm?id=xhr is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/inject_resource_test.html is not expected to be in the Resource Timing buffer]
expected: FAIL

View file

@ -0,0 +1,7 @@
[resource_reparenting.html]
[http://web-platform.test:8000/resource-timing/resources/blue.png?id=move_to_child is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/inject_resource_test.html is not expected to be in the Resource Timing buffer]
expected: FAIL

View file

@ -0,0 +1,31 @@
[resource_script_types.html]
[http://web-platform.test:8000/resource-timing/resources/empty_script.js?id=1 is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/empty_script.js?id=2 is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/empty_script.js?id=3 is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/empty_script.js?id=4 is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/empty_script.js?id=5 is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/empty_script.js?id=6 is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/empty_script.js?id=7 is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/empty_script.js?id=8 is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/empty_script.js?id=9 is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/inject_resource_test.html is not expected to be in the Resource Timing buffer]
expected: FAIL

View file

@ -0,0 +1,13 @@
[resource_subframe_self_navigation.html]
[Subsequent <iframe> navigations don't appear in the resource-timing buffer.]
expected: FAIL
[Subsequent <frame> navigations don't appear in the resource-timing buffer.]
expected: FAIL
[Subsequent <embed> navigations don't appear in the resource-timing buffer.]
expected: FAIL
[Subsequent <object> navigations don't appear in the resource-timing buffer.]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_timing.worker.html]
[Performance Resouce Entries in workers]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_timing_TAO_cross_origin_redirect.html]
[This test validates the values in resource timing for a timing allowed cross-origin redirect.]
expected: FAIL

View file

@ -0,0 +1,5 @@
[resource_timing_buffer_full_eventually.html]
expected: TIMEOUT
[Finite resource timing entries buffer size]
expected: TIMEOUT

View file

@ -0,0 +1,10 @@
[resource_timing_buffer_full_when_populate_entries.html]
[This test validates the functionality of onresourcetimingbufferfull in resource timing.]
expected: FAIL
[There should only be |bufferSize| resource entries.]
expected: FAIL
[onresourcetimingbufferfull should have been invoked once buffer is full.]
expected: FAIL

View file

@ -0,0 +1,7 @@
[resource_timing_buffer_full_when_shrink_buffer_size.html]
[This test validates the functionality of onresourcetimingbufferfull in resource timing.]
expected: FAIL
[There are 4 scripts, and setResourceTimingBufferSize does not reduce the size.]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_timing_cross_origin_redirect.html]
[This test validates the values in resource timing for a cross-origin redirect.]
expected: FAIL

View file

@ -0,0 +1,5 @@
[resource_timing_cross_origin_redirect_chain.html]
expected: ERROR
[There should be one entry.]
expected: FAIL

View file

@ -0,0 +1,4 @@
[resource_timing_same_origin_redirect.html]
[This test validates the values of the redirectStart/End in resource timing for a same-origin resource redirect.]
expected: FAIL

View file

@ -0,0 +1,28 @@
[resource_timing_store_and_clear_during_callback.html]
[This test validates the behavior of read and clear operation in onresourcetimingbufferfull callback of resource timing.]
expected: FAIL
[No entry should be stored in resource timing buffer since its cleared once an item arrived.]
expected: FAIL
[6 resource timing entries should be moved to global buffer.]
expected: FAIL
[http://web-platform.test:8000/resources/testharness.js is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resources/testharnessreport.js is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/webperftestharness.js is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/webperftestharnessextension.js is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/empty_script.js is expected to be in the Resource Timing buffer]
expected: FAIL
[http://web-platform.test:8000/resource-timing/resources/resource_timing_test0.js is expected to be in the Resource Timing buffer]
expected: FAIL

View file

@ -0,0 +1,7 @@
[single-entry-per-resource.html]
[One resource when reusing data]
expected: FAIL
[Only one resource entry per resource]
expected: FAIL

View file

@ -0,0 +1,77 @@
[test_resource_timing.html]
expected: TIMEOUT
[window.performance.getEntriesByName() and window.performance.getEntriesByNameType() return same data (iframe)]
expected: FAIL
[PerformanceEntry has correct name, initiatorType, startTime, and duration (iframe)]
expected: FAIL
[PerformanceEntry has correct order of timing attributes (iframe)]
expected: FAIL
[PerformanceEntry has correct network transfer attributes (iframe)]
expected: FAIL
[PerformanceEntry has correct protocol attribute (iframe)]
expected: FAIL
[window.performance.getEntriesByName() and window.performance.getEntriesByNameType() return same data (img)]
expected: FAIL
[PerformanceEntry has correct name, initiatorType, startTime, and duration (img)]
expected: FAIL
[PerformanceEntry has correct order of timing attributes (img)]
expected: FAIL
[PerformanceEntry has correct network transfer attributes (img)]
expected: FAIL
[PerformanceEntry has correct protocol attribute (img)]
expected: FAIL
[window.performance.getEntriesByName() and window.performance.getEntriesByNameType() return same data (link)]
expected: TIMEOUT
[PerformanceEntry has correct name, initiatorType, startTime, and duration (link)]
expected: NOTRUN
[PerformanceEntry has correct order of timing attributes (link)]
expected: NOTRUN
[PerformanceEntry has correct network transfer attributes (link)]
expected: NOTRUN
[PerformanceEntry has correct protocol attribute (link)]
expected: NOTRUN
[window.performance.getEntriesByName() and window.performance.getEntriesByNameType() return same data (script)]
expected: FAIL
[PerformanceEntry has correct name, initiatorType, startTime, and duration (script)]
expected: FAIL
[PerformanceEntry has correct order of timing attributes (script)]
expected: FAIL
[PerformanceEntry has correct network transfer attributes (script)]
expected: FAIL
[PerformanceEntry has correct protocol attribute (script)]
expected: FAIL
[window.performance.getEntriesByName() and window.performance.getEntriesByNameType() return same data (xmlhttprequest)]
expected: FAIL
[PerformanceEntry has correct name, initiatorType, startTime, and duration (xmlhttprequest)]
expected: FAIL
[PerformanceEntry has correct order of timing attributes (xmlhttprequest)]
expected: FAIL
[PerformanceEntry has correct network transfer attributes (xmlhttprequest)]
expected: FAIL
[PerformanceEntry has correct protocol attribute (xmlhttprequest)]
expected: FAIL

View file

@ -1,4 +0,0 @@
[import-in-moduleworker.html]
[Base URL in module dedicated workers: import]
expected: FAIL

View file

@ -1,4 +0,0 @@
[sharedworker-in-worker.html]
[Base URL in workers: new SharedWorker()]
expected: FAIL

View file

@ -1,5 +0,0 @@
[005.html]
type: testharness
[dedicated worker in shared worker in dedicated worker]
expected: FAIL

View file

@ -1,3 +1,26 @@
[worker-performance.worker.html]
type: testharness
expected: CRASH
[Can use performance.getEntriesByType in workers]
expected: FAIL
[Performance marks and measures seem to be working correctly in workers]
expected: FAIL
[Can use clearMarks and clearMeasures in workers]
expected: FAIL
[Resource timing seems to work in workers]
expected: FAIL
[performance.clearResourceTimings in workers]
expected: FAIL
[performance.setResourceTimingBufferSize in workers]
expected: FAIL
[performance.timing is not available in workers]
expected: FAIL
[performance.toJSON is available in workers]
expected: FAIL

View file

@ -5,7 +5,3 @@
[sync-no-timeout]
expected: FAIL
[sync-no-timeout.any.worker.html]
[sync-no-timeout.any.html]

View file

@ -27064,7 +27064,7 @@
"testharness"
],
"mozilla/interfaces.html": [
"b1de57409ad5e6f9fedeb8a34c9474b4e378ec0a",
"ad17e930ddb5bc2daecb86216efe8885ae399173",
"testharness"
],
"mozilla/interfaces.js": [
@ -27072,7 +27072,7 @@
"support"
],
"mozilla/interfaces.worker.js": [
"fbd6e92c097dea4f99924de219c9f6aa07a45282",
"a5f2e00f234ea66b80e8a9bd4dbbc5433926191f",
"testharness"
],
"mozilla/invalid-this.html": [
@ -32904,11 +32904,11 @@
"testharness"
],
"mozilla/window_performance.html": [
"6b96c18b3cdef8b8bce294f1b45ce09192b00cd0",
"690870b7080e179481ca0255f7c30337e8b6636a",
"testharness"
],
"mozilla/window_performance_topLevelDomComplete.html": [
"ce2431a7279e7cefa9e8032edabe276ac5deb227",
"50bbc2917b5ac900b5061a0b2c30b6c1fef1067e",
"testharness"
],
"mozilla/window_requestAnimationFrame.html": [

View file

@ -0,0 +1,4 @@
[window_performance.html]
[window_performance]
expected: FAIL

View file

@ -181,10 +181,11 @@ test_interfaces([
"PerformanceEntry",
"PerformanceMark",
"PerformanceMeasure",
"PerformanceNavigationTiming",
"PerformanceObserver",
"PerformanceObserverEntryList",
"PerformancePaintTiming",
"PerformanceTiming",
"PerformanceResourceTiming",
"Plugin",
"PluginArray",
"PopStateEvent",

View file

@ -39,6 +39,7 @@ test_interfaces([
"PerformanceObserver",
"PerformanceObserverEntryList",
"PerformancePaintTiming",
"PerformanceResourceTiming",
"ProgressEvent",
"PromiseRejectionEvent",
"Request",

View file

@ -11,9 +11,13 @@ test(function() {
assert_true(window.performance instanceof Performance, "Should be Performance");
assert_not_equals(window.performance.timing, undefined);
assert_true(window.performance.timing instanceof PerformanceTiming, "Should be PerformanceTiming");
assert_greater_than(window.performance.timing.navigationStart, 0);
var entries = window.performance.getEntries();
assert_not_equals(entries.length, 0);
assert_true(entries[0] instanceof PerformanceNavigationTiming);
// TODO(#21254) navigationTiming/startTime is not fully implemented yet, so this assertion will fail
assert_greater_than(entries[0].startTime, 0);
var last = window.performance.now();
assert_greater_than(last, 0);

View file

@ -1,18 +1,23 @@
<html>
<head>
<title>Performance toLevelDomComplete</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
</head>
<!doctype html>
<meta charset="utf-8">
<title>Performance topLevelDomComplete</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<body>
<script>
async_test(function(t) {
window.onload = t.step_func(function() {
assert_true(performance.timing.domLoading <= performance.timing.topLevelDomComplete);
assert_true(performance.timing.topLevelDomComplete <= performance.timing.domComplete);
t.done();
});
}, "performance.topLevelDomComplete");
async_test(function (t) {
window.onload = t.step_func(function (entryList, obs) {
var entries = window.performance.getEntries();
assert_greater_than(entries.length, 0);
var navigation = entries[0];
assert_true(navigation instanceof PerformanceNavigationTiming);
assert_true(navigation.domContentLoadedEventStart <= navigation.topLevelDomComplete);
assert_true(navigation.topLevelDomComplete <= navigation.domComplete);
t.done();
});
}, "top level dom complete");
</script>
</body>
</html>