diff --git a/lib/internal/test_runner/test.js b/lib/internal/test_runner/test.js index 48271e2e71a80e..0d2e0ab6e5acd6 100644 --- a/lib/internal/test_runner/test.js +++ b/lib/internal/test_runner/test.js @@ -247,7 +247,9 @@ class Test extends AsyncResource { } if (testOnlyFlag && !this.only) { - skip = '\'only\' option not set'; + skip = "'only' option not set"; + } else if (!testOnlyFlag && (only || this.runOnlySubtests)) { + this.emitOnlyWarning = true; } if (skip) { @@ -710,6 +712,13 @@ class Test extends AsyncResource { for (let i = 0; i < this.diagnostics.length; i++) { this.reporter.diagnostic(this.nesting, kFilename, this.diagnostics[i]); } + + if (this.emitOnlyWarning) { + const warning = + "to use 'only' or 'runOnly' in the test runner" + + ' run node with the --test-only command-line option.'; + this.reporter.diagnostic(this.nesting, kFilename, warning); + } } reportStarted() { diff --git a/test/message/test_runner_output.out b/test/message/test_runner_output.out index 15d2009816a961..2774e32142eef5 100644 --- a/test/message/test_runner_output.out +++ b/test/message/test_runner_output.out @@ -475,11 +475,13 @@ ok 52 - callback async throw after done --- duration_ms: * ... + # to use 'only' or 'runOnly' in the test runner run node with the --test-only command-line option. # Subtest: running subtest 3 ok 3 - running subtest 3 --- duration_ms: * ... + # to use 'only' or 'runOnly' in the test runner run node with the --test-only command-line option. # Subtest: running subtest 4 ok 4 - running subtest 4 --- @@ -490,6 +492,7 @@ ok 53 - only is set but not in only mode --- duration_ms: * ... +# to use 'only' or 'runOnly' in the test runner run node with the --test-only command-line option. # Subtest: custom inspect symbol fail not ok 54 - custom inspect symbol fail --- diff --git a/test/message/test_runner_output_cli.out b/test/message/test_runner_output_cli.out index cc9c07f4c5c409..bbb8e03e589cdd 100644 --- a/test/message/test_runner_output_cli.out +++ b/test/message/test_runner_output_cli.out @@ -476,11 +476,13 @@ TAP version 13 --- duration_ms: * ... + # to use 'only' or 'runOnly' in the test runner run node with the --test-only command-line option. # Subtest: running subtest 3 ok 3 - running subtest 3 --- duration_ms: * ... + # to use 'only' or 'runOnly' in the test runner run node with the --test-only command-line option. # Subtest: running subtest 4 ok 4 - running subtest 4 --- @@ -491,6 +493,7 @@ TAP version 13 --- duration_ms: * ... + # to use 'only' or 'runOnly' in the test runner run node with the --test-only command-line option. # Subtest: custom inspect symbol fail not ok 54 - custom inspect symbol fail --- diff --git a/test/message/test_runner_output_spec_reporter.out b/test/message/test_runner_output_spec_reporter.out index cf47c7ac7e33ff..3d066fc58733cb 100644 --- a/test/message/test_runner_output_spec_reporter.out +++ b/test/message/test_runner_output_spec_reporter.out @@ -199,9 +199,12 @@ only is set but not in only mode running subtest 1 (*ms) running subtest 2 (*ms) + to use 'only' or 'runOnly' in the test runner run node with the --test-only command-line option. running subtest 3 (*ms) + to use 'only' or 'runOnly' in the test runner run node with the --test-only command-line option. running subtest 4 (*ms) only is set but not in only mode (*ms) + to use 'only' or 'runOnly' in the test runner run node with the --test-only command-line option. custom inspect symbol fail (*ms) customized