Skip to content
Test suites for Web platform specs — including WHATWG, W3C, and others
HTML JavaScript Python CSS Shell Perl
Branch: master
Clone or download
anforowicz and chromium-wpt-export-bot Applying CORB to `multipart/signed` MIME type.
Bug: 1042836
Change-Id: Iac94fb45d747101d393769a3cd2280dd7ef548e1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2005379
Commit-Queue: Łukasz Anforowicz <lukasza@chromium.org>
Reviewed-by: Charlie Reis <creis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#734285}
Latest commit d32e3b5 Jan 23, 2020
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github GitHub Actions: Work around #20700 (#20758) Dec 13, 2019
.well-known Origin policy: update CSP parsing to match the latest spec Jan 17, 2020
2dcontext Add a test for createImageBitmap inside a worker Jan 22, 2020
BackgroundSync [Background Sync] Update WPT tests. Nov 20, 2019
FileAPI [FileAPI] Opt-in to single-page test feature (#19925) Oct 26, 2019
IndexedDB Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
PeriodicBackgroundSync [Periodic Background Sync] Update unregister logic Dec 3, 2019
WebCryptoAPI WebCryptoAPI: Fix HKDF null length test (#21141) Jan 16, 2020
WebIDL WebIDL: [PutForwards] should not throw if [[Set]] has failed (#21039) Jan 15, 2020
accelerometer [sensor] Upstream sensor layout tests to wpt Sep 18, 2019
accname Update name_test_case_610-manual.html (#19807) Oct 24, 2019
acid Add a reference for Acid2 that should pixel-for-pixel match Mar 7, 2019
ambient-light [sensor] Upstream sensor layout tests to wpt Sep 18, 2019
animation-worklet [AnimationWorklet] De-flake stateful-animator tests Oct 29, 2019
annotation-model Consolidate .gitignore files under the root (#15952) Mar 25, 2019
annotation-protocol Consolidate .gitignore files under the root (#15952) Mar 25, 2019
annotation-vocab Remove annotation-vocab/tools/ruby-rdf/ and its samples (#20114) Nov 12, 2019
apng Add more spec links to META.yml (#12045) Jul 18, 2018
appmanifest Remove the idl_test test_name argument (always 'idl_test setup') (#12406 Aug 13, 2018
audio-output Convert some tests to use `idl_test` (#18677) Aug 27, 2019
background-fetch [Background Fetch] Add web platform tests for match. Mar 22, 2019
battery-status Rename battery-interface-idlharness.https.window.js to idlharness.htt… Nov 4, 2019
beacon Remove toddreifsteck as reviewer for beacon (#19416) Oct 9, 2019
bluetooth Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
clear-site-data Clear-Site-Data: clients uncontrolled by service workers after storag… Oct 7, 2019
client-hints Remove some lifetime references from the accept-ch-stickiness tests Jan 15, 2020
clipboard-apis Add html.idl to async-interfaces.https.html Jan 8, 2020
common [WPT/common/security-features] Support sub projects and split referre… Jan 22, 2020
compat css-deprecated-flexbox: fixes coordinates when flipped Jan 9, 2020
compression Mark decompression-corrupt-input.any.js tentative (#20427) Nov 28, 2019
conformance-checkers cc Update some RDFa rel doc-conformance tests Jan 9, 2020
console Convert compat+console+fullscreen+storage+url+xhr to idl_test (#12405) Aug 10, 2018
contacts [Contacts] Support querying contact icons. Nov 4, 2019
content-dpr CSS images to respect Content-DPR Dec 2, 2019
content-security-policy Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
cookie-store CookieStore: Fix Flaky WPT Test for getSubscriptions Jan 22, 2020
cookies Remove instances of 'whitelist' in cookies/ (#21322) Jan 22, 2020
core-aam Add new tests for Core-AAM: (#17742) Jul 9, 2019
cors Allow CORS preflights with a default of 5 seconds for expiry if Acces… Jan 14, 2020
credential-management `CredentialsContainer::IsSameOriginWithAncestors` should ignore `doma… Dec 5, 2019
css Move IsFixedBlockSizeIndefinite into AreSizeConstraintsEqual. Jan 22, 2020
custom-elements Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
device-memory Remove inactive reviewers (#14798) Mar 14, 2019
docs [docs] Update project definition Jan 21, 2020
document-policy Advertise DocumentPolicy & Network Err when receive incompatible policy Jan 10, 2020
dom Fix and refactor some "handleEvent" tests Jan 22, 2020
domparsing HtmlImportsRequestInitiatorLock: Check imports controller existence Dec 18, 2019
domxpath XPath: Do not accept whitespace characters other than #x20, #x9, #xD,… Dec 31, 2019
dpub-aam codespell: Fix typos in the doc Dec 9, 2019
dpub-aria codespell: Fix typos in the doc Dec 9, 2019
editing Make `HTMLEditor::DoInsertHTMLWithContext()` compute new insertion po… Oct 17, 2019
element-timing [LargestContentfulPaint] Add multiple redirect test Jan 20, 2020
encoding-detection Do not let X-Content-Type-Options: nosniff affect encoding detection,… Dec 17, 2019
encoding Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
encrypted-media Change EncryptionScheme to match latest spec Jan 15, 2020
entries-api webkitRelativePath preserves common ancestors (#13988) Nov 9, 2018
event-timing [EventTiming] Fix crossiframe test Dec 20, 2019
eventsource eventsource: ensure that some vars are strings in resources scripts Jan 14, 2020
feature-policy Fix allow/sandbox attribute timing issue on browser side Dec 6, 2019
fetch Applying CORB to `multipart/signed` MIME type. Jan 23, 2020
fonts Use locally-installed Ahem if available via ahem.css stylesheet. (#19370 Sep 27, 2019
forced-colors-mode Don't override background-images for atomic inlines in forced colors Jan 17, 2020
fullscreen Fix web-tests that failed with UAv2 same-origin visibility. Oct 28, 2019
gamepad Update gamepad/ reviewers list (#19178) Oct 7, 2019
generic-sensor Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
geolocation-API Rename nsGeo* files to match the WebIDL interfaces Nov 14, 2019
geolocation-sensor [sensor] Upstream sensor layout tests to wpt Sep 18, 2019
graphics-aam Add more spec links to META.yml (#12045) Jul 18, 2018
gyroscope [sensor] Upstream sensor layout tests to wpt Sep 18, 2019
hr-time Remove toddreifsteck as reviewer for hr-time (#19420) Oct 9, 2019
html-longdesc Fix most remaining "TRAILING WHITESPACE" lint errors (#19847) Oct 23, 2019
html-media-capture Support "capture" attribute in Gecko and expose in GV. Jul 31, 2019
html Fire "load" event at <style> when textContent changes Jan 22, 2020
idle-detection [mojo] Add testing support to BrowserInterfaceBrokerProxy Aug 20, 2019
imagebitmap-renderingcontext Fix imagebitmap-renderingcontext/context-preserves-canvas.html Jan 6, 2020
images Add a logo for wpt-pr-bot (#19863) Oct 24, 2019
import-maps [Import Maps] Migrate Jest-based parsing tests into JSON-based Jan 15, 2020
inert Add an extra test to check that inert propagates into Shadow DOM as w… Nov 20, 2019
infrastructure Relax expectations for fuzzy matches on Chrome on MacOS Jan 20, 2020
input-device-capabilities Convert Input Device Capabilities IDL test to use idl_test (#12576) Aug 27, 2018
input-events Convert manual test for input events to use testdriver (#19865) Nov 11, 2019
installedapp [InstalledApp] Move & update some of the web tests to wpt. Nov 13, 2019
interfaces Update interfaces/html.idl (#21201) Jan 16, 2020
intersection-observer [IntersectionObserver] Allow Document argument to constructor Jan 23, 2020
js Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
keyboard-lock Remove the idl_test test_name argument (always 'idl_test setup') (#12406 Aug 13, 2018
keyboard-map Remove the idl_test test_name argument (always 'idl_test setup') (#12406 Aug 13, 2018
kv-storage Expose kv-storage built-in module only on SecureContexts Aug 29, 2019
largest-contentful-paint [LargestContentfulPaint] Add multiple redirect test Jan 20, 2020
layout-instability [LayoutInstability] Fix failures in tests shifting in/out of viewport Jan 3, 2020
lifecycle Remove redundant checks in freezing/pausing context. Sep 17, 2019
loading LazyLoad: add tests for dynamically setting loading Dec 25, 2019
longtask-timing [Longtasks] Ship the buffered flag Dec 11, 2019
magnetometer [sensor] Upstream sensor layout tests to wpt Sep 18, 2019
mathml Add tests for baseline, stretchiness and spacing in unknown elements. ( Jan 20, 2020
measure-memory Implement performance.measureMemory with per-frame sizes Jan 20, 2020
media-capabilities Implement MediaCapabilities: spatialRendering decoding query Dec 3, 2019
media-playback-quality Create media-playback-quality/ directory and idlharness.js test (#18168) Jul 30, 2019
media-source part 1. Throw the right exception from MediaSource::SetDuration. Jan 22, 2020
media Test video resizing during playback (#19030) Nov 28, 2019
mediacapture-depth Convert some tests to use `idl_test` (#18677) Aug 27, 2019
mediacapture-fromelement Remove Chrome-specific dependency and modernize. Dec 18, 2018
mediacapture-image [mediacapture-image] Correct failure reporting (#20234) Nov 14, 2019
mediacapture-record Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
mediacapture-streams Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
mediasession Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
mimesniff Fetch: Content-Type parsing Nov 27, 2018
mixed-content [WPT/common/security-features] Generated files: Move per-project conf… Jan 15, 2020
mst-content-hint Enable the "Content hint" attribute of MediaStreamTrack Aug 16, 2018
native-file-system Add meta:timeout=long to FileSystemBaseHandle-postMessage.js tests Jan 21, 2020
navigation-timing Reland "Fix toJSON in WindowPerformance and PerformanceResourceTiming" Jan 15, 2020
netinfo Fix netinfo Web Platform Test Apr 3, 2019
network-error-logging Add signed exchange reporting error test cases Feb 22, 2019
notifications Remove inactive reviewers (#14798) Mar 14, 2019
offscreen-canvas Don't try to use blobs as CanvasImageSource for OffscreenCanvas tests Jan 7, 2020
old-tests Try less trailing newlines Aug 6, 2018
orientation-event Update Device Orientation Event spec link (#18946) Sep 10, 2019
orientation-sensor [sensor] Upstream sensor layout tests to wpt Sep 18, 2019
origin-policy Origin policy: update CSP parsing to match the latest spec Jan 17, 2020
page-visibility Remove toddreifsteck as reviewer for page-visibility (#19422) Oct 9, 2019
paint-timing Add buffered flag tests for ResourceTiming and PaintTiming Jul 18, 2019
payment-handler Reland "[Payments] Enable shipping and contact info delegation [4/5]" Sep 30, 2019
payment-method-basic-card Update payment-method-basic-card/billing-address-is-null-manual.https… Nov 18, 2019
payment-method-id Remove inactive reviewers (#14798) Mar 14, 2019
payment-request Correct typo in wpt file name Jan 22, 2020
performance-timeline Remove toddreifsteck as reviewer for perf timeline (#19423) Oct 9, 2019
permissions [Background Sync] Add WPT for periodic-background-sync permission. Dec 5, 2019
picture-in-picture [Picture-in-Picture] Remove shadow DOM support for pseudo class Apr 30, 2019
pointerevents Move the pointerevents extension tests to the main Nov 18, 2019
pointerlock Convert tabs to spaces in directories with few lint errors (#19824) Oct 22, 2019
portals Portals: Mark portals-focus.sub.html as long Jan 21, 2020
preload [preload] Opt-in to single-page test feature (#20031) Oct 31, 2019
presentation-api [Presentation API] Fix getAvailability tests. May 1, 2019
printing Ignore print calls for a detached document. Jul 3, 2019
priority-hints Add more suggested reviewers for Priority Hints Aug 7, 2018
proximity Modify ProximitySensor tests (#19214) Sep 27, 2019
push-api Rename idlharness tests for [SecureContext] APIs to .https. (#12353) Aug 8, 2018
quirks Don't let the "percentages-can-resolve-against-ancestor" quirk apply … Nov 23, 2019
referrer-policy [WPT/common/security-features] Support sub projects and split referre… Jan 22, 2020
remote-playback [remote-playback] Fixed 404 media source (#20883) Jan 7, 2020
reporting Adding toJSON to report and report_body Nov 11, 2019
requestidlecallback Convert some tests to use `idl_test` (#18677) Aug 27, 2019
resize-observer Update ResizeObserver tests on <img>. Jul 3, 2019
resource-timing Attempt to fix flaky timeout in resource_timing_buffer_full_eventually Jan 21, 2020
resources CL followup - run ESLint, throw from math helper Jan 17, 2020
screen-capture Require user gesture for getDisplayMedia(). Nov 20, 2019
screen-orientation [Screen Orientation] Fix: add requestFullscreen to onchange-event-sub… Nov 15, 2019
screen_enumeration Fugu: Move getScreens() onto the Window interface Dec 9, 2019
scroll-animations Schedule frame for scroll linked animations only when scrolling changes Jan 17, 2020
scroll-to-text-fragment Enable Scroll To Text by default (#19634) Jan 20, 2020
secure-contexts Rewrite secure-contexts/idlharness.any.js to use idl_test (#12386) Aug 9, 2018
selection Don't bail out when serializing a range starting at the end of an ele… Aug 20, 2019
serial [serial] Implement feature policy checks Feb 8, 2019
server-timing Reland "Fix toJSON in WindowPerformance and PerformanceResourceTiming" Jan 15, 2020
service-workers Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
shadow-dom part 2. Fix the innerHTML setter for shadow DOM cases in XML to suppl… Nov 21, 2019
shape-detection Rename traits and mojo directory in //skia/public Jul 30, 2019
signed-exchange Update SXG version in wpt/signed-exchange/README.md Sep 25, 2019
sms SMS Receiver: Test for detached iframe Dec 9, 2019
speech-api [speech-api] add more suggested reviewers (#20174) Jan 21, 2020
std-toast Enable persistent toasts by adding functionality for duration Infinity Jul 25, 2019
storage-access-api [storage-access-api] expand on META.yml (#20164) Nov 28, 2019
storage part 3. Stop incorrectly rejecting promises in storage manager. Sep 24, 2019
streams Fix the order of operations in pipeTo Dec 11, 2019
subresource-integrity Test for member name clashes in idlharness (#12231) Sep 26, 2019
svg-aam codespell: Fix typos in the doc Dec 9, 2019
svg Support non-zero paint offset for scroll bars Jan 22, 2020
timing-entrytypes-registry Remove toddreifsteck as reviewer for timing entrytypes (#19417) Oct 9, 2019
tools wptrunner: fix typo six.ensure_string -> six.ensure_str Jan 22, 2020
touch-events Rename "support" files Jul 15, 2019
trusted-types Remove instances of 'whitelist' from trusted-types/ (#21339) Jan 22, 2020
uievents Create a test object in wheel event tests Jan 14, 2020
upgrade-insecure-requests [WPT/common/security-features] Generated files: Move per-project conf… Jan 15, 2020
url Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
user-timing Remove toddreifsteck as reviewer for user-timing (#19419) Oct 9, 2019
vibration [vibration] use `assert_precondition` to avoid spurious pass Nov 8, 2019
visual-viewport update .ini path and viewport-no-resize-event-on-overflow-recalc.html… Nov 20, 2019
wai-aria codespell: Fix typos in the doc Dec 9, 2019
wake-lock wake lock: Expand IDL harness tests (#19826) Oct 22, 2019
wasm Bug 1507491 - WPTs for new WebAssembly.Table.prototype.grow. r=ms2ger Jan 22, 2020
web-animations Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
web-bundle Add a simple WPT test for Web Bundles Jan 6, 2020
web-locks [web-locks] Improve test determinism (#20244) Nov 14, 2019
web-nfc Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
web-share make share-image-manual tentative, uses files member (#18983) Oct 19, 2019
webaudio [Gecko Bug 1592781] use promise_test() to schedule TaskRunner Tasks (#… Dec 16, 2019
webauthn Implement WebAuthn basic test using testdriver API (#20162) Dec 4, 2019
webdriver [wdspec] Improve screenshot tests for checking the contents of frames. Jan 9, 2020
webgl Test for member name clashes in idlharness (#12231) Sep 26, 2019
webgpu Add WebGPU CTS to DEPS, and roll it using the new tools Jan 17, 2020
webmessaging Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
webmidi Rename idlharness.window.js to idlharness.https.window.js (#13634) Oct 20, 2018
webrtc-extensions webrtc: Implement and ship RTCRtpEncodingParameters.maxFramerate Jan 22, 2020
webrtc-identity Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
webrtc-quic Reland "Disallows reusing RTCIceTransport." May 3, 2019
webrtc-stats Make webrtc-stats idlharness.js test depend on webrtc (#14983) Jan 24, 2019
webrtc-svc Add API for controlling SVC encoding. Jul 29, 2019
webrtc Remove tests for datachannel priority. Jan 22, 2020
websockets [websockets] Correct references Nov 9, 2019
webstorage Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
webusb [usb] Allow device-scope control transfers when unconfigured Oct 2, 2019
webvr Restructure WebXR & WebVR Feature Policy tests May 13, 2019
webvtt Replace some "assert_throws(new FooError, stuff)" calls with assert_t… Jan 22, 2020
webxr Update xrSession_features_deviceSupport to use new user activations f… Jan 22, 2020
workers Remove error.message in SharedWorker WPT (#21287) Jan 22, 2020
worklets Worklet: Reject addModule() with script's error to rethrow if available Oct 8, 2019
x-frame-options Fix a race condition in WPT related to postMessage May 22, 2019
xhr XMLHttpRequest: remove meaningless import from server file Jan 3, 2020
xslt Make XSLT IDL source and idlharness.js test tentative (#17917) Jul 20, 2019
.azure-pipelines.yml Added support for Edge Stable channel (#21245) Jan 20, 2020
.codecov.yml Add codecov configutation. (#5623) Apr 24, 2017
.gitattributes Disable EOL conversion for all of WPT May 22, 2019
.gitignore Add submissions/ to .gitignore Apr 26, 2019
.mailmap Add Tess to .mailmap Feb 12, 2019
.pyup.yml Pin Sphinx to a release that works on Py2; add all requirements.txt t… Oct 26, 2019
.taskcluster.yml Allow triggering CI runs in servo Dec 9, 2019
CODEOWNERS Add /tools/third_party to CODEOWNERS Feb 5, 2019
CONTRIBUTING.md Name and link to the license from CONTRIBUTING.md (#20092) Nov 8, 2019
LICENSE.md Use the The 3-Clause BSD License from opensource.org (#11191) Apr 25, 2019
README.md [docs] Update project definition Jan 21, 2020
lint.whitelist [WebNFC] Rename push NDEFWriter method to write Jan 15, 2020
testharness_runner.html Add testharness_runner file here for now. Apr 17, 2015
update-built-tests.sh Correct a path in update-built-tests.sh. Oct 25, 2019
wpt Add a wpt command as a frontend to all cli interactions. Jul 26, 2017
wpt.py Replace call to execfile() by call to exec(compile()) Jan 14, 2020

README.md

The web-platform-tests Project

Taskcluster CI Status

The web-platform-tests Project is a cross-browser test suite for the Web-platform stack. Writing tests in a way that allows them to be run in all browsers gives browser projects confidence that they are shipping software that is compatible with other implementations, and that later implementations will be compatible with their implementations. This in turn gives Web authors/developers confidence that they can actually rely on the Web platform to deliver on the promise of working across browsers and devices without needing extra layers of abstraction to paper over the gaps left by specification editors and implementors.

The most important sources of information and activity are:

  • github.com/web-platform-tests/wpt: the canonical location of the project's source code revision history and the discussion forum for changes to the code
  • web-platform-tests.org: the documentation website; details how to set up the project, how to write tests, how to give and receive peer review, how to serve as an administrator, and more
  • wpt.live: a public deployment of the test suite, allowing anyone to run the tests by visiting from an Internet-enabled browser of their choice
  • wpt.fyi: an archive of test results collected from an array of web browsers on a regular basis
  • Real-time chat room: the IRC chat room named #testing on irc.w3.org; includes participants located around the world, but busiest during the European working day; all discussion is archived here
  • Mailing list: a public and low-traffic discussion list

If you'd like clarification about anything, don't hesitate to ask in the chat room or on the mailing list.

Setting Up the Repo

Clone or otherwise get https://github.com/web-platform-tests/wpt.

Note: because of the frequent creation and deletion of branches in this repo, it is recommended to "prune" stale branches when fetching updates, i.e. use git pull --prune (or git fetch -p && git merge).

Running the Tests

See the documentation website and in particular the system setup for running tests locally.

Command Line Tools

The wpt command provides a frontend to a variety of tools for working with and running web-platform-tests. Some of the most useful commands are:

  • wpt serve - For starting the wpt http server
  • wpt run - For running tests in a browser
  • wpt lint - For running the lint against all tests
  • wpt manifest - For updating or generating a MANIFEST.json test manifest
  • wpt install - For installing the latest release of a browser or webdriver server on the local machine.

Windows Notes

On Windows wpt commands must be prefixed with python or the path to the python binary (if python is not in your %PATH%).

python wpt [command]

Alternatively, you may also use Bash on Ubuntu on Windows in the Windows 10 Anniversary Update build, then access your windows partition from there to launch wpt commands.

Please make sure git and your text editor do not automatically convert line endings, as it will cause lint errors. For git, please set git config core.autocrlf false in your working tree.

Publication

The master branch is automatically synced to http://w3c-test.org/.

Pull requests are automatically mirrored except those that modify sensitive resources (such as .py). The latter require someone with merge access to comment with "LGTM" or "w3c-test:mirror" to indicate the pull request has been checked.

Branches

In the vast majority of cases the only upstream branch that you should need to care about is master. If you see other branches in the repository, you can generally safely ignore them.

Contributing

Save the Web, Write Some Tests!

Absolutely everyone is welcome to contribute to test development. No test is too small or too simple, especially if it corresponds to something for which you've noted an interoperability bug in a browser.

The way to contribute is just as usual:

  • Fork this repository (and make sure you're still relatively in sync with it if you forked a while ago).
  • Create a branch for your changes: git checkout -b topic.
  • Make your changes.
  • Run ./wpt lint as described above.
  • Commit locally and push that to your repo.
  • Create a pull request based on the above.

Issues with web-platform-tests

If you spot an issue with a test and are not comfortable providing a pull request per above to fix it, please file a new issue. Thank you!

You can’t perform that action at this time.