OLD | NEW |
(Empty) | |
| 1 W3C Web Platform Tests in Blink Layout Tests |
| 2 |
| 3 Design Doc: https://goo.gl/iXUaZd |
| 4 |
| 5 This directory contains checked out and reduced code from web-platform-tests |
| 6 (https://github.com/w3c/web-platform-tests/) required to run WPT tests as part |
| 7 of Blink's test infrastructure and some maintenance/configuration code. |
| 8 |
| 9 The third party code lives entirely in the wpt subdirectory: |
| 10 Tools/Scripts/webkitpy/thirdparty/wpt/wpt |
| 11 |
| 12 Besides the reduced web-platform-tests repository, the wpt subdirectory also |
| 13 contains wpt/tools submodule (https://github.com/w3c/wpt-tools) and |
| 14 wpt/tools/wptserve (https://github.com/w3c/wptserve) directories. |
| 15 |
| 16 For licensing, see README.chromium in parent directory |
| 17 (Tools/Scripts/webkitpy/thirdparty/README.chromium). |
| 18 |
| 19 ** |
| 20 |
| 21 Files in this directory (non third-party) |
| 22 |
| 23 README.chromium |
| 24 =============== |
| 25 This file. |
| 26 |
| 27 wpt.config.json |
| 28 =============== |
| 29 The configuration file used when running WPTServe. Note that this file loads |
| 30 after wpt/config.default.json and this configuration gets merged onto it. When |
| 31 changing the ports (HTTP/S, WS/S), make sure to update the python code too. |
| 32 |
| 33 checkout.sh |
| 34 =========== |
| 35 Running this script without arguments will remove the existing checkout |
| 36 (thirdparty/wpt/wpt) and perform a fresh one. See "Rolling in WPT" for more. |
| 37 |
| 38 WPTHeads |
| 39 ======== |
| 40 List of git commit-ish for the WPT repositories. File format is as follows: |
| 41 First line: HEAD position for web-platform-tests. |
| 42 Rest of lines: parent directory, submodule name, HEAD position for submodule. |
| 43 The submodule checkout is performed in order when running ./checkout.sh. |
| 44 |
| 45 WPTWhiteList |
| 46 ============ |
| 47 The explicit list of files being kept, everything else not on this list is |
| 48 deleted when running "./checkout.sh reduce". Use this file to control what gets |
| 49 checked in and try to keep the list as small as possible (use what you need). |
| 50 |
| 51 ** |
| 52 |
| 53 Rolling in WPT |
| 54 |
| 55 When rolling in new versions of WPT support, use WPTHeads to adjust the HEAD |
| 56 positions. You can then call "./checkout.sh clone" which will pull in all the |
| 57 code and required submodules. |
| 58 |
| 59 You can check in the latest code by setting the HEAD commit-ish to "master" on |
| 60 each line, afterwards make sure to use the actual SHA1s to lock down the HEAD |
| 61 positions. It is also important to update the hashes in the 'Version:' fields of |
| 62 Tools/Scripts/webkitpy/thirdparty/README.chromium. |
| 63 |
| 64 You can examine what's pulled in and update WPTWhiteList if some new files are |
| 65 required to run the updated version. |
| 66 |
| 67 Once you've cloned the repositories you can call "./checkout.sh reduce" to |
| 68 remove everything that is not listed in WPTWhiteList. |
| 69 |
| 70 Note that calling "./checkout.sh" without arguments is equivalent of calling |
| 71 "./checkout.sh clone reduce". |
| 72 |
| 73 ** |
| 74 |
| 75 Configuration |
| 76 |
| 77 Read instructions in WPT README: |
| 78 https://github.com/w3c/web-platform-tests/blob/master/README.md |
| 79 |
| 80 Also, check out the WPTServe Documentation |
| 81 (https://wptserve.readthedocs.org/en/latest/). |
| 82 |
| 83 For setting up SSL, refer to Tools/Scripts/webkitpy/thirdparty/wpt/wpt/_certs |
| 84 (which gets generated on the first run). |
| 85 |
| 86 Note that editing /etc/hosts is not required for run-webkit-tests since |
| 87 content_shell is invoked with flags to map all *.test domains to 127.0.0.1. |
| 88 |
| 89 ** |
| 90 |
| 91 Running web-platform-tests with enabled WPTServe on a local machine |
| 92 |
| 93 Starting run-webkit-tests with the --enable-wptserve flag will start WPTServe |
| 94 for tests which live in LayoutTests/imported/web-platform-tests. |
| 95 |
| 96 WPTServe starts HTTP/S and WS/S servers as separate processes. |
| 97 |
| 98 The content_shell used to run the tests will receive the URL of each test |
| 99 (instead of a filename). The document root http://web-platform.test/ maps to |
| 100 LayoutTests/imported/web-platform-tests. HTTPS tests are enabled by default. |
| 101 |
| 102 Example run: |
| 103 |
| 104 ./Tools/Scripts/run-webkit-tests \ |
| 105 --debug \ |
| 106 --enable-wptserve \ |
| 107 --no-new-test-results \ |
| 108 imported/web-platform-tests |
OLD | NEW |