Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions build/wpt_test.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -198,6 +198,11 @@ def is_test_file(file):
# into the main directory, and would need to manually be marked as skipAllTests
return False

if ".tentative." in file.path:
# Tentative tests are for proposed features that are not yet standardized.
# We skip these to avoid noise from unstable specifications.
return False

# Probably an actual test
return True

Expand Down
46 changes: 0 additions & 46 deletions src/wpt/compression-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,53 +5,7 @@
import { type TestRunnerConfig } from 'harness/harness';

export default {
'compression-bad-chunks.tentative.any.js': {
comment:
'V8 assertion - Cannot construct ArrayBuffer with a BackingStore of SharedArrayBuffer',
disabledTests: true,
},
'compression-constructor-error.tentative.any.js': {},
'compression-including-empty-chunk.tentative.any.js': {},
'compression-large-flush-output.any.js': {},
'compression-multiple-chunks.tentative.any.js': {},
'compression-output-length.tentative.any.js': {
comment:
'These tests require the sidecar which is not enabled for compression-test',
disabledTests: [
'the length of deflated (with -raw) data should be shorter than that of the original data',
'the length of deflated data should be shorter than that of the original data',
'the length of gzipped data should be shorter than that of the original data',
],
},
'compression-stream.tentative.any.js': {
comment:
'These tests require the sidecar which is not enabled for compression-test',
disabledTests: [
'deflated small amount data should be reinflated back to its origin',
'deflated large amount data should be reinflated back to its origin',
'gzipped small amount data should be reinflated back to its origin',
'gzipped large amount data should be reinflated back to its origin',
],
},
'compression-with-detach.tentative.window.js': {},
'decompression-bad-chunks.tentative.any.js': {
comment:
'V8 assertion - Cannot construct ArrayBuffer with a BackingStore of SharedArrayBuffer',
disabledTests: true,
},
'decompression-buffersource.tentative.any.js': {},
'decompression-constructor-error.tentative.any.js': {},
'decompression-correct-input.tentative.any.js': {},
'decompression-corrupt-input.tentative.any.js': {},
'decompression-empty-input.tentative.any.js': {},
'decompression-split-chunk.tentative.any.js': {},
'decompression-uint8array-output.tentative.any.js': {},
'decompression-with-detach.tentative.window.js': {
comment: 'Cannot redefine property: then',
expectedFailures: [
'data should be correctly decompressed even if input is detached partway',
],
},
'idlharness.https.any.js': {
comment:
'Workers expose globals differently than browsers - these interface tests fail',
Expand Down
4 changes: 2 additions & 2 deletions src/wpt/dom/events-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ export default {
],
},
'Event-constructors.any.js': {
comment: 'TODO this is triggering a harness bug',
disabledTests: true,
comment: 'We force timeStamp to 0.0 to avoid timing side-channels',
expectedFailures: [/^$/],
},
'Event-dispatch-listener-order.window.js': {
comment: 'Test requires DOM',
Expand Down
138 changes: 131 additions & 7 deletions src/wpt/fetch/api-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -155,10 +155,6 @@ export default {
'Fetch with GET and mode "cors" does not need an Origin header',
],
},
'basic/request-private-network-headers.tentative.any.js': {
comment: 'We do not have forbidden headers',
omittedTests: true,
},
'basic/request-referrer.any.js': {
comment: 'Referrer is not implemented',
omittedTests: true,
Expand Down Expand Up @@ -409,8 +405,137 @@ export default {
'headers/headers-structure.any.js': {},

'idlharness.any.js': {
comment: 'Implement IDL support in harness',
disabledTests: true,
comment: 'TODO: Investigate this',
expectedFailures: [
'Headers interface: existence and properties of interface object',
'Headers interface object length',
'Headers interface object name',
'Headers interface: existence and properties of interface prototype object',
'Headers interface: existence and properties of interface prototype object\'s "constructor" property',
"Headers interface: existence and properties of interface prototype object's @@unscopables property",
'Headers interface: operation append(ByteString, ByteString)',
'Headers interface: operation delete(ByteString)',
'Headers interface: operation get(ByteString)',
'Headers interface: operation getSetCookie()',
'Headers interface: operation has(ByteString)',
'Headers interface: operation set(ByteString, ByteString)',
'Headers interface: iterable<ByteString, ByteString>',
'Headers must be primary interface of new Headers()',
'Stringification of new Headers()',
'Headers interface: new Headers() must inherit property "append(ByteString, ByteString)" with the proper type',
'Headers interface: calling append(ByteString, ByteString) on new Headers() with too few arguments must throw TypeError',
'Headers interface: new Headers() must inherit property "delete(ByteString)" with the proper type',
'Headers interface: calling delete(ByteString) on new Headers() with too few arguments must throw TypeError',
'Headers interface: new Headers() must inherit property "get(ByteString)" with the proper type',
'Headers interface: calling get(ByteString) on new Headers() with too few arguments must throw TypeError',
'Headers interface: new Headers() must inherit property "getSetCookie()" with the proper type',
'Headers interface: new Headers() must inherit property "has(ByteString)" with the proper type',
'Headers interface: calling has(ByteString) on new Headers() with too few arguments must throw TypeError',
'Headers interface: new Headers() must inherit property "set(ByteString, ByteString)" with the proper type',
'Headers interface: calling set(ByteString, ByteString) on new Headers() with too few arguments must throw TypeError',
'Request interface: existence and properties of interface object',
'Request interface object length',
'Request interface object name',
'Request interface: existence and properties of interface prototype object',
'Request interface: attribute method',
'Request interface: attribute url',
'Request interface: attribute headers',
'Request interface: attribute destination',
'Request interface: attribute referrer',
'Request interface: attribute referrerPolicy',
'Request interface: attribute mode',
'Request interface: attribute credentials',
'Request interface: attribute cache',
'Request interface: attribute redirect',
'Request interface: attribute integrity',
'Request interface: attribute keepalive',
'Request interface: attribute isReloadNavigation',
'Request interface: attribute isHistoryNavigation',
'Request interface: attribute signal',
'Request interface: attribute duplex',
'Request interface: operation clone()',
'Request interface: attribute body',
'Request interface: attribute bodyUsed',
'Request interface: operation arrayBuffer()',
'Request interface: operation blob()',
'Request interface: operation bytes()',
'Request interface: operation formData()',
'Request interface: operation json()',
'Request interface: operation text()',
"Request must be primary interface of new Request('about:blank')",
"Stringification of new Request('about:blank')",
'Request interface: new Request(\'about:blank\') must inherit property "method" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "url" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "headers" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "destination" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "referrer" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "referrerPolicy" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "mode" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "credentials" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "cache" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "redirect" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "integrity" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "keepalive" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "isReloadNavigation" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "isHistoryNavigation" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "signal" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "duplex" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "clone()" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "body" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "bodyUsed" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "arrayBuffer()" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "blob()" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "bytes()" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "formData()" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "json()" with the proper type',
'Request interface: new Request(\'about:blank\') must inherit property "text()" with the proper type',
'Response interface: existence and properties of interface object',
'Response interface object name',
'Response interface: existence and properties of interface prototype object',
'Response interface: operation error()',
'Response interface: operation redirect(USVString, optional unsigned short)',
'Response interface: operation json(any, optional ResponseInit)',
'Response interface: attribute type',
'Response interface: attribute url',
'Response interface: attribute redirected',
'Response interface: attribute status',
'Response interface: attribute ok',
'Response interface: attribute statusText',
'Response interface: attribute headers',
'Response interface: operation clone()',
'Response interface: attribute body',
'Response interface: attribute bodyUsed',
'Response interface: operation arrayBuffer()',
'Response interface: operation blob()',
'Response interface: operation bytes()',
'Response interface: operation formData()',
'Response interface: operation json()',
'Response interface: operation text()',
'Response must be primary interface of new Response()',
'Stringification of new Response()',
'Response interface: new Response() must inherit property "error()" with the proper type',
'Response interface: new Response() must inherit property "redirect(USVString, optional unsigned short)" with the proper type',
'Response interface: calling redirect(USVString, optional unsigned short) on new Response() with too few arguments must throw TypeError',
'Response interface: new Response() must inherit property "json(any, optional ResponseInit)" with the proper type',
'Response interface: calling json(any, optional ResponseInit) on new Response() with too few arguments must throw TypeError',
'Response interface: new Response() must inherit property "type" with the proper type',
'Response interface: new Response() must inherit property "url" with the proper type',
'Response interface: new Response() must inherit property "redirected" with the proper type',
'Response interface: new Response() must inherit property "status" with the proper type',
'Response interface: new Response() must inherit property "ok" with the proper type',
'Response interface: new Response() must inherit property "statusText" with the proper type',
'Response interface: new Response() must inherit property "headers" with the proper type',
'Response interface: new Response() must inherit property "clone()" with the proper type',
'Response interface: new Response() must inherit property "body" with the proper type',
'Response interface: new Response() must inherit property "bodyUsed" with the proper type',
'Response interface: new Response() must inherit property "arrayBuffer()" with the proper type',
'Response interface: new Response() must inherit property "blob()" with the proper type',
'Response interface: new Response() must inherit property "bytes()" with the proper type',
'Response interface: new Response() must inherit property "formData()" with the proper type',
'Response interface: new Response() must inherit property "json()" with the proper type',
'Response interface: new Response() must inherit property "text()" with the proper type',
'Window interface: operation fetch(RequestInfo, optional RequestInit)',
],
},

'policies/csp-blocked.js': {
Expand Down Expand Up @@ -459,7 +584,6 @@ export default {
comment: 'Keepalive is not implemented',
disabledTests: true,
},
'redirect/redirect-location-escape.tentative.any.js': {},
'redirect/redirect-location.any.js': {
comment:
'Status is expected to be 0 in a browser to avoid leaking info. We do not implement CORS',
Expand Down
43 changes: 0 additions & 43 deletions src/wpt/fs-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -100,11 +100,6 @@ export default {
comment: 'We do not yet implement sync access handles',
disabledTests: ['Attempt to create a sync access handle.'],
},
'FileSystemFileHandle-cross-primitive-locking.https.tentative.worker.js': {
comment:
'The importScripts utility is not implemented in our test hardness',
disabledTests: true,
},
'FileSystemFileHandle-getFile.https.any.js': {
comment: '...',
expectedFailures: [
Expand Down Expand Up @@ -145,44 +140,6 @@ export default {
'FileSystemFileHandles are references, not paths',
],
},
'FileSystemFileHandle-sync-access-handle-back-forward-cache.https.tentative.window.js':
{
comment: 'We currently do not implement sync access handles',
disabledTests: true,
},
'FileSystemFileHandle-sync-access-handle-lock-modes.https.tentative.worker.js':
{
comment: 'We currently do not implement sync access handles',
disabledTests: true,
},
'FileSystemFileHandle-writable-file-stream-back-forward-cache.https.tentative.window.js':
{
comment:
'The test harness requires a method getCodeAtPath that is not currently implemented in our test harness.',
disabledTests: true,
},
'FileSystemFileHandle-writable-file-stream-lock-modes.https.tentative.worker.js':
{
comment: 'We currently do not implement lock modes',
disabledTests: true,
},
'FileSystemObserver-sync-access-handle.https.tentative.worker.js': {
comment:
'We currently do not implement sync access handles or FileSystemObserver',
disabledTests: true,
},
'FileSystemObserver-unsupported-global.https.tentative.any.js': {
comment: 'We do not implement FileSystemObserver',
disabledTests: true,
},
'FileSystemObserver-writable-file-stream.https.tentative.any.js': {
comment: 'We do not implement FileSystemObserver',
disabledTests: true,
},
'FileSystemObserver.https.tentative.any.js': {
comment: 'FileSystemObserver is not implemented in workers',
disabledTests: true,
},
'FileSystemSyncAccessHandle-close.https.worker.js': {
comment: 'We currently do not implement sync access handles',
disabledTests: true,
Expand Down
69 changes: 0 additions & 69 deletions src/wpt/performance-timeline-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,6 @@ export default {
'PerformanceObserver with buffered flag should see past and future entries.',
],
},
'buffered-flag-with-entryTypes-observer.tentative.any.js': {
comment: 'This is a tentative test',
omittedTests: true,
},
'case-sensitivity.any.js': {
comment: 'This is not yet implemented',
disabledTests: [
Expand Down Expand Up @@ -92,71 +88,6 @@ export default {
comment: 'This is not yet implemented',
omittedTests: ['aborting a parser should block bfcache.'],
},
'not-restored-reasons/performance-navigation-timing-attributes.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-bfcache-reasons-stay.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-bfcache.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-cross-origin-bfcache.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-fetch.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-iframes-without-attributes.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-lock.https.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-navigation-failure.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-not-bfcached.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-redirect-on-history.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-reload.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-same-origin-bfcache.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/performance-navigation-timing-same-origin-replace.tentative.window.js':
{
comment: 'This is a tentative test',
omittedTests: true,
},
'not-restored-reasons/test-helper.js': {
comment:
'Test file /html/browsers/browsing-the-web/back-forward-cache/resources/rc-helper.js not found. Update wpt_test.bzl to handle this case.',
Expand Down
6 changes: 0 additions & 6 deletions src/wpt/streams-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -868,12 +868,6 @@ export default {
'terminate() should abort writable immediately after readable.cancel()',
],
},
'transform-streams/invalid-realm.tentative.window.js': {
comment: 'document is not defined',
expectedFailures: [
'TransformStream: write in detached realm should succeed',
],
},
'transform-streams/lipfuzz.any.js': {},
'transform-streams/patched-global.any.js': {
runInGlobalScope: true,
Expand Down
Loading