mirror of
https://github.com/servo/servo.git
synced 2025-08-15 02:15:33 +01:00
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:
parent
3fe83f1d06
commit
26007fddd3
103 changed files with 1881 additions and 322 deletions
|
@ -103,6 +103,8 @@ skip: true
|
|||
skip: false
|
||||
[referrer-policy]
|
||||
skip: false
|
||||
[resource-timing]
|
||||
skip: false
|
||||
[subresource-integrity]
|
||||
skip: false
|
||||
[touch-events]
|
||||
|
|
|
@ -7,3 +7,4 @@
|
|||
|
||||
[Microtasks evaluate afterward when the stack is not empty using createElement()]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -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]
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
[window-worker-timeOrigin.window.html]
|
||||
type: testharness
|
||||
[timeOrigin and now() should be correctly ordered between window and worker]
|
||||
expected: FAIL
|
||||
|
|
@ -292,7 +292,3 @@
|
|||
[<meta>: "1\\furl=foo"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
||||
[parsing.html?131-last]
|
||||
|
||||
[parsing.html?81-90]
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
[dom_interactive_image_document.html]
|
||||
expected: ERROR
|
||||
[Test domInteractive on image document]
|
||||
expected: NOTRUN
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
[dom_interactive_media_document.html]
|
||||
expected: ERROR
|
||||
[Test domInteractive on media document]
|
||||
expected: NOTRUN
|
||||
|
|
@ -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
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
[nav2_test_attributes_exist.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[Performance navigation timing entries are observable.]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
[nav2_test_navigation_type_navigate.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[Navigation type to be navigate.]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
[nav2_test_redirect_none.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[Naivation without redirects.]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
[po-navigation.html]
|
||||
expected: TIMEOUT
|
||||
[navigation entry is observable]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -9,9 +9,6 @@
|
|||
|
||||
[case-sensitivity.any.html]
|
||||
type: testharness
|
||||
[getEntriesByType values are case sensitive]
|
||||
expected: FAIL
|
||||
|
||||
[getEntriesByName values are case sensitive]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -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
|
||||
|
243
tests/wpt/metadata/resource-timing/idlharness.any.js.ini
Normal file
243
tests/wpt/metadata/resource-timing/idlharness.any.js.ini
Normal 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
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
[resource-timing-tojson.html]
|
||||
[Untitled]
|
||||
expected: FAIL
|
||||
|
||||
[Test toJSON() in PerformanceResourceTiming]
|
||||
expected: FAIL
|
||||
|
55
tests/wpt/metadata/resource-timing/resource-timing.html.ini
Normal file
55
tests/wpt/metadata/resource-timing/resource-timing.html.ini
Normal 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
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
[resource_TAO_cross_origin_redirect_chain.html]
|
||||
expected: ERROR
|
||||
[There should be one entry.]
|
||||
expected: FAIL
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
28
tests/wpt/metadata/resource-timing/resource_TAO_zero.htm.ini
Normal file
28
tests/wpt/metadata/resource-timing/resource_TAO_zero.htm.ini
Normal 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
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[resource_cached.htm]
|
||||
[There should be two entries]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[resource_connection_reuse.html]
|
||||
[There should be 2 PerformanceEntries]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[resource_dedicated_worker.html]
|
||||
[There should be six entries: 4 scripts, 1 stylesheet, and the worker itself]
|
||||
expected: FAIL
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[resource_ignore_data_url.html]
|
||||
[entries.length == 0]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[resource_ignore_failures.html]
|
||||
[entries.length == 0]
|
||||
expected: FAIL
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[resource_timing.worker.html]
|
||||
[Performance Resouce Entries in workers]
|
||||
expected: FAIL
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
[resource_timing_buffer_full_eventually.html]
|
||||
expected: TIMEOUT
|
||||
[Finite resource timing entries buffer size]
|
||||
expected: TIMEOUT
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
[resource_timing_cross_origin_redirect_chain.html]
|
||||
expected: ERROR
|
||||
[There should be one entry.]
|
||||
expected: FAIL
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
[single-entry-per-resource.html]
|
||||
[One resource when reusing data]
|
||||
expected: FAIL
|
||||
|
||||
[Only one resource entry per resource]
|
||||
expected: FAIL
|
||||
|
|
@ -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
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[import-in-moduleworker.html]
|
||||
[Base URL in module dedicated workers: import]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[sharedworker-in-worker.html]
|
||||
[Base URL in workers: new SharedWorker()]
|
||||
expected: FAIL
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
[005.html]
|
||||
type: testharness
|
||||
[dedicated worker in shared worker in dedicated worker]
|
||||
expected: FAIL
|
||||
|
|
@ -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
|
||||
|
||||
|
|
|
@ -5,7 +5,3 @@
|
|||
[sync-no-timeout]
|
||||
expected: FAIL
|
||||
|
||||
|
||||
[sync-no-timeout.any.worker.html]
|
||||
|
||||
[sync-no-timeout.any.html]
|
||||
|
|
|
@ -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": [
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[window_performance.html]
|
||||
[window_performance]
|
||||
expected: FAIL
|
||||
|
|
@ -181,10 +181,11 @@ test_interfaces([
|
|||
"PerformanceEntry",
|
||||
"PerformanceMark",
|
||||
"PerformanceMeasure",
|
||||
"PerformanceNavigationTiming",
|
||||
"PerformanceObserver",
|
||||
"PerformanceObserverEntryList",
|
||||
"PerformancePaintTiming",
|
||||
"PerformanceTiming",
|
||||
"PerformanceResourceTiming",
|
||||
"Plugin",
|
||||
"PluginArray",
|
||||
"PopStateEvent",
|
||||
|
|
|
@ -39,6 +39,7 @@ test_interfaces([
|
|||
"PerformanceObserver",
|
||||
"PerformanceObserverEntryList",
|
||||
"PerformancePaintTiming",
|
||||
"PerformanceResourceTiming",
|
||||
"ProgressEvent",
|
||||
"PromiseRejectionEvent",
|
||||
"Request",
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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>
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue