run-test: make `--blacklist` and `--whitelist` behave like `--test-list`

Allows to specify a relative file path like `--test-list` for `--blacklist`
and `--whitelist`

Issue: https://bz.mercurial-scm.org/show_bug.cgi?id=6351
11 jobs for topic/default/run-test.blacklist in 25 minutes and 38 seconds (queued for 2 seconds)
Status Job ID Name Coverage
  Test
failed checks-py2 #105312

00:02:13

failed checks-py3 #105313

00:03:52

passed rust-cargo-test-py2 #105314

00:01:58

passed rust-cargo-test-py3 #105315

00:01:44

failed test-py2 #105316

00:21:27

failed test-py2-chg #105322

00:21:46

failed test-py2-pure #105318

00:25:36

failed test-py2-rust #105320

00:21:42

failed test-py3 #105317

00:12:13

failed test-py3-pure #105319

00:12:26

failed test-py3-rust #105321

00:20:18

 
Name Stage Failure
failed
test-py2-chg Test
Skipped test-verify-repo-operations.py: missing feature: allow slow tests (use --allow-slow-tests)
Skipped test-wireproto-command-capabilities.t: system supports running with chg
Skipped test-wireproto-exchangev2-shallow.t: missing feature: sqlite3 module is available
Failed test-check-format.t: output changed
# Ran 855 tests, 75 skipped, 1 failed.
python hash seed: 1375584234
Running after_script
Uploading artifacts for failed job
ERROR: Job failed: exit code 1
failed
test-py3-rust Test
Skipped test-verify-repo-operations.py: missing feature: allow slow tests (use --allow-slow-tests)
Skipped test-wireproto-exchangev2-shallow.t: missing feature: sqlite3 module is available
Failed test-check-format.t: output changed
Failed test-check-py3-compat.t: output changed
# Ran 870 tests, 60 skipped, 2 failed.
python hash seed: 2762478366
Running after_script
Uploading artifacts for failed job
ERROR: Job failed: exit code 1
failed
test-py2-rust Test
Skipped test-sqlitestore.t: missing feature: sqlite3 module is available
Skipped test-verify-repo-operations.py: missing feature: allow slow tests (use --allow-slow-tests)
Skipped test-wireproto-exchangev2-shallow.t: missing feature: sqlite3 module is available
Failed test-check-format.t: output changed
# Ran 876 tests, 54 skipped, 1 failed.
python hash seed: 92525402
Running after_script
Uploading artifacts for failed job
ERROR: Job failed: exit code 1
failed
test-py3 Test
Skipped test-wireproto-exchangev2-shallow.t: missing feature: sqlite3 module is available
Failed test-check-format.t: output changed
Failed test-check-py3-compat.t: output changed
Failed test-narrow-shallow.t: output changed
# Ran 869 tests, 61 skipped, 3 failed.
python hash seed: 3544724580
Running after_script
Uploading artifacts for failed job
ERROR: Job failed: exit code 1
failed
test-py2-pure Test
Skipped test-sqlitestore.t: missing feature: sqlite3 module is available
Skipped test-verify-repo-operations.py: missing feature: allow slow tests (use --allow-slow-tests)
Skipped test-wireproto-exchangev2-shallow.t: missing feature: sqlite3 module is available
Failed test-check-format.t: output changed
# Ran 872 tests, 58 skipped, 1 failed.
python hash seed: 4022902802
Running after_script
Uploading artifacts for failed job
ERROR: Job failed: exit code 1
failed
test-py2 Test
Skipped test-sqlitestore.t: missing feature: sqlite3 module is available
Skipped test-verify-repo-operations.py: missing feature: allow slow tests (use --allow-slow-tests)
Skipped test-wireproto-exchangev2-shallow.t: missing feature: sqlite3 module is available
Failed test-check-format.t: output changed
# Ran 875 tests, 55 skipped, 1 failed.
python hash seed: 4147200579
Running after_script
Uploading artifacts for failed job
ERROR: Job failed: exit code 1
failed
test-py3-pure Test
Skipped test-sparse-fsmonitor.t: skipped
Skipped test-sparse-revlog.t: missing artifact, run "/tmp/mercurial-ci/tests/artifacts/scripts/generate-churning-bundle.py"
Skipped test-sqlitestore.t: missing feature: sqlite3 module is available
Skipped test-verify-repo-operations.py: missing feature: allow slow tests (use --allow-slow-tests)
Skipped test-wireproto-exchangev2-shallow.t: missing feature: sqlite3 module is available
Failed test-check-format.t: output changed
# Ran 866 tests, 64 skipped, 1 failed.
python hash seed: 444345830
ERROR: Job failed: exit code 1
failed
checks-py3 Test
  0.003  25.383  48.510   5.070  25.380   test-check-config.t
0.005 27.770 66.030 5.400 27.765 test-check-module-imports.t
0.041 28.576 290.960 16.000 28.536 test-check-format.t
0.009 52.808 334.670 16.460 52.799 test-check-pyflakes.t
0.000 58.377 382.640 17.150 58.377 test-check-code.t
0.024 102.742 474.910 18.730 102.717 test-check-pylint.t
Running after_script
Uploading artifacts for failed job
ERROR: Job failed: exit code 1
failed
checks-py2 Test
  0.003  22.073  38.850  14.970  22.070   test-check-module-imports.t
0.000 24.576 44.550 15.730 24.575 test-check-py3-compat.t
0.017 25.301 211.780 26.430 25.284 test-check-format.t
0.005 29.788 230.570 27.380 29.783 test-check-pyflakes.t
0.000 38.272 257.420 28.190 38.272 test-check-code.t
0.011 50.344 294.170 29.420 50.333 test-check-pylint.t
Running after_script
Uploading artifacts for failed job
ERROR: Job failed: exit code 1