From 785f8163ca140532ab3604826dc790b7cec2f36d Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Wed, 18 Jan 2023 19:58:30 +0100 Subject: [PATCH] harness: mark some tests as experimental --- packages/taler-harness/src/index.ts | 8 +++++++- packages/taler-harness/src/integrationtests/test-kyc.ts | 2 ++ .../src/integrationtests/test-wallet-backup-basic.ts | 2 ++ .../integrationtests/test-wallet-backup-doublespend.ts | 2 ++ packages/taler-harness/src/integrationtests/testrunner.ts | 7 +++++++ 5 files changed, 20 insertions(+), 1 deletion(-) diff --git a/packages/taler-harness/src/index.ts b/packages/taler-harness/src/index.ts index 632bd5877..a6decc4ab 100644 --- a/packages/taler-harness/src/index.ts +++ b/packages/taler-harness/src/index.ts @@ -229,7 +229,6 @@ deploymentConfigCli ); }); - testingCli.subcommand("logtest", "logtest").action(async (args) => { logger.trace("This is a trace message."); logger.info("This is an info message."); @@ -248,6 +247,9 @@ testingCli if (t.excludeByDefault) { s += ` [excluded by default]`; } + if (t.experimental) { + s += ` [experimental]`; + } console.log(s); } }); @@ -263,6 +265,9 @@ testingCli .flag("dryRun", ["--dry"], { help: "Only print tests that will be selected to run.", }) + .flag("experimental", ["--experimental"], { + help: "Include tests marked as experimental", + }) .flag("quiet", ["--quiet"], { help: "Produce less output.", }) @@ -272,6 +277,7 @@ testingCli suiteSpec: args.runIntegrationtests.suites, dryRun: args.runIntegrationtests.dryRun, verbosity: args.runIntegrationtests.quiet ? 0 : 1, + includeExperimental: args.runIntegrationtests.experimental ?? false, }); }); diff --git a/packages/taler-harness/src/integrationtests/test-kyc.ts b/packages/taler-harness/src/integrationtests/test-kyc.ts index 40474fb6f..c59b2e8df 100644 --- a/packages/taler-harness/src/integrationtests/test-kyc.ts +++ b/packages/taler-harness/src/integrationtests/test-kyc.ts @@ -202,3 +202,5 @@ export async function runKycTest(t: GlobalTestState) { } runKycTest.suites = ["wallet"]; +// See bugs.taler.net/n/7599 +runKycTest.experimental = true; \ No newline at end of file diff --git a/packages/taler-harness/src/integrationtests/test-wallet-backup-basic.ts b/packages/taler-harness/src/integrationtests/test-wallet-backup-basic.ts index fc2f3335d..f36e2e4f1 100644 --- a/packages/taler-harness/src/integrationtests/test-wallet-backup-basic.ts +++ b/packages/taler-harness/src/integrationtests/test-wallet-backup-basic.ts @@ -166,3 +166,5 @@ export async function runWalletBackupBasicTest(t: GlobalTestState) { } runWalletBackupBasicTest.suites = ["wallet", "wallet-backup"]; +// See https://bugs.taler.net/n/7598 +runWalletBackupBasicTest.experimental = true; diff --git a/packages/taler-harness/src/integrationtests/test-wallet-backup-doublespend.ts b/packages/taler-harness/src/integrationtests/test-wallet-backup-doublespend.ts index 8b52260e9..2aceab86e 100644 --- a/packages/taler-harness/src/integrationtests/test-wallet-backup-doublespend.ts +++ b/packages/taler-harness/src/integrationtests/test-wallet-backup-doublespend.ts @@ -172,3 +172,5 @@ export async function runWalletBackupDoublespendTest(t: GlobalTestState) { } runWalletBackupDoublespendTest.suites = ["wallet", "wallet-backup"]; +// See https://bugs.taler.net/n/7598 +runWalletBackupDoublespendTest.experimental = true; diff --git a/packages/taler-harness/src/integrationtests/testrunner.ts b/packages/taler-harness/src/integrationtests/testrunner.ts index 780fcf394..f04bc2950 100644 --- a/packages/taler-harness/src/integrationtests/testrunner.ts +++ b/packages/taler-harness/src/integrationtests/testrunner.ts @@ -111,6 +111,7 @@ interface TestMainFunction { (t: GlobalTestState): Promise; timeoutMs?: number; excludeByDefault?: boolean; + experimental?: boolean; suites?: string[]; } @@ -194,6 +195,7 @@ export interface TestRunSpec { includePattern?: string; suiteSpec?: string; dryRun?: boolean; + includeExperimental: boolean; verbosity: number; } @@ -201,6 +203,7 @@ export interface TestInfo { name: string; suites: string[]; excludeByDefault: boolean; + experimental: boolean; } function updateCurrentSymlink(testDir: string): void { @@ -284,6 +287,9 @@ export async function runTests(spec: TestRunSpec) { if (testCase.excludeByDefault) { continue; } + if (testCase.experimental && !spec.includeExperimental) { + continue; + } } if (spec.dryRun) { @@ -441,6 +447,7 @@ export function getTestInfo(): TestInfo[] { name: getTestName(x), suites: x.suites ?? [], excludeByDefault: x.excludeByDefault ?? false, + experimental: x.experimental ?? false, })); }