WebKit test infrastructure should automate the process of cloning W3C test suite...
authoryouenn.fablet@crf.canon.fr <youenn.fablet@crf.canon.fr@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 13 Mar 2015 16:00:03 +0000 (16:00 +0000)
committeryouenn.fablet@crf.canon.fr <youenn.fablet@crf.canon.fr@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 13 Mar 2015 16:00:03 +0000 (16:00 +0000)
commit34c195300dc5e80a51861cc7d4322023f5706c62
tree05af193e608e2698d0d119027383d904c894f462
parent8d16cddb9aa18eb308bcad53ea7a529eba4a2876
WebKit test infrastructure should automate the process of cloning W3C test suite and importing tests from it
https://bugs.webkit.org/show_bug.cgi?id=134764

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

TestRepositories defines the git repositories used to import tests.
It defines for each repository the infrastructure paths to always import, the paths to skip and the revision to use.
ImportExpectartions defines the tests to import.

* resources/ImportExpectations: Added.
* resources/TestRepositories: Added.

Tools:

TestDownloader is introduced to download W3C tests from the official
W3C tests repositories (https://github.com/w3c/web-platform-tests.git
and https://github.com/w3c/csswg-test.git).
TestDownloader clones the repositories and checkouts revisions of the tests
defined in LayoutTests/imported/w3c/resources/TestRepositories.

Similarly to https://codereview.chromium.org/148173016,
TestDownloader copies part of the files based on the rules
defined in LayoutTests/imported/w3c/resources/ImportExpectations.

TestDownloader is used by TestImporter when no source directory is provided.

* Scripts/webkitpy/w3c/test_downloader.py: Added.
(TestDownloader):
(TestDownloader.default_options):
(TestDownloader.load_test_repositories):
(TestDownloader.__init__):
(TestDownloader.checkout_test_repository):
(TestDownloader._init_paths_from_expectations):
(TestDownloader._add_test_suite_paths):
(TestDownloader._empty_directory):
(TestDownloader.copy_tests):
(TestDownloader.download_tests):
* Scripts/webkitpy/w3c/test_importer.py:
(main):
(parse_args):
(TestImporter.__init__):
(TestImporter.do_import):
(TestImporter.test_downloader):
(TestImporter.find_importable_tests.should_keep_subdir):
(TestImporter.should_convert_test_harness_links):
(TestImporter.import_tests):
(TestImporter.write_import_log):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@181479 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/resources/ImportExpectations [new file with mode: 0644]
LayoutTests/imported/w3c/resources/TestRepositories [new file with mode: 0644]
Tools/ChangeLog
Tools/Scripts/webkitpy/w3c/test_downloader.py [new file with mode: 0644]
Tools/Scripts/webkitpy/w3c/test_importer.py