feat(manifest): Add initial tooling for Test262 test types [pt 1/5] #56840
Community-TC Integration / tools/ unittests (Python 3.8)
succeeded
Dec 19, 2025 in 23m 13s
Community-TC (pull_request)
Unit tests for tools running under Python 3.8, excluding wptrunner
Details
View task in Taskcluster | View logs in Taskcluster | View task group in Taskcluster
Task Status
Started: 2025-12-19T18:08:59.845Z
Resolved: 2025-12-19T18:31:56.861Z
Task Execution Time: 22 minutes, 57 seconds, 16 milliseconds
Task Status: completed
Reason Resolved: completed
RunId: 0
Artifacts
- public/logs/live_backing.log
- public/logs/live.log
[taskcluster 2025-12-19 18:08:59.910Z] Task ID: HnDvJiTTRkilxZMEvGxFvg
[taskcluster 2025-12-19 18:08:59.910Z] Worker ID: 1274013368959119257
[taskcluster 2025-12-19 18:08:59.910Z] Worker Group: us-central1-f
[taskcluster 2025-12-19 18:08:59.910Z] Worker Node Type: projects/757942385826/machineTypes/n2-standard-4
[taskcluster 2025-12-19 18:08:59.910Z] Worker Pool: proj-wpt/ci
[taskcluster 2025-12-19 18:08:59.910Z] Worker Version: 46.1.0
[taskcluster 2025-12-19 18:08:59.910Z] Public IP: 136.116.157.63
[taskcluster 2025-12-19 18:08:59.910Z] Hostname: proj-wpt-ci-gz0iiw7rswyp2tgf8d4tdw
[taskcluster 2025-12-19 18:09:00.987Z] === Task Starting ===
+ '[' '' ']'
+ '[' -d /etc/profile.d ']'
+ for i in /etc/profile.d/*.sh
+ '[' -r /etc/profile.d/01-locale-fix.sh ']'
+ . /etc/profile.d/01-locale-fix.sh
+++ /usr/bin/locale-check C.UTF-8
++ eval
+ for i in /etc/profile.d/*.sh
+ '[' -r /etc/profile.d/apps-bin-path.sh ']'
+ . /etc/profile.d/apps-bin-path.sh
...(314 lines hidden)...
ci/tc/decision.py 250 62 121 5 77%
ci/tc/download.py 71 71 26 0 0%
ci/tc/github_checks_output.py 13 5 2 1 60%
ci/tc/sink_task.py 39 39 14 0 0%
ci/tc/taskgraph.py 124 9 70 9 91%
ci/update_built.py 37 37 14 0 0%
ci/update_codeowners.py 59 59 21 0 0%
conftest.py 12 0 2 0 100%
docker/__init__.py 0 0 0 0 100%
docker/frontend.py 88 88 36 0 0%
docker/retry.py 39 39 10 0 0%
gitignore/__init__.py 0 0 0 0 100%
gitignore/gitignore.py 188 188 120 0 0%
lint/__init__.py 1 0 0 0 100%
lint/fnmatch.py 21 2 10 2 81%
lint/lint.py 669 101 415 23 84%
lint/rules.py 311 5 0 0 98%
localpaths.py 35 1 2 1 95%
manifest/XMLParser.py 91 2 14 1 97%
manifest/__init__.py 1 0 0 0 100%
manifest/download.py 138 111 50 0 14%
manifest/item.py 255 21 48 10 88%
manifest/jsonlib.py 44 21 14 5 48%
manifest/log.py 6 1 0 0 83%
manifest/manifest.py 226 83 100 13 60%
manifest/mputil.py 7 1 2 1 78%
manifest/sourcefile.py 653 57 317 42 88%
manifest/spec.py 43 43 6 0 0%
manifest/test262.py 49 2 28 3 94%
manifest/testpaths.py 56 56 18 0 0%
manifest/typedata.py 194 38 86 13 79%
manifest/update.py 52 35 12 1 28%
manifest/utils.py 54 13 16 5 69%
manifest/vcs.py 208 164 72 1 16%
metadata/__init__.py 0 0 0 0 100%
metadata/meta/__init__.py 0 0 0 0 100%
metadata/meta/schema.py 13 0 4 0 100%
metadata/schema.py 52 52 22 0 0%
metadata/webfeatures/__init__.py 0 0 0 0 100%
metadata/webfeatures/schema.py 51 51 20 0 0%
metadata/yaml/__init__.py 0 0 0 0 100%
metadata/yaml/load.py 18 0 4 0 100%
serve/__init__.py 1 0 0 0 100%
serve/serve.py 659 189 196 39 68%
serve/test_functional.py 47 2 2 1 94%
serve/test_serve.py 67 4 0 0 94%
serve/wave.py 78 78 22 0 0%
wave/__init__.py 0 0 0 0 100%
wave/configuration_loader.py 40 40 8 0 0%
wave/data/__init__.py 0 0 0 0 100%
wave/data/client.py 5 5 0 0 0%
wave/data/device.py 6 6 0 0 0%
wave/data/event_listener.py 7 7 0 0 0%
wave/data/exceptions/__init__.py 0 0 0 0 100%
wave/data/exceptions/duplicate_exception.py 2 2 0 0 0%
wave/data/exceptions/invalid_data_exception.py 2 2 0 0 0%
wave/data/exceptions/not_found_exception.py 2 2 0 0 0%
wave/data/exceptions/permission_denied_exception.py 2 2 0 0 0%
wave/data/http_polling_client.py 8 8 0 0 0%
wave/data/http_polling_event_listener.py 9 9 0 0 0%
wave/data/session.py 50 50 20 0 0%
wave/network/__init__.py 0 0 0 0 100%
wave/network/api/__init__.py 0 0 0 0 100%
wave/network/api/api_handler.py 74 74 22 0 0%
wave/network/api/devices_api_handler.py 155 155 54 0 0%
wave/network/api/general_api_handler.py 45 45 18 0 0%
wave/network/api/results_api_handler.py 186 186 48 0 0%
wave/network/api/sessions_api_handler.py 328 328 128 0 0%
wave/network/api/tests_api_handler.py 191 191 68 0 0%
wave/network/http_handler.py 85 85 28 0 0%
wave/network/static_handler.py 34 34 10 0 0%
wave/testing/__init__.py 0 0 0 0 100%
wave/testing/devices_manager.py 85 85 30 0 0%
wave/testing/event_dispatcher.py 104 104 54 0 0%
wave/testing/results_manager.py 494 494 240 0 0%
wave/testing/sessions_manager.py 327 327 168 0 0%
wave/testing/test_loader.py 145 145 98 0 0%
wave/testing/tests_manager.py 261 261 144 0 0%
wave/testing/wpt_report.py 24 24 8 0 0%
wave/utils/__init__.py 0 0 0 0 100%
wave/utils/deserializer.py 89 89 46 0 0%
wave/utils/serializer.py 14 14 4 0 0%
wave/utils/user_agent_parser.py 17 17 8 0 0%
wave/wave_server.py 50 50 6 0 0%
web_features/__init__.py 0 0 0 0 100%
web_features/manifest.py 68 3 14 1 95%
web_features/web_feature_map.py 53 0 28 2 98%
webtransport/__init__.py 0 0 0 0 100%
webtransport/h3/__init__.py 0 0 0 0 100%
webtransport/h3/capsule.py 62 62 22 0 0%
webtransport/h3/handler.py 13 13 0 0 0%
webtransport/h3/test_capsule.py 98 77 4 2 23%
webtransport/h3/webtransport_h3_server.py 338 338 100 0 0%
---------------------------------------------------------------------------------------
TOTAL 9253 5725 3587 186 37%
===== 957 passed, 12 skipped, 3 xfailed, 66 warnings in 1077.41s (0:17:57) =====
py38: OK ✔ in 18 minutes 28.67 seconds
py38-flake8: install_deps> python -I -m pip install -r /home/test/web-platform-tests/tools/requirements_flake8.txt
py38-flake8: commands[0]> flake8 --append-config=/home/test/web-platform-tests/tools/flake8.ini
py38-flake8: OK ✔ in 7.94 seconds
py38-mypy: install_deps> python -I -m pip install -r /home/test/web-platform-tests/tools/requirements_mypy.txt
py38-mypy: commands[0] /home/test/web-platform-tests/tools/..> mypy --config-file=/home/test/web-platform-tests/tools/mypy.ini --explicit-package-bases tools
Success: no issues found in 312 source files
py38: OK (1108.67=setup[29.66]+cmd[1079.01] seconds)
py38-flake8: OK (7.94=setup[1.50]+cmd[6.44] seconds)
py38-mypy: OK (36.41=setup[19.10]+cmd[17.31] seconds)
congratulations :) (1153.04 seconds)
+ cd /home/test/web-platform-tests/tools/ci/../..
+ ./wpt test-jobs --includes wptrunner_unittest
+ cd tools/wptrunner
+ tox -f py38
py38: install_deps> python -I -m pip install -r /home/test/web-platform-tests/tools/wptrunner/../requirements_pytest.txt -r /home/test/web-platform-tests/tools/wptrunner/requirements.txt
.pkg: install_requires> python -I -m pip install 'setuptools>=40.8.0'
.pkg: _optional_hooks> python /home/test/.local/lib/python3.10/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
.pkg: get_requires_for_build_sdist> python /home/test/.local/lib/python3.10/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
.pkg: get_requires_for_build_wheel> python /home/test/.local/lib/python3.10/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
.pkg: prepare_metadata_for_build_wheel> python /home/test/.local/lib/python3.10/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
.pkg: build_sdist> python /home/test/.local/lib/python3.10/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
py38: install_package> python -I -m pip install --force-reinstall --no-deps /home/test/web-platform-tests/tools/wptrunner/.tox/.tmp/package/1/wptrunner-1.14.tar.gz
py38: commands[0]> pytest -c/home/test/web-platform-tests/tools/wptrunner/../pytest.ini --rootdir=/home/test/web-platform-tests/tools/wptrunner
============================= test session starts ==============================
platform linux -- Python 3.8.20, pytest-8.3.2, pluggy-1.5.0
cachedir: .tox/py38/.pytest_cache
rootdir: /home/test/web-platform-tests/tools/wptrunner
configfile: ../pytest.ini
plugins: hypothesis-6.112.0, cov-5.0.0
collecting ...
collecting 159 items
collected 348 items
wptrunner/tests/browsers/test_base.py . [ 0%]
wptrunner/tests/browsers/test_sauce.py .......... [ 3%]
wptrunner/tests/browsers/test_webkitgtk.py ssssssssssssssssssss [ 8%]
wptrunner/tests/test_executors.py ........ [ 11%]
wptrunner/tests/test_expectedtree.py ..... [ 12%]
wptrunner/tests/test_formatters.py ..... [ 14%]
wptrunner/tests/test_manifestexpected.py .......... [ 16%]
wptrunner/tests/test_manifestupdate.py .. [ 17%]
wptrunner/tests/test_metadata.py ............ [ 20%]
wptrunner/tests/test_products.py ssssssssssssssssssss................... [ 32%]
.....................ssssssssssssssssssss [ 43%]
wptrunner/tests/test_stability.py ...... [ 45%]
wptrunner/tests/test_testloader.py ........ [ 47%]
wptrunner/tests/test_update.py ......................................... [ 59%]
............... [ 64%]
wptrunner/tests/test_wptrunner.py ........ [ 66%]
wptrunner/tests/test_wpttest.py ......... [ 68%]
wptrunner/wptmanifest/tests/test_conditional.py ........ [ 71%]
wptrunner/wptmanifest/tests/test_parser.py ......... [ 73%]
wptrunner/wptmanifest/tests/test_serializer.py ......................... [ 81%]
.................. [ 86%]
wptrunner/wptmanifest/tests/test_static.py ...... [ 87%]
wptrunner/wptmanifest/tests/test_tokenizer.py .......................... [ 95%]
................ [100%]
======================= 288 passed, 60 skipped in 11.70s =======================
py38: OK ✔ in 22.33 seconds
py38-base: install_deps> python -I -m pip install -r /home/test/web-platform-tests/tools/wptrunner/../requirements_pytest.txt -r /home/test/web-platform-tests/tools/wptrunner/requirements.txt
py38-base: install_package> python -I -m pip install --force-reinstall --no-deps /home/test/web-platform-tests/tools/wptrunner/.tox/.tmp/package/2/wptrunner-1.14.tar.gz
py38-base: commands[0]> pytest -c/home/test/web-platform-tests/tools/wptrunner/../pytest.ini --rootdir=/home/test/web-platform-tests/tools/wptrunner
============================= test session starts ==============================
platform linux -- Python 3.8.20, pytest-8.3.2, pluggy-1.5.0
cachedir: .tox/py38-base/.pytest_cache
rootdir: /home/test/web-platform-tests/tools/wptrunner
configfile: ../pytest.ini
plugins: hypothesis-6.112.0, cov-5.0.0
collecting ...
collected 348 items
wptrunner/tests/browsers/test_base.py . [ 0%]
wptrunner/tests/browsers/test_sauce.py .......... [ 3%]
wptrunner/tests/browsers/test_webkitgtk.py ssssssssssssssssssss [ 8%]
wptrunner/tests/test_executors.py ........ [ 11%]
wptrunner/tests/test_expectedtree.py ..... [ 12%]
wptrunner/tests/test_formatters.py ..... [ 14%]
wptrunner/tests/test_manifestexpected.py .......... [ 16%]
wptrunner/tests/test_manifestupdate.py .. [ 17%]
wptrunner/tests/test_metadata.py ............ [ 20%]
wptrunner/tests/test_products.py ssssssssssssssssssss................... [ 32%]
.....................ssssssssssssssssssss [ 43%]
wptrunner/tests/test_stability.py ...... [ 45%]
wptrunner/tests/test_testloader.py ........ [ 47%]
wptrunner/tests/test_update.py ......................................... [ 59%]
............... [ 64%]
wptrunner/tests/test_wptrunner.py ........ [ 66%]
wptrunner/tests/test_wpttest.py ......... [ 68%]
wptrunner/wptmanifest/tests/test_conditional.py ........ [ 71%]
wptrunner/wptmanifest/tests/test_parser.py ......... [ 73%]
wptrunner/wptmanifest/tests/test_serializer.py ......................... [ 81%]
.................. [ 86%]
wptrunner/wptmanifest/tests/test_static.py ...... [ 87%]
wptrunner/wptmanifest/tests/test_tokenizer.py .......................... [ 95%]
................ [100%]
======================= 288 passed, 60 skipped in 11.27s =======================
py38: OK (22.33=setup[9.75]+cmd[12.58] seconds)
py38-base: OK (18.92=setup[6.81]+cmd[12.11] seconds)
congratulations :) (41.29 seconds)
+ cd /home/test/web-platform-tests/tools/ci/../..
[taskcluster 2025-12-19 18:31:55.999Z] === Task Finished ===
[taskcluster 2025-12-19 18:31:56.055Z] Successful task run with exit code: 0 completed in 1376.146 seconds
Loading