UNPKG

@syntest/core

Version:

The common core of the SynTest Framework

1,054 lines 30.9 kB
import Yargs = require("yargs"); export type RemoveIndex<T> = { [K in keyof T as string extends K ? never : number extends K ? never : K]: T[K]; }; export declare let CONFIG: Readonly<RemoveIndex<ArgumentsObject>>; export declare class Configuration { initialize(argumentValues: ArgumentsObject): void; loadFile(cwd?: string): any; processArguments<O extends OptionsObject>(yargs: O, args: string[]): ArgumentsObject; configureOptions(programName: string): Yargs.Argv<Yargs.Omit<Yargs.Omit<Yargs.Omit<Yargs.Omit<Yargs.Omit<Yargs.Omit<Yargs.Omit<Yargs.Omit<{ plugins: any[] | string[]; } & { "user-interface": string; }, "target-root-directory" | "include" | "exclude"> & Yargs.InferredOptionTypes<{ "target-root-directory": { alias: string[]; demandOption: true; description: string; group: string; hidden: false; normalize: true; type: "string"; }; include: { alias: string[]; default: string[]; description: string; group: string; hidden: false; normalize: true; type: "array"; }; exclude: { alias: string[]; default: any[]; description: string; group: string; hidden: false; normalize: true; type: "array"; }; }>, "statistics-directory" | "log-directory" | "final-suite-directory" | "temp-test-directory" | "temp-log-directory" | "temp-instrumented-directory"> & Yargs.InferredOptionTypes<{ "statistics-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "log-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "final-suite-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "temp-test-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "temp-log-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "temp-instrumented-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; }>, "algorithm" | "population-size" | "crossover" | "sampler" | "termination-triggers"> & Yargs.InferredOptionTypes<{ algorithm: { alias: string[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "population-size": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; crossover: { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; sampler: { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "termination-triggers": { alias: any[]; default: string[]; description: string; group: string; hidden: false; type: "string"; }; }>, "total-time-budget" | "search-time-budget" | "iteration-budget" | "evaluation-budget"> & Yargs.InferredOptionTypes<{ "total-time-budget": { alias: string[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "search-time-budget": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "iteration-budget": { alias: string[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "evaluation-budget": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; }>, "console-log-level" | "log-to-file"> & Yargs.InferredOptionTypes<{ "console-log-level": { alias: any[]; choices: string[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "log-to-file": { alias: any[]; default: string[]; description: string; group: string; hidden: false; type: "array"; }; }>, "test-minimization"> & Yargs.InferredOptionTypes<{ "test-minimization": { alias: any[]; default: boolean; description: string; group: string; hidden: false; type: "boolean"; }; }>, "seed" | "max-depth" | "max-action-statements" | "constant-pool" | "explore-illegal-values" | "resample-gene-probability" | "delta-mutation-probability" | "sample-existing-value-probability" | "crossover-probability" | "constant-pool-probability" | "sample-function-output-as-argument" | "string-alphabet" | "string-max-length" | "numeric-max-value"> & Yargs.InferredOptionTypes<{ seed: { alias: string[]; default: any; description: string; group: string; hidden: false; type: "string"; }; "max-depth": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "max-action-statements": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "constant-pool": { alias: any[]; default: boolean; description: string; group: string; hidden: false; type: "boolean"; }; "explore-illegal-values": { alias: any[]; default: boolean; description: string; group: string; hidden: false; type: "boolean"; }; "resample-gene-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "delta-mutation-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "sample-existing-value-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "crossover-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "constant-pool-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "sample-function-output-as-argument": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "string-alphabet": { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "string-max-length": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "numeric-max-value": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; }>, "configuration" | "output-properties"> & Yargs.InferredOptionTypes<{ configuration: { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "output-properties": { alias: any[]; default: string[]; description: string; group: string; hidden: false; type: "array"; }; }>>; configureGeneralOptions<T>(yargs: Yargs.Argv<T>): Yargs.Argv<T & { plugins: any[] | string[]; } & { "user-interface": string; }>; configureTargetOptions<T>(yargs: Yargs.Argv<T>): Yargs.Argv<Yargs.Omit<T, "target-root-directory" | "include" | "exclude"> & Yargs.InferredOptionTypes<{ "target-root-directory": { alias: string[]; demandOption: true; description: string; group: string; hidden: false; normalize: true; type: "string"; }; include: { alias: string[]; default: string[]; description: string; group: string; hidden: false; normalize: true; type: "array"; }; exclude: { alias: string[]; default: any[]; description: string; group: string; hidden: false; normalize: true; type: "array"; }; }>>; configureStorageOptions<T>(yargs: Yargs.Argv<T>): Yargs.Argv<Yargs.Omit<T, "statistics-directory" | "log-directory" | "final-suite-directory" | "temp-test-directory" | "temp-log-directory" | "temp-instrumented-directory"> & Yargs.InferredOptionTypes<{ "statistics-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "log-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "final-suite-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "temp-test-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "temp-log-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "temp-instrumented-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; }>>; configureAlgorithmOptions<T>(yargs: Yargs.Argv<T>): Yargs.Argv<Yargs.Omit<T, "algorithm" | "population-size" | "crossover" | "sampler" | "termination-triggers"> & Yargs.InferredOptionTypes<{ algorithm: { alias: string[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "population-size": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; crossover: { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; sampler: { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "termination-triggers": { alias: any[]; default: string[]; description: string; group: string; hidden: false; type: "string"; }; }>>; configureBudgetOptions<T>(yargs: Yargs.Argv<T>): Yargs.Argv<Yargs.Omit<T, "total-time-budget" | "search-time-budget" | "iteration-budget" | "evaluation-budget"> & Yargs.InferredOptionTypes<{ "total-time-budget": { alias: string[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "search-time-budget": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "iteration-budget": { alias: string[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "evaluation-budget": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; }>>; configureLoggingOptions<T>(yargs: Yargs.Argv<T>): Yargs.Argv<Yargs.Omit<T, "console-log-level" | "log-to-file"> & Yargs.InferredOptionTypes<{ "console-log-level": { alias: any[]; choices: string[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "log-to-file": { alias: any[]; default: string[]; description: string; group: string; hidden: false; type: "array"; }; }>>; configurePostProcessingOptions<T>(yargs: Yargs.Argv<T>): Yargs.Argv<Yargs.Omit<T, "test-minimization"> & Yargs.InferredOptionTypes<{ "test-minimization": { alias: any[]; default: boolean; description: string; group: string; hidden: false; type: "boolean"; }; }>>; configureSamplingOptions<T>(yargs: Yargs.Argv<T>): Yargs.Argv<Yargs.Omit<T, "seed" | "max-depth" | "max-action-statements" | "constant-pool" | "explore-illegal-values" | "resample-gene-probability" | "delta-mutation-probability" | "sample-existing-value-probability" | "crossover-probability" | "constant-pool-probability" | "sample-function-output-as-argument" | "string-alphabet" | "string-max-length" | "numeric-max-value"> & Yargs.InferredOptionTypes<{ seed: { alias: string[]; default: any; description: string; group: string; hidden: false; type: "string"; }; "max-depth": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "max-action-statements": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "constant-pool": { alias: any[]; default: boolean; description: string; group: string; hidden: false; type: "boolean"; }; "explore-illegal-values": { alias: any[]; default: boolean; description: string; group: string; hidden: false; type: "boolean"; }; "resample-gene-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "delta-mutation-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "sample-existing-value-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "crossover-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "constant-pool-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "sample-function-output-as-argument": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "string-alphabet": { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "string-max-length": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "numeric-max-value": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; }>>; configureResearchModeOptions<T>(yargs: Yargs.Argv<T>): Yargs.Argv<Yargs.Omit<T, "configuration" | "output-properties"> & Yargs.InferredOptionTypes<{ configuration: { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "output-properties": { alias: any[]; default: string[]; description: string; group: string; hidden: false; type: "array"; }; }>>; } declare const configured: Yargs.Argv<Yargs.Omit<Yargs.Omit<Yargs.Omit<Yargs.Omit<Yargs.Omit<Yargs.Omit<Yargs.Omit<Yargs.Omit<{ plugins: any[] | string[]; } & { "user-interface": string; }, "target-root-directory" | "include" | "exclude"> & Yargs.InferredOptionTypes<{ "target-root-directory": { alias: string[]; demandOption: true; description: string; group: string; hidden: false; normalize: true; type: "string"; }; include: { alias: string[]; default: string[]; description: string; group: string; hidden: false; normalize: true; type: "array"; }; exclude: { alias: string[]; default: any[]; description: string; group: string; hidden: false; normalize: true; type: "array"; }; }>, "statistics-directory" | "log-directory" | "final-suite-directory" | "temp-test-directory" | "temp-log-directory" | "temp-instrumented-directory"> & Yargs.InferredOptionTypes<{ "statistics-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "log-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "final-suite-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "temp-test-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "temp-log-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; "temp-instrumented-directory": { alias: any[]; default: string; description: string; group: string; hidden: false; normalize: true; type: "string"; }; }>, "algorithm" | "population-size" | "crossover" | "sampler" | "termination-triggers"> & Yargs.InferredOptionTypes<{ algorithm: { alias: string[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "population-size": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; crossover: { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; sampler: { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "termination-triggers": { alias: any[]; default: string[]; description: string; group: string; hidden: false; type: "string"; }; }>, "total-time-budget" | "search-time-budget" | "iteration-budget" | "evaluation-budget"> & Yargs.InferredOptionTypes<{ "total-time-budget": { alias: string[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "search-time-budget": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "iteration-budget": { alias: string[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "evaluation-budget": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; }>, "console-log-level" | "log-to-file"> & Yargs.InferredOptionTypes<{ "console-log-level": { alias: any[]; choices: string[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "log-to-file": { alias: any[]; default: string[]; description: string; group: string; hidden: false; type: "array"; }; }>, "test-minimization"> & Yargs.InferredOptionTypes<{ "test-minimization": { alias: any[]; default: boolean; description: string; group: string; hidden: false; type: "boolean"; }; }>, "seed" | "max-depth" | "max-action-statements" | "constant-pool" | "explore-illegal-values" | "resample-gene-probability" | "delta-mutation-probability" | "sample-existing-value-probability" | "crossover-probability" | "constant-pool-probability" | "sample-function-output-as-argument" | "string-alphabet" | "string-max-length" | "numeric-max-value"> & Yargs.InferredOptionTypes<{ seed: { alias: string[]; default: any; description: string; group: string; hidden: false; type: "string"; }; "max-depth": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "max-action-statements": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "constant-pool": { alias: any[]; default: boolean; description: string; group: string; hidden: false; type: "boolean"; }; "explore-illegal-values": { alias: any[]; default: boolean; description: string; group: string; hidden: false; type: "boolean"; }; "resample-gene-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "delta-mutation-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "sample-existing-value-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "crossover-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "constant-pool-probability": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "sample-function-output-as-argument": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "string-alphabet": { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "string-max-length": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; "numeric-max-value": { alias: any[]; default: number; description: string; group: string; hidden: false; type: "number"; }; }>, "configuration" | "output-properties"> & Yargs.InferredOptionTypes<{ configuration: { alias: any[]; default: string; description: string; group: string; hidden: false; type: "string"; }; "output-properties": { alias: any[]; default: string[]; description: string; group: string; hidden: false; type: "array"; }; }>>; export type OptionsObject = typeof configured; declare const parsed: { [x: string]: unknown; plugins: any[] | string[]; "user-interface": string; userInterface: string; "target-root-directory": string; targetRootDirectory: string; include: string[]; exclude: any[] | string[]; "statistics-directory": string; statisticsDirectory: string; "log-directory": string; logDirectory: string; "final-suite-directory": string; finalSuiteDirectory: string; "temp-test-directory": string; tempTestDirectory: string; "temp-log-directory": string; tempLogDirectory: string; "temp-instrumented-directory": string; tempInstrumentedDirectory: string; algorithm: string; "population-size": number; populationSize: number; crossover: string; sampler: string; "termination-triggers": string | string[]; terminationTriggers: string | string[]; "total-time-budget": number; totalTimeBudget: number; "search-time-budget": number; searchTimeBudget: number; "iteration-budget": number; iterationBudget: number; "evaluation-budget": number; evaluationBudget: number; "console-log-level": string; consoleLogLevel: string; "log-to-file": string[] | (string | number)[]; logToFile: string[] | (string | number)[]; "test-minimization": boolean; testMinimization: boolean; seed: any; "max-depth": number; maxDepth: number; "max-action-statements": number; maxActionStatements: number; "constant-pool": boolean; constantPool: boolean; "explore-illegal-values": boolean; exploreIllegalValues: boolean; "resample-gene-probability": number; resampleGeneProbability: number; "delta-mutation-probability": number; deltaMutationProbability: number; "sample-existing-value-probability": number; sampleExistingValueProbability: number; "crossover-probability": number; crossoverProbability: number; "constant-pool-probability": number; constantPoolProbability: number; "sample-function-output-as-argument": number; sampleFunctionOutputAsArgument: number; "string-alphabet": string; stringAlphabet: string; "string-max-length": number; stringMaxLength: number; "numeric-max-value": number; numericMaxValue: number; configuration: string; "output-properties": string[] | (string | number)[]; outputProperties: string[] | (string | number)[]; _: (string | number)[]; $0: string; }; export type ArgumentsObject = typeof parsed; export {}; //# sourceMappingURL=Configuration.d.ts.map