8 | | * A tool to automatically check conformance of WebKit against W3C test suites |
9 | | * See https://bugs.webkit.org/show_bug.cgi?id=134766 |
10 | | * A tool to help import or reimport W3C tests |
11 | | * See https://bugs.webkit.org/show_bug.cgi?id=134767 |
| 7 | 1. Update LayoutTests/imported/w3c/resources/ImportExpectations to activate the import of selected tests |
| 8 | 2. Run "Tools/Scripts/import-w3c-tests" as is, or "Tools/Scripts/import-w3c-tests -t web-platform-tests/XXselected-testsXX" to have a faster import |
| 9 | 3. Run rwt to generate the new expectations on LayoutTests/imported/w3c/web-platform-tests/XXselected-testsXX |
| 10 | 4. Update if needed the list of imported files that should be marked as [ Skip ] in LayoutTests/TestExpectations |
| 11 | * Tools/Scripts/import-w3c-tests will display in the console this to-be-skipped list of files |
15 | | To be written once tools ship in WebKit trunk |
| 20 | Manual edits of tests are highly discouraged |
| 21 | * It might be hard to keep those edits when rebasing the tests |
| 22 | * If required, document these clearly in the imported tests themselves |
| 23 | * Upstream those changes to the original test repository if possible |
| 24 | |
| 25 | = Rebasing tests = |
| 26 | |
| 27 | The process consists in updating the revision and reimporting all tests. |
| 28 | It is not yet automated. A preliminary patch is available at https://bugs.webkit.org/show_bug.cgi?id=134767 |
| 29 | |
| 30 | 1. Check whether WebKit testharness.js is up-to-date with the latest one used in the W3C repository |
| 31 | * If not update WebKit testharness.js accordingly |
| 32 | 2. Update the repository revision in LayoutTests/imported/w3c/resources/TestRepositories |
| 33 | 3. Delete all html|xhtml|xhtm|js|svg files in the corresponding LayoutTests/imported/w3C sub-folder |
| 34 | 4. Run Tools/Scripts/import-w3c-tests |
| 35 | 5. Check for any manual edit that should be kept |
| 36 | 6. Regenerate expected files using rwt |
| 37 | 7. Remove all dangling expected.txt files and empty folders |
| 38 | * Some bots have difficulties with removed/added empty files. |
| 39 | |
| 40 | = Laundry list = |
| 41 | |
| 42 | * Handle WPT test repository recursive submodules |
| 43 | * Automated generation of LayoutTests/imported/w3c/resources/web-platform-tests-modules.json |
| 44 | * Generate WPT MANIFEST.json and use it to know whether a file is a test or a resource file |
| 45 | * Check whether a WPT resource file is already skipped in LayoutTests/TestExpectations |
| 46 | * Finalise rebasing test script |
| 47 | * Update import script to handle non-W3C test repositories |
| 48 | * Blink tests |
| 49 | * WHATWG streams test suite |
| 50 | * Move already imported test suites to LayoutTests/imported/w3c/web-platform-tests |
| 51 | * LayoutTests/imported/w3c/canvas, LayoutTests/imported/w3c/html-templates, LayoutTests/imported/w3c/indexeddb |
| 52 | * LayoutTests/imported/blink/imported/csswg-test/css-writing-modes-3, LayoutTests/imported/blink/imported/web-platform-tests |