Skip to content

Commit fe6720d

Browse files
committed
fix: respect go test flags usage
1 parent 4298b52 commit fe6720d

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

Diff for: src/testUtils.ts

+12-12
Original file line numberDiff line numberDiff line change
@@ -427,11 +427,14 @@ export function computeTestCommand(
427427
addJSONFlag: boolean | undefined; // true if we add extra -json flag for stream processing.
428428
} {
429429
const args: Array<string> = ['test'];
430+
const outArgs:Array<string> = ['test']; // command to show
430431
// user-specified flags
431432
const argsFlagIdx = testconfig.flags?.indexOf('-args') ?? -1;
432433
const userFlags = argsFlagIdx < 0 ? testconfig.flags : testconfig.flags.slice(0, argsFlagIdx);
433434
const userArgsFlags = argsFlagIdx < 0 ? [] : testconfig.flags.slice(argsFlagIdx);
434435

436+
args.push(...targets);
437+
435438
// flags to limit test time
436439
if (testconfig.isBenchmark) {
437440
args.push('-benchmem', '-run=^$');
@@ -469,32 +472,29 @@ export function computeTestCommand(
469472
// all other test run/benchmark flags
470473
args.push(...targetArgs(testconfig));
471474

472-
const outArgs = args.slice(0); // command to show
473-
474475
// if user set -v, set -json to emulate streaming test output
475476
const addJSONFlag = (userFlags.includes('-v') || testconfig.goTestOutputConsumer) && !userFlags.includes('-json');
476477
if (addJSONFlag) {
477478
args.push('-json'); // this is not shown to the user.
478479
}
479480

480-
if (targets.length > 4) {
481-
outArgs.push('<long arguments omitted>');
482-
} else {
483-
outArgs.push(...targets);
484-
}
485-
args.push(...targets);
486-
487481
// ensure that user provided flags are appended last (allow use of -args ...)
488482
// ignore user provided -run flag if we are already using it
489483
if (args.indexOf('-run') > -1) {
490484
removeRunFlag(userFlags);
491485
}
492486

493487
args.push(...userFlags);
494-
outArgs.push(...userFlags);
495-
496488
args.push(...userArgsFlags);
497-
outArgs.push(...userArgsFlags);
489+
490+
// build outArgs
491+
if (targets.length > 4) {
492+
outArgs.push('<long arguments omitted>');
493+
} else {
494+
outArgs.push(...targets);
495+
}
496+
497+
outArgs.push(...args.slice(targets.length + 1));
498498

499499
return {
500500
args,

0 commit comments

Comments
 (0)