Extract default cli parser to common place
This commit is contained in:
@@ -1,47 +1,13 @@
|
|||||||
import {TeamCityMessagesFlow} from "./src/TeamCityMessagesFlow";
|
import {TeamCityMessagesFlow} from "./src/TeamCityMessagesFlow";
|
||||||
import {directRunner, KotlinTestRunner} from "./src/KotlinTestRunner";
|
import {directRunner, KotlinTestRunner} from "./src/KotlinTestRunner";
|
||||||
import {IgnoredTestSuitesReporting, runWithTeamCityReporter} from "./src/KotlinTestTeamCityReporter";
|
import {IgnoredTestSuitesReporting, runWithTeamCityReporter} from "./src/KotlinTestTeamCityReporter";
|
||||||
import {CliArgsParser} from "./src/CliArgsParser";
|
import {defaultCliArgsParser} from "./src/CliArgsParser";
|
||||||
import {configureFiltering} from "./src/CliFiltertingConfiguration";
|
import {configureFiltering} from "./src/CliFiltertingConfiguration";
|
||||||
import {hrTimer} from "./src/Timer";
|
import {hrTimer} from "./src/Timer";
|
||||||
|
|
||||||
const kotlin_test = require('kotlin-test');
|
const kotlin_test = require('kotlin-test');
|
||||||
|
|
||||||
const parser = new CliArgsParser({
|
const parser = defaultCliArgsParser;
|
||||||
version: VERSION,
|
|
||||||
bin: BIN,
|
|
||||||
description: DESCRIPTION,
|
|
||||||
usage: "[-t --tests] [-e --exclude] <module_name1>, <module_name2>, ..",
|
|
||||||
args: {
|
|
||||||
include: {
|
|
||||||
keys: ['--tests', '--include'],
|
|
||||||
help: "Tests to include. Example: MySuite.test1,MySuite.MySubSuite.*,*unix*,!*windows*",
|
|
||||||
default: "*"
|
|
||||||
|
|
||||||
},
|
|
||||||
exclude: {
|
|
||||||
keys: ['--exclude'],
|
|
||||||
help: "Tests to exclude. Example: MySuite.test1,MySuite.MySubSuite.*,*unix*"
|
|
||||||
},
|
|
||||||
ignoredTestSuites: {
|
|
||||||
keys: ['--ignoredTestSuites'],
|
|
||||||
help: "How to deal with ignored test suites",
|
|
||||||
single: true,
|
|
||||||
values: [
|
|
||||||
IgnoredTestSuitesReporting.skip,
|
|
||||||
IgnoredTestSuitesReporting.reportAsIgnoredTest,
|
|
||||||
IgnoredTestSuitesReporting.reportAllInnerTestsAsIgnored
|
|
||||||
],
|
|
||||||
valuesHelp: [
|
|
||||||
"don't report ignored test suites",
|
|
||||||
"useful to speedup large ignored test suites",
|
|
||||||
"will cause visiting all inner tests",
|
|
||||||
],
|
|
||||||
default: IgnoredTestSuitesReporting.reportAllInnerTestsAsIgnored
|
|
||||||
}
|
|
||||||
},
|
|
||||||
freeArgsTitle: "module_name"
|
|
||||||
});
|
|
||||||
|
|
||||||
const processArgs = process.argv.slice(2);
|
const processArgs = process.argv.slice(2);
|
||||||
const untypedArgs = parser.parse(processArgs);
|
const untypedArgs = parser.parse(processArgs);
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import {println, startsWith} from "./utils";
|
import {println, startsWith} from "./utils";
|
||||||
|
import {IgnoredTestSuitesReporting} from "./KotlinTestTeamCityReporter";
|
||||||
|
|
||||||
export type CliDescription = {
|
export type CliDescription = {
|
||||||
version: string,
|
version: string,
|
||||||
@@ -113,3 +114,41 @@ export class CliArgsParser {
|
|||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const defaultCliDescription: CliDescription = {
|
||||||
|
version: VERSION,
|
||||||
|
bin: BIN,
|
||||||
|
description: DESCRIPTION,
|
||||||
|
usage: "[-t --tests] [-e --exclude] <module_name1>, <module_name2>, ..",
|
||||||
|
args: {
|
||||||
|
include: {
|
||||||
|
keys: ['--tests', '--include'],
|
||||||
|
help: "Tests to include. Example: MySuite.test1,MySuite.MySubSuite.*,*unix*,!*windows*",
|
||||||
|
default: "*"
|
||||||
|
|
||||||
|
},
|
||||||
|
exclude: {
|
||||||
|
keys: ['--exclude'],
|
||||||
|
help: "Tests to exclude. Example: MySuite.test1,MySuite.MySubSuite.*,*unix*"
|
||||||
|
},
|
||||||
|
ignoredTestSuites: {
|
||||||
|
keys: ['--ignoredTestSuites'],
|
||||||
|
help: "How to deal with ignored test suites",
|
||||||
|
single: true,
|
||||||
|
values: [
|
||||||
|
IgnoredTestSuitesReporting.skip,
|
||||||
|
IgnoredTestSuitesReporting.reportAsIgnoredTest,
|
||||||
|
IgnoredTestSuitesReporting.reportAllInnerTestsAsIgnored
|
||||||
|
],
|
||||||
|
valuesHelp: [
|
||||||
|
"don't report ignored test suites",
|
||||||
|
"useful to speedup large ignored test suites",
|
||||||
|
"will cause visiting all inner tests",
|
||||||
|
],
|
||||||
|
default: IgnoredTestSuitesReporting.reportAllInnerTestsAsIgnored
|
||||||
|
}
|
||||||
|
},
|
||||||
|
freeArgsTitle: "module_name"
|
||||||
|
};
|
||||||
|
|
||||||
|
export const defaultCliArgsParser: CliArgsParser = new CliArgsParser(defaultCliDescription);
|
||||||
|
|||||||
Reference in New Issue
Block a user