Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 89a5bd3e4c0e63659094e0be2104bf3b3faba224
https://github.com/WebKit/WebKit/commit/89a5bd3e4c0e63659094e0be2104bf3b3faba224
Author: David Kilzer <[email protected]>
Date: 2026-07-21 (Tue, 21 Jul 2026)
Changed paths:
M Tools/Scripts/webkitpy/api_tests/runner.py
A Tools/Scripts/webkitpy/api_tests/runner_unittest.py
Log Message:
-----------
run-api-tests --test-parallel-safety never terminates and emits unbounded
output when a DISABLED_ test is in the test list
<https://bugs.webkit.org/show_bug.cgi?id=319772>
<rdar://182630802>
Unreviewed test fix.
In test-parallel-safety mode every supplied test is dispatched as a
repeat=True task so it runs continuously to surface parallelization
problems. A gtest test whose method name is prefixed with DISABLED_
never executes, so its iteration returns immediately having done no
work. Repeating an instant no-op spins as fast as the CPU allows,
emitting one "Disabled" status line per iteration until the log limit
trips and the run is killed, so any modified-test set that includes a
disabled test can never complete.
Partition disabled tests out of the repeat set before dispatch and log
which ones were skipped. A disabled test carries no parallel-safety
signal, so excluding it loses nothing. Detect them with a shared
`_is_disabled_test()` helper that the per-run check in `_run_single_test`
also uses, so the two paths cannot disagree on what "disabled" means.
Tests: Added unit tests covering disabled-test detection and the
partitioning helper.
* Tools/Scripts/webkitpy/api_tests/runner.py:
(Runner._is_disabled_test): Add.
(Runner._partition_parallel_safety_tests): Add.
(Runner.run):
(_Worker._run_single_test):
* Tools/Scripts/webkitpy/api_tests/runner_unittest.py: Add.
(RunnerTest.test_is_disabled_test_detects_disabled_method): Add.
(RunnerTest.test_is_disabled_test_allows_enabled_test): Add.
(RunnerTest.test_parallel_safety_tests_excludes_disabled): Add.
(RunnerTest.test_partition_keeps_all_enabled_tests): Add.
Canonical link: https://commits.webkit.org/317681@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications