[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-wallet-core] branch master updated: implement test suites
From: |
gnunet |
Subject: |
[taler-wallet-core] branch master updated: implement test suites |
Date: |
Tue, 02 Mar 2021 14:19:06 +0100 |
This is an automated email from the git hooks/post-receive script.
dold pushed a commit to branch master
in repository wallet-core.
The following commit(s) were added to refs/heads/master by this push:
new 98ab998a implement test suites
98ab998a is described below
commit 98ab998a1ecf495e85fcc73a29ca88d990415f05
Author: Florian Dold <florian@dold.me>
AuthorDate: Tue Mar 2 14:19:01 2021 +0100
implement test suites
---
packages/idb-bridge/src/bridge-idb.ts | 2 +-
packages/taler-wallet-cli/src/index.ts | 10 ++++++++-
.../src/integrationtests/harness.ts | 2 +-
.../test-merchant-exchange-confusion.ts | 2 ++
.../src/integrationtests/testrunner.ts | 26 ++++++++++++++++++++--
5 files changed, 37 insertions(+), 5 deletions(-)
diff --git a/packages/idb-bridge/src/bridge-idb.ts
b/packages/idb-bridge/src/bridge-idb.ts
index fa2e16e2..2b460236 100644
--- a/packages/idb-bridge/src/bridge-idb.ts
+++ b/packages/idb-bridge/src/bridge-idb.ts
@@ -1132,7 +1132,7 @@ export class BridgeIDBIndex implements IDBIndex {
);
}
- console.log("opening cursor on", this);
+ BridgeIDBFactory.enableTracing && console.log("opening cursor on", this);
this._confirmActiveTransaction();
diff --git a/packages/taler-wallet-cli/src/index.ts
b/packages/taler-wallet-cli/src/index.ts
index 5e0d7220..acf46526 100644
--- a/packages/taler-wallet-cli/src/index.ts
+++ b/packages/taler-wallet-cli/src/index.ts
@@ -797,9 +797,17 @@ testCli
.maybeArgument("pattern", clk.STRING, {
help: "Glob pattern to select which tests to run",
})
+ .maybeOption("suites", ["--suites"], clk.STRING, {
+ help: "Only run selected suites (string-separated list)"
+ })
+ .flag("dryRun", ["--dry"], {
+ help: "Only print tests that will be selected to run."
+ })
.action(async (args) => {
await runTests({
- include_pattern: args.runIntegrationtests.pattern,
+ includePattern: args.runIntegrationtests.pattern,
+ suiteSpec: args.runIntegrationtests.suites,
+ dryRun: args.runIntegrationtests.dryRun,
});
});
diff --git a/packages/taler-wallet-cli/src/integrationtests/harness.ts
b/packages/taler-wallet-cli/src/integrationtests/harness.ts
index 518326f9..2fe976f9 100644
--- a/packages/taler-wallet-cli/src/integrationtests/harness.ts
+++ b/packages/taler-wallet-cli/src/integrationtests/harness.ts
@@ -1408,7 +1408,7 @@ export class MerchantService implements
MerchantServiceInterface {
console.log("adding instance");
const url =
`http://localhost:${this.merchantConfig.httpPort}/private/instances`;
await axios.post(url, {
- auth_token: instanceConfig.authToken,
+ auth: { method: "external" },
payto_uris: instanceConfig.paytoUris,
id: instanceConfig.id,
name: instanceConfig.name,
diff --git
a/packages/taler-wallet-cli/src/integrationtests/test-merchant-exchange-confusion.ts
b/packages/taler-wallet-cli/src/integrationtests/test-merchant-exchange-confusion.ts
index 15b548cc..a60f7f01 100644
---
a/packages/taler-wallet-cli/src/integrationtests/test-merchant-exchange-confusion.ts
+++
b/packages/taler-wallet-cli/src/integrationtests/test-merchant-exchange-confusion.ts
@@ -228,3 +228,5 @@ export async function runMerchantExchangeConfusionTest(t:
GlobalTestState) {
t.assertTrue(confirmPayRes.type === ConfirmPayResultType.Done);
}
+
+runMerchantExchangeConfusionTest.suites = ["merchant"];
diff --git a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
index a11b4587..252dbafb 100644
--- a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
+++ b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
@@ -70,6 +70,7 @@ import CancellationToken from "cancellationtoken";
interface TestMainFunction {
(t: GlobalTestState): Promise<void>;
timeoutMs?: number;
+ suites?: string[];
}
const allTests: TestMainFunction[] = [
@@ -108,7 +109,9 @@ const allTests: TestMainFunction[] = [
];
export interface TestRunSpec {
- include_pattern?: string;
+ includePattern?: string;
+ suiteSpec?: string;
+ dryRun?: boolean,
}
export interface TestInfo {
@@ -171,9 +174,28 @@ export async function runTests(spec: TestRunSpec) {
//process.on("unhandledRejection", handleSignal);
//process.on("uncaughtException", handleSignal);
+ let suites: Set<string> | undefined;
+
+ if (spec.suiteSpec) {
+ suites = new Set(spec.suiteSpec.split(",").map((x) => x.trim()));
+ }
+
for (const [n, testCase] of allTests.entries()) {
const testName = getTestName(testCase);
- if (spec.include_pattern && !M(testName, spec.include_pattern)) {
+ if (spec.includePattern && !M(testName, spec.includePattern)) {
+ continue;
+ }
+
+ if (suites) {
+ const ts = new Set(testCase.suites ?? []);
+ const intersection = new Set([...suites].filter((x) => ts.has(x)));
+ if (intersection.size === 0) {
+ continue;
+ }
+ }
+
+ if (spec.dryRun) {
+ console.log(`dry run: would run test ${testName}`);
continue;
}
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-wallet-core] branch master updated: implement test suites,
gnunet <=