aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-harness/src
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2023-06-19 16:03:06 +0200
committerFlorian Dold <florian@dold.me>2023-06-19 16:03:06 +0200
commit54f0c82999833132baf83995526025ac56d6fe06 (patch)
treeb0138031c4a0432ec5ecddb62be14b0432112a4b /packages/taler-harness/src
parentffa68ce8ddc77bf622af4234696a065cde482554 (diff)
downloadwallet-core-54f0c82999833132baf83995526025ac56d6fe06.tar.xz
wallet-core: fix peer-(push,pull)-debit withdrawal states
Diffstat (limited to 'packages/taler-harness/src')
-rw-r--r--packages/taler-harness/src/harness/harness.ts16
-rw-r--r--packages/taler-harness/src/harness/helpers.ts5
2 files changed, 18 insertions, 3 deletions
diff --git a/packages/taler-harness/src/harness/harness.ts b/packages/taler-harness/src/harness/harness.ts
index b0f411a8c..a2ff451d8 100644
--- a/packages/taler-harness/src/harness/harness.ts
+++ b/packages/taler-harness/src/harness/harness.ts
@@ -2179,6 +2179,20 @@ export class WalletService {
return unixPath;
}
+ get dbPath() {
+ return path.join(
+ this.globalState.testDir,
+ `walletdb-${this.opts.name}.json`,
+ );
+ }
+
+ async stop(): Promise<void> {
+ if (this.walletProc) {
+ this.walletProc.proc.kill("SIGTERM");
+ await this.walletProc.wait();
+ }
+ }
+
async start(): Promise<void> {
let dbPath: string;
if (this.opts.useInMemoryDb) {
@@ -2190,7 +2204,7 @@ export class WalletService {
);
}
const unixPath = this.socketPath;
- this.globalState.spawnService(
+ this.walletProc = this.globalState.spawnService(
"taler-wallet-cli",
[
"--wallet-db",
diff --git a/packages/taler-harness/src/harness/helpers.ts b/packages/taler-harness/src/harness/helpers.ts
index b13fa9cf4..6f70b9455 100644
--- a/packages/taler-harness/src/harness/helpers.ts
+++ b/packages/taler-harness/src/harness/helpers.ts
@@ -331,6 +331,7 @@ export async function createSimpleTestkudosEnvironmentV2(
export interface CreateWalletArgs {
handleNotification?(wn: WalletNotification): void;
name: string;
+ persistent?: boolean;
}
export async function createWalletDaemonWithClient(
@@ -338,8 +339,8 @@ export async function createWalletDaemonWithClient(
args: CreateWalletArgs,
): Promise<{ walletClient: WalletClient; walletService: WalletService }> {
const walletService = new WalletService(t, {
- name: "wallet",
- useInMemoryDb: true,
+ name: args.name,
+ useInMemoryDb: !args.persistent,
});
await walletService.start();
await walletService.pingUntilAvailable();