diff --git a/packages/taler-wallet-cli/src/bench1.ts b/packages/taler-wallet-cli/src/bench1.ts new file mode 100644 index 000000000..5563fc453 --- /dev/null +++ b/packages/taler-wallet-cli/src/bench1.ts @@ -0,0 +1,89 @@ +/* + This file is part of GNU Taler + (C) 2021 Taler Systems S.A. + + GNU Taler is free software; you can redistribute it and/or modify it under the + terms of the GNU General Public License as published by the Free Software + Foundation; either version 3, or (at your option) any later version. + + GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with + GNU Taler; see the file COPYING. If not, see + */ + +/** + * Imports. + */ +import { buildCodecForObject, codecForString } from "@gnu-taler/taler-util"; +import { + getDefaultNodeWallet, + NodeHttpLib, + WalletApiOperation, +} from "@gnu-taler/taler-wallet-core"; + +/** + * Entry point for the benchmark. + * + * The benchmark runs against an existing Taler deployment and does not + * set up its own services. + */ +export async function runBench1(configJson: any): Promise { + // Validate the configuration file for this benchmark. + const b1conf = codecForBench1Config().decode(configJson); + + const myHttpLib = new NodeHttpLib(); + const wallet = await getDefaultNodeWallet({ + // No persistent DB storage. + persistentStoragePath: undefined, + httpLib: myHttpLib, + }); + await wallet.client.call(WalletApiOperation.InitWallet, {}); + + await wallet.client.call(WalletApiOperation.WithdrawFakebank, { + amount: "TESTKUDOS:10", + bank: b1conf.bank, + exchange: b1conf.exchange, + }); + + await wallet.runTaskLoop({ + stopWhenDone: true, + }); + + await wallet.client.call(WalletApiOperation.CreateDepositGroup, { + amount: "TESTKUDOS:5", + depositPaytoUri: "payto://x-taler-bank/localhost/foo", + }); + + await wallet.runTaskLoop({ + stopWhenDone: true, + }); + + wallet.stop(); +} + +/** + * Format of the configuration file passed to the benchmark + */ +interface Bench1Config { + /** + * Base URL of the bank. + */ + bank: string; + + /** + * Base URL of the exchange. + */ + exchange: string; +} + +/** + * Schema validation codec for Bench1Config. + */ +const codecForBench1Config = () => + buildCodecForObject() + .property("bank", codecForString()) + .property("exchange", codecForString()) + .build("Bench1Config"); diff --git a/packages/taler-wallet-cli/src/env1.ts b/packages/taler-wallet-cli/src/env1.ts new file mode 100644 index 000000000..eb7da352c --- /dev/null +++ b/packages/taler-wallet-cli/src/env1.ts @@ -0,0 +1,68 @@ +/* + This file is part of GNU Taler + (C) 2021 Taler Systems S.A. + + GNU Taler is free software; you can redistribute it and/or modify it under the + terms of the GNU General Public License as published by the Free Software + Foundation; either version 3, or (at your option) any later version. + + GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with + GNU Taler; see the file COPYING. If not, see + */ + +/** + * Imports. + */ +import { URL } from "@gnu-taler/taler-util"; +import { CoinConfig, defaultCoinConfig } from "./harness/denomStructures.js"; +import { + GlobalTestState, + setupDb, + FakeBankService, + ExchangeService, +} from "./harness/harness.js"; + +/** + * Entry point for the benchmark. + * + * The benchmark runs against an existing Taler deployment and does not + * set up its own services. + */ +export async function runEnv1(t: GlobalTestState): Promise { + const db = await setupDb(t); + + const bank = await FakeBankService.create(t, { + currency: "TESTKUDOS", + httpPort: 8082, + }); + + const exchange = ExchangeService.create(t, { + name: "testexchange-1", + currency: "TESTKUDOS", + httpPort: 8081, + database: db.connStr, + }); + + exchange.addBankAccount("1", { + accountName: "exchange", + accountPassword: "x", + wireGatewayApiBaseUrl: new URL("/exchange/", bank.baseUrl).href, + accountPaytoUri: "payto://x-taler-bank/localhost/exchange", + }); + + await bank.start(); + + await bank.pingUntilAvailable(); + + const coinConfig: CoinConfig[] = defaultCoinConfig.map((x) => x("TESTKUDOS")); + exchange.addCoinConfigList(coinConfig); + + await exchange.start(); + await exchange.pingUntilAvailable(); + + console.log("setup done!"); +} diff --git a/packages/taler-wallet-cli/src/integrationtests/denomStructures.ts b/packages/taler-wallet-cli/src/harness/denomStructures.ts similarity index 100% rename from packages/taler-wallet-cli/src/integrationtests/denomStructures.ts rename to packages/taler-wallet-cli/src/harness/denomStructures.ts diff --git a/packages/taler-wallet-cli/src/integrationtests/faultInjection.ts b/packages/taler-wallet-cli/src/harness/faultInjection.ts similarity index 99% rename from packages/taler-wallet-cli/src/integrationtests/faultInjection.ts rename to packages/taler-wallet-cli/src/harness/faultInjection.ts index 474482ec0..4c3d0c123 100644 --- a/packages/taler-wallet-cli/src/integrationtests/faultInjection.ts +++ b/packages/taler-wallet-cli/src/harness/faultInjection.ts @@ -31,7 +31,7 @@ import { ExchangeServiceInterface, MerchantServiceInterface, MerchantService, -} from "./harness"; +} from "../harness/harness.js"; export interface FaultProxyConfig { inboundPort: number; diff --git a/packages/taler-wallet-cli/src/integrationtests/harness.ts b/packages/taler-wallet-cli/src/harness/harness.ts similarity index 99% rename from packages/taler-wallet-cli/src/integrationtests/harness.ts rename to packages/taler-wallet-cli/src/harness/harness.ts index 6644e567f..b4ac16dbf 100644 --- a/packages/taler-wallet-cli/src/integrationtests/harness.ts +++ b/packages/taler-wallet-cli/src/harness/harness.ts @@ -28,6 +28,7 @@ import * as util from "util"; import * as fs from "fs"; import * as path from "path"; import * as http from "http"; +import * as readline from "readline"; import { deepStrictEqual } from "assert"; import { ChildProcess, spawn } from "child_process"; import { URL } from "url"; @@ -1626,6 +1627,7 @@ export async function runTestWithState( gc: GlobalTestState, testMain: (t: GlobalTestState) => Promise, testName: string, + linger: boolean = false, ): Promise { const startMs = new Date().getTime(); @@ -1649,6 +1651,19 @@ export async function runTestWithState( console.log("running test in directory", gc.testDir); await Promise.race([testMain(gc), p.promise]); status = "pass"; + if (linger) { + const rl = readline.createInterface({ + input: process.stdin, + output: process.stdout, + terminal: true, + }); + await new Promise((resolve, reject) => { + rl.question("Press enter to shut down test.", () => { + resolve(); + }); + }); + rl.close(); + } } catch (e) { console.error("FATAL: test failed with exception", e); status = "fail"; diff --git a/packages/taler-wallet-cli/src/integrationtests/helpers.ts b/packages/taler-wallet-cli/src/harness/helpers.ts similarity index 100% rename from packages/taler-wallet-cli/src/integrationtests/helpers.ts rename to packages/taler-wallet-cli/src/harness/helpers.ts diff --git a/packages/taler-wallet-cli/src/integrationtests/libeufin.ts b/packages/taler-wallet-cli/src/harness/libeufin.ts similarity index 99% rename from packages/taler-wallet-cli/src/integrationtests/libeufin.ts rename to packages/taler-wallet-cli/src/harness/libeufin.ts index 2ee98952a..11447b389 100644 --- a/packages/taler-wallet-cli/src/integrationtests/libeufin.ts +++ b/packages/taler-wallet-cli/src/harness/libeufin.ts @@ -19,7 +19,7 @@ */ import axios from "axios"; import { URL } from "@gnu-taler/taler-util"; -import { getRandomIban, getRandomString } from "./helpers"; +import { getRandomIban, getRandomString } from "../harness/helpers.js"; import { GlobalTestState, DbInfo, @@ -28,7 +28,7 @@ import { runCommand, setupDb, sh, -} from "./harness"; +} from "../harness/harness.js"; export interface LibeufinSandboxServiceInterface { baseUrl: string; diff --git a/packages/taler-wallet-cli/src/integrationtests/merchantApiTypes.ts b/packages/taler-wallet-cli/src/harness/merchantApiTypes.ts similarity index 100% rename from packages/taler-wallet-cli/src/integrationtests/merchantApiTypes.ts rename to packages/taler-wallet-cli/src/harness/merchantApiTypes.ts diff --git a/packages/taler-wallet-cli/src/integrationtests/sync.ts b/packages/taler-wallet-cli/src/harness/sync.ts similarity index 99% rename from packages/taler-wallet-cli/src/integrationtests/sync.ts rename to packages/taler-wallet-cli/src/harness/sync.ts index fccff715f..16be89eff 100644 --- a/packages/taler-wallet-cli/src/integrationtests/sync.ts +++ b/packages/taler-wallet-cli/src/harness/sync.ts @@ -24,7 +24,7 @@ import { GlobalTestState, pingProc, ProcessWrapper, -} from "./harness"; +} from "../harness/harness.js"; import { Configuration } from "@gnu-taler/taler-util"; const exec = util.promisify(require("child_process").exec); diff --git a/packages/taler-wallet-cli/src/index.ts b/packages/taler-wallet-cli/src/index.ts index a5e129d92..142e98e7c 100644 --- a/packages/taler-wallet-cli/src/index.ts +++ b/packages/taler-wallet-cli/src/index.ts @@ -19,6 +19,7 @@ */ import os from "os"; import fs from "fs"; +import path from "path"; import { deepStrictEqual } from "assert"; // Polyfill for encoding which isn't present globally in older nodejs versions import { TextEncoder, TextDecoder } from "util"; @@ -56,6 +57,9 @@ import { Wallet, } from "@gnu-taler/taler-wallet-core"; import { lintExchangeDeployment } from "./lint.js"; +import { runBench1 } from "./bench1.js"; +import { runEnv1 } from "./env1.js"; +import { GlobalTestState, runTestWithState } from "./harness/harness.js"; // This module also serves as the entry point for the crypto // thread worker, and thus must expose these two handlers. @@ -634,6 +638,33 @@ const advancedCli = walletCli.subcommand("advancedArgs", "advanced", { "Subcommands for advanced operations (only use if you know what you're doing!).", }); +advancedCli + .subcommand("bench1", "bench1", { + help: "Run the 'bench1' benchmark", + }) + .requiredOption("configJson", ["--config-json"], clk.STRING) + .action(async (args) => { + let config: any; + try { + config = JSON.parse(args.bench1.configJson); + } catch (e) { + console.log("Could not parse config JSON"); + } + await runBench1(config); + }); + +advancedCli + .subcommand("env1", "env1", { + help: "Run a test environment for bench1", + }) + .action(async (args) => { + const testDir = fs.mkdtempSync(path.join(os.tmpdir(), "taler-env1-")); + const testState = new GlobalTestState({ + testDir, + }); + await runTestWithState(testState, runEnv1, "env1", true); + }); + advancedCli .subcommand("withdrawFakebank", "withdraw-fakebank", { help: "Withdraw via a fakebank.", @@ -642,7 +673,7 @@ advancedCli help: "Base URL of the exchange to use", }) .requiredOption("amount", ["--amount"], clk.STRING, { - help: "Amount to withdraw (before fees)." + help: "Amount to withdraw (before fees).", }) .requiredOption("bank", ["--bank"], clk.STRING, { help: "Base URL of the Taler fakebank service.", diff --git a/packages/taler-wallet-cli/src/integrationtests/scenario-prompt-payment.ts b/packages/taler-wallet-cli/src/integrationtests/scenario-prompt-payment.ts index e3c2af8e6..ea05de8e9 100644 --- a/packages/taler-wallet-cli/src/integrationtests/scenario-prompt-payment.ts +++ b/packages/taler-wallet-cli/src/integrationtests/scenario-prompt-payment.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState, MerchantPrivateApi } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; /** * Run test for basic, bank-integrated withdrawal. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-bank-api.ts b/packages/taler-wallet-cli/src/integrationtests/test-bank-api.ts index d6d0e2dce..0f8af05e5 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-bank-api.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-bank-api.ts @@ -27,9 +27,9 @@ import { BankApi, BankAccessApi, CreditDebitIndicator, -} from "./harness"; +} from "../harness/harness.js"; import { createEddsaKeyPair, encodeCrock } from "@gnu-taler/taler-util"; -import { defaultCoinConfig } from "./denomStructures"; +import { defaultCoinConfig } from "../harness/denomStructures"; /** * Run test for basic, bank-integrated withdrawal. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-claim-loop.ts b/packages/taler-wallet-cli/src/integrationtests/test-claim-loop.ts index 46882d5c4..a509e3b19 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-claim-loop.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-claim-loop.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState, MerchantPrivateApi } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; import { URL } from "url"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; diff --git a/packages/taler-wallet-cli/src/integrationtests/test-denom-unoffered.ts b/packages/taler-wallet-cli/src/integrationtests/test-denom-unoffered.ts index 430a1ac93..28cca0758 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-denom-unoffered.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-denom-unoffered.ts @@ -27,8 +27,8 @@ import { WalletApiOperation, } from "@gnu-taler/taler-wallet-core"; import { makeEventId } from "@gnu-taler/taler-wallet-core"; -import { GlobalTestState, MerchantPrivateApi } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; export async function runDenomUnofferedTest(t: GlobalTestState) { // Set up test environment diff --git a/packages/taler-wallet-cli/src/integrationtests/test-deposit.ts b/packages/taler-wallet-cli/src/integrationtests/test-deposit.ts index 156661e46..f33c8338b 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-deposit.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-deposit.ts @@ -18,8 +18,8 @@ * Imports. */ import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { GlobalTestState } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; /** * Run test for basic, bank-integrated withdrawal and payment. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-exchange-management.ts b/packages/taler-wallet-cli/src/integrationtests/test-exchange-management.ts index 9cbdbd34c..8a5d563ce 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-exchange-management.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-exchange-management.ts @@ -26,7 +26,7 @@ import { MerchantService, BankApi, BankAccessApi, -} from "./harness"; +} from "../harness/harness.js"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; import { ExchangesListRespose, @@ -36,8 +36,8 @@ import { import { FaultInjectedExchangeService, FaultInjectionResponseContext, -} from "./faultInjection"; -import { defaultCoinConfig } from "./denomStructures"; +} from "../harness/faultInjection"; +import { defaultCoinConfig } from "../harness/denomStructures"; /** * Test if the wallet handles outdated exchange versions correct.y diff --git a/packages/taler-wallet-cli/src/integrationtests/test-exchange-timetravel.ts b/packages/taler-wallet-cli/src/integrationtests/test-exchange-timetravel.ts index 50065c0df..56684f70a 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-exchange-timetravel.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-exchange-timetravel.ts @@ -31,7 +31,7 @@ import { readSuccessResponseJsonOrThrow, WalletApiOperation, } from "@gnu-taler/taler-wallet-core"; -import { makeNoFeeCoinConfig } from "./denomStructures"; +import { makeNoFeeCoinConfig } from "../harness/denomStructures"; import { BankService, ExchangeService, @@ -40,8 +40,8 @@ import { MerchantService, setupDb, WalletCli, -} from "./harness"; -import { startWithdrawViaBank, withdrawViaBank } from "./helpers"; +} from "../harness/harness.js"; +import { startWithdrawViaBank, withdrawViaBank } from "../harness/helpers.js"; async function applyTimeTravel( timetravelDuration: Duration, diff --git a/packages/taler-wallet-cli/src/integrationtests/test-fee-regression.ts b/packages/taler-wallet-cli/src/integrationtests/test-fee-regression.ts index ae8cf0e17..025e12226 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-fee-regression.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-fee-regression.ts @@ -25,12 +25,12 @@ import { MerchantService, setupDb, WalletCli, -} from "./harness"; +} from "../harness/harness.js"; import { withdrawViaBank, makeTestPayment, SimpleTestEnvironment, -} from "./helpers"; +} from "../harness/helpers.js"; /** * Run a test case with a simple TESTKUDOS Taler environment, consisting diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankaccount.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankaccount.ts index 8e079caa4..839ad5fa7 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankaccount.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankaccount.ts @@ -17,7 +17,7 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { NexusUserBundle, LibeufinNexusApi, @@ -25,7 +25,7 @@ import { LibeufinSandboxService, LibeufinSandboxApi, findNexusPayment, -} from "./libeufin"; +} from "../harness/libeufin"; /** * Run basic test with LibEuFin. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankconnection.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankconnection.ts index f8bee7f16..f1d507c03 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankconnection.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankconnection.ts @@ -17,7 +17,7 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { NexusUserBundle, LibeufinNexusApi, @@ -25,7 +25,7 @@ import { LibeufinSandboxService, LibeufinSandboxApi, findNexusPayment, -} from "./libeufin"; +} from "../harness/libeufin"; /** * Run basic test with LibEuFin. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-facade-bad-request.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-facade-bad-request.ts index 1917c0c11..b106cf304 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-facade-bad-request.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-facade-bad-request.ts @@ -19,13 +19,13 @@ */ import axios from "axios"; import { URL } from "@gnu-taler/taler-util"; -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { SandboxUserBundle, NexusUserBundle, launchLibeufinServices, LibeufinNexusApi, -} from "./libeufin"; +} from "../harness/libeufin"; export async function runLibeufinApiFacadeBadRequestTest(t: GlobalTestState) { diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-facade.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-facade.ts index b0e569146..c49d49712 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-facade.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-facade.ts @@ -17,13 +17,13 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { SandboxUserBundle, NexusUserBundle, launchLibeufinServices, LibeufinNexusApi, -} from "./libeufin"; +} from "../harness/libeufin"; /** * Run basic test with LibEuFin. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-permissions.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-permissions.ts index abb843c94..e64f459a0 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-permissions.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-permissions.ts @@ -17,12 +17,12 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { NexusUserBundle, LibeufinNexusApi, LibeufinNexusService, -} from "./libeufin"; +} from "../harness/libeufin"; /** * Run basic test with LibEuFin. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-sandbox-camt.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-sandbox-camt.ts index ef8a1f2b5..f5df4cfa3 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-sandbox-camt.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-sandbox-camt.ts @@ -17,7 +17,7 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { NexusUserBundle, LibeufinNexusApi, @@ -25,7 +25,7 @@ import { LibeufinSandboxService, LibeufinSandboxApi, findNexusPayment, -} from "./libeufin"; +} from "../harness/libeufin"; // This test only checks that LibEuFin doesn't fail when // it generates Camt statements - no assertions take place. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-sandbox-transactions.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-sandbox-transactions.ts index f9676c58c..a90644926 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-sandbox-transactions.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-sandbox-transactions.ts @@ -17,7 +17,7 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { NexusUserBundle, LibeufinNexusApi, @@ -25,7 +25,7 @@ import { LibeufinSandboxService, LibeufinSandboxApi, findNexusPayment, -} from "./libeufin"; +} from "../harness/libeufin"; export async function runLibeufinApiSandboxTransactionsTest(t: GlobalTestState) { diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-scheduling.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-scheduling.ts index d543bc4ab..3863c5711 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-scheduling.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-scheduling.ts @@ -17,7 +17,7 @@ /** * Imports. */ -import { GlobalTestState, setupDb } from "./harness"; +import { GlobalTestState, setupDb } from "../harness/harness.js"; import { SandboxUserBundle, NexusUserBundle, @@ -25,7 +25,7 @@ import { LibeufinSandboxApi, LibeufinNexusApi, LibeufinNexusService, -} from "./libeufin"; +} from "../harness/libeufin"; /** * Test Nexus scheduling API. It creates a task, check whether it shows @@ -72,7 +72,7 @@ export async function runLibeufinApiSchedulingTest(t: GlobalTestState) { user01nexus.localAccountName, "test-task", ); - } catch (err) { + } catch (err: any) { t.assertTrue(err.response.status == 404); } @@ -100,7 +100,7 @@ export async function runLibeufinApiSchedulingTest(t: GlobalTestState) { user01nexus.localAccountName, "test-task", ); - } catch (err) { + } catch (err: any) { t.assertTrue(err.response.status == 404); } } diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-users.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-users.ts index b53db4212..edf66690b 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-users.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-users.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; -import { LibeufinNexusApi, LibeufinNexusService } from "./libeufin"; +import { GlobalTestState } from "../harness/harness.js"; +import { LibeufinNexusApi, LibeufinNexusService } from "../harness/libeufin"; /** * Run basic test with LibEuFin. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-bad-gateway.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-bad-gateway.ts index 3da5850cf..786e61832 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-bad-gateway.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-bad-gateway.ts @@ -17,13 +17,13 @@ /** * Imports. */ -import { GlobalTestState, delayMs } from "./harness"; +import { GlobalTestState, delayMs } from "../harness/harness.js"; import { NexusUserBundle, LibeufinNexusApi, LibeufinNexusService, LibeufinSandboxService, -} from "./libeufin"; +} from "../harness/libeufin"; /** * Testing how Nexus reacts when the Sandbox is unreachable. @@ -65,7 +65,7 @@ export async function runLibeufinBadGatewayTest(t: GlobalTestState) { libeufinNexus, user01nexus.connReq.name, ); - } catch(e) { + } catch(e: any) { t.assertTrue(e.response.status == 502); return; } diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-basic.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-basic.ts index b284d7299..9e1842d03 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-basic.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-basic.ts @@ -19,7 +19,7 @@ */ import { CoreApiResponse } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { CoinConfig, defaultCoinConfig } from "./denomStructures"; +import { CoinConfig, defaultCoinConfig } from "../harness/denomStructures"; import { DbInfo, HarnessExchangeBankAccount, @@ -28,14 +28,14 @@ import { MerchantService, setupDb, WalletCli, -} from "./harness"; -import { makeTestPayment } from "./helpers"; +} from "../harness/harness.js"; +import { makeTestPayment } from "../harness/helpers.js"; import { LibeufinNexusApi, LibeufinNexusService, LibeufinSandboxApi, LibeufinSandboxService, -} from "./libeufin"; +} from "../harness/libeufin"; const exchangeIban = "DE71500105179674997361"; const customerIban = "DE84500105176881385584"; diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-c5x.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-c5x.ts index e45f0a239..5a995fb69 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-c5x.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-c5x.ts @@ -17,14 +17,14 @@ /** * Imports. */ -import { GlobalTestState, delayMs } from "./harness"; +import { GlobalTestState, delayMs } from "../harness/harness.js"; import { SandboxUserBundle, NexusUserBundle, launchLibeufinServices, LibeufinSandboxApi, LibeufinNexusApi, -} from "./libeufin"; +} from "../harness/libeufin"; /** * This test checks how the C52 and C53 coordinate. It'll test diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-facade-anastasis.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-facade-anastasis.ts index 143870128..0bbd4fd28 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-facade-anastasis.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-facade-anastasis.ts @@ -17,14 +17,14 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { SandboxUserBundle, NexusUserBundle, launchLibeufinServices, LibeufinNexusApi, LibeufinSandboxApi, -} from "./libeufin"; +} from "../harness/libeufin"; /** * Testing the Anastasis API, offered by the Anastasis facade. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-keyrotation.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-keyrotation.ts index 8e527804c..5dc31f0bf 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-keyrotation.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-keyrotation.ts @@ -17,14 +17,14 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { SandboxUserBundle, NexusUserBundle, launchLibeufinServices, LibeufinSandboxApi, LibeufinNexusApi, -} from "./libeufin"; +} from "../harness/libeufin"; /** * Run basic test with LibEuFin. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-nexus-balance.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-nexus-balance.ts index c00a102d3..23d76081f 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-nexus-balance.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-nexus-balance.ts @@ -17,14 +17,14 @@ /** * Imports. */ -import { GlobalTestState, delayMs } from "./harness"; +import { GlobalTestState, delayMs } from "../harness/harness.js"; import { SandboxUserBundle, NexusUserBundle, launchLibeufinServices, LibeufinSandboxApi, LibeufinNexusApi, -} from "./libeufin"; +} from "../harness/libeufin"; /** * This test checks how the C52 and C53 coordinate. It'll test diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund-multiple-users.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund-multiple-users.ts index 234a7bae8..39517f247 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund-multiple-users.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund-multiple-users.ts @@ -17,14 +17,14 @@ /** * Imports. */ -import { GlobalTestState, delayMs } from "./harness"; +import { GlobalTestState, delayMs } from "../harness/harness.js"; import { SandboxUserBundle, NexusUserBundle, launchLibeufinServices, LibeufinSandboxApi, LibeufinNexusApi, -} from "./libeufin"; +} from "../harness/libeufin"; /** * User 01 expects a refund from user 02, and expectedly user 03 diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund.ts index 5d5370d02..d91ae88bb 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund.ts @@ -17,14 +17,14 @@ /** * Imports. */ -import { GlobalTestState, delayMs } from "./harness"; +import { GlobalTestState, delayMs } from "../harness/harness.js"; import { SandboxUserBundle, NexusUserBundle, launchLibeufinServices, LibeufinSandboxApi, LibeufinNexusApi, -} from "./libeufin"; +} from "../harness/libeufin"; /** * Run basic test with LibEuFin. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-sandbox-wire-transfer-cli.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-sandbox-wire-transfer-cli.ts index 503468990..5560f091a 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-sandbox-wire-transfer-cli.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-sandbox-wire-transfer-cli.ts @@ -17,7 +17,7 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { NexusUserBundle, LibeufinNexusApi, @@ -25,7 +25,7 @@ import { LibeufinSandboxService, LibeufinSandboxApi, findNexusPayment, -} from "./libeufin"; +} from "../harness/libeufin"; export async function runLibeufinSandboxWireTransferCliTest(t: GlobalTestState) { diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-tutorial.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-tutorial.ts index eee1b8935..71a1e8c4b 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-tutorial.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-tutorial.ts @@ -17,12 +17,12 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { LibeufinNexusService, LibeufinSandboxService, LibeufinCli, -} from "./libeufin"; +} from "../harness/libeufin"; /** * Run basic test with LibEuFin. 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 4cf9c39b4..8e8f966b9 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 @@ -25,12 +25,12 @@ import { MerchantService, setupDb, WalletCli, -} from "./harness"; +} from "../harness/harness.js"; import { withdrawViaBank, createFaultInjectedMerchantTestkudosEnvironment, FaultyMerchantTestEnvironment, -} from "./helpers"; +} from "../harness/helpers.js"; import { PreparePayResultType, codecForMerchantOrderStatusUnpaid, @@ -41,8 +41,8 @@ import { FaultInjectedExchangeService, FaultInjectedMerchantService, FaultInjectionRequestContext, -} from "./faultInjection"; -import { defaultCoinConfig } from "./denomStructures"; +} from "../harness/faultInjection"; +import { defaultCoinConfig } from "../harness/denomStructures"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; import { URL } from "url"; diff --git a/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances-delete.ts b/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances-delete.ts index 28f729692..589c79120 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances-delete.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances-delete.ts @@ -25,7 +25,7 @@ import { MerchantApiClient, MerchantService, setupDb, -} from "./harness"; +} from "../harness/harness.js"; /** * Test instance deletion and authentication for it diff --git a/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances-urls.ts b/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances-urls.ts index c2f7c5179..fc5e7305a 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances-urls.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances-urls.ts @@ -24,7 +24,7 @@ import { MerchantApiClient, MerchantService, setupDb, -} from "./harness"; +} from "../harness/harness.js"; /** * Do basic checks on instance management and authentication. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances.ts b/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances.ts index da45b4661..46af87922 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-merchant-instances.ts @@ -25,7 +25,7 @@ import { MerchantApiClient, MerchantService, setupDb, -} from "./harness"; +} from "../harness/harness.js"; /** * Do basic checks on instance management and authentication. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-merchant-longpolling.ts b/packages/taler-wallet-cli/src/integrationtests/test-merchant-longpolling.ts index 6516327c2..556d9074e 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-merchant-longpolling.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-merchant-longpolling.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState, MerchantPrivateApi } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; import { PreparePayResultType, codecForMerchantOrderStatusUnpaid, diff --git a/packages/taler-wallet-cli/src/integrationtests/test-merchant-refund-api.ts b/packages/taler-wallet-cli/src/integrationtests/test-merchant-refund-api.ts index dc7863874..466b1efbd 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-merchant-refund-api.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-merchant-refund-api.ts @@ -24,8 +24,8 @@ import { MerchantServiceInterface, WalletCli, ExchangeServiceInterface, -} from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +} from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; import { URL, durationFromSpec, diff --git a/packages/taler-wallet-cli/src/integrationtests/test-merchant-spec-public-orders.ts b/packages/taler-wallet-cli/src/integrationtests/test-merchant-spec-public-orders.ts index 867af99d5..70edaaf0c 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-merchant-spec-public-orders.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-merchant-spec-public-orders.ts @@ -32,11 +32,11 @@ import { MerchantPrivateApi, MerchantService, WalletCli, -} from "./harness"; +} from "../harness/harness.js"; import { createSimpleTestkudosEnvironment, withdrawViaBank, -} from "./helpers.js"; +} from "../harness/helpers.js"; const httpLib = new NodeHttpLib(); diff --git a/packages/taler-wallet-cli/src/integrationtests/test-pay-abort.ts b/packages/taler-wallet-cli/src/integrationtests/test-pay-abort.ts index 709ad1061..0fa9ec81d 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-pay-abort.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-pay-abort.ts @@ -27,12 +27,12 @@ import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; import { FaultInjectionRequestContext, FaultInjectionResponseContext, -} from "./faultInjection"; -import { GlobalTestState, MerchantPrivateApi, setupDb } from "./harness"; +} from "../harness/faultInjection"; +import { GlobalTestState, MerchantPrivateApi, setupDb } from "../harness/harness.js"; import { createFaultInjectedMerchantTestkudosEnvironment, withdrawViaBank, -} from "./helpers"; +} from "../harness/helpers.js"; /** * Run test for basic, bank-integrated withdrawal. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-pay-paid.ts b/packages/taler-wallet-cli/src/integrationtests/test-pay-paid.ts index 64645dce2..2d291ddd3 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-pay-paid.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-pay-paid.ts @@ -17,11 +17,11 @@ /** * Imports. */ -import { GlobalTestState, MerchantPrivateApi } from "./harness"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; import { withdrawViaBank, createFaultInjectedMerchantTestkudosEnvironment, -} from "./helpers"; +} from "../harness/helpers.js"; import { PreparePayResultType, codecForMerchantOrderStatusUnpaid, @@ -29,7 +29,7 @@ import { URL, } from "@gnu-taler/taler-util"; import axios from "axios"; -import { FaultInjectionRequestContext } from "./faultInjection"; +import { FaultInjectionRequestContext } from "../harness/faultInjection"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; /** diff --git a/packages/taler-wallet-cli/src/integrationtests/test-payment-claim.ts b/packages/taler-wallet-cli/src/integrationtests/test-payment-claim.ts index 9620db6d5..ba3bd8e0a 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-payment-claim.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-payment-claim.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState, MerchantPrivateApi, WalletCli } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState, MerchantPrivateApi, WalletCli } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; import { PreparePayResultType } from "@gnu-taler/taler-util"; import { TalerErrorCode } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; diff --git a/packages/taler-wallet-cli/src/integrationtests/test-payment-fault.ts b/packages/taler-wallet-cli/src/integrationtests/test-payment-fault.ts index 57ad6a4ff..2be01d919 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-payment-fault.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-payment-fault.ts @@ -31,14 +31,14 @@ import { MerchantPrivateApi, BankApi, BankAccessApi, -} from "./harness"; +} from "../harness/harness.js"; import { FaultInjectedExchangeService, FaultInjectionRequestContext, FaultInjectionResponseContext, -} from "./faultInjection"; +} from "../harness/faultInjection"; import { CoreApiResponse } from "@gnu-taler/taler-util"; -import { defaultCoinConfig } from "./denomStructures"; +import { defaultCoinConfig } from "../harness/denomStructures"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; /** diff --git a/packages/taler-wallet-cli/src/integrationtests/test-payment-forgettable.ts b/packages/taler-wallet-cli/src/integrationtests/test-payment-forgettable.ts index 49ffadc93..3bdd6bef3 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-payment-forgettable.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-payment-forgettable.ts @@ -17,12 +17,12 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { createSimpleTestkudosEnvironment, withdrawViaBank, makeTestPayment, -} from "./helpers"; +} from "../harness/helpers.js"; /** * Run test for payment with a contract that has forgettable fields. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-payment-idempotency.ts b/packages/taler-wallet-cli/src/integrationtests/test-payment-idempotency.ts index 58c951b68..9378465a0 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-payment-idempotency.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-payment-idempotency.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState, MerchantPrivateApi } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; import { PreparePayResultType } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; diff --git a/packages/taler-wallet-cli/src/integrationtests/test-payment-multiple.ts b/packages/taler-wallet-cli/src/integrationtests/test-payment-multiple.ts index f545d5861..754c3a0e8 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-payment-multiple.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-payment-multiple.ts @@ -25,9 +25,9 @@ import { MerchantService, WalletCli, MerchantPrivateApi, -} from "./harness"; -import { withdrawViaBank } from "./helpers"; -import { coin_ct10, coin_u1 } from "./denomStructures"; +} from "../harness/harness.js"; +import { withdrawViaBank } from "../harness/helpers.js"; +import { coin_ct10, coin_u1 } from "../harness/denomStructures"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; async function setupTest( diff --git a/packages/taler-wallet-cli/src/integrationtests/test-payment-on-demo.ts b/packages/taler-wallet-cli/src/integrationtests/test-payment-on-demo.ts index 0dabc9ca5..1d419fd9a 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-payment-on-demo.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-payment-on-demo.ts @@ -22,10 +22,10 @@ import { BankApi, WalletCli, BankAccessApi -} from "./harness"; +} from "../harness/harness.js"; import { makeTestPayment, -} from "./helpers"; +} from "../harness/helpers.js"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; /** diff --git a/packages/taler-wallet-cli/src/integrationtests/test-payment-transient.ts b/packages/taler-wallet-cli/src/integrationtests/test-payment-transient.ts index b171ff66a..75d44d495 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-payment-transient.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-payment-transient.ts @@ -17,16 +17,16 @@ /** * Imports. */ -import { GlobalTestState, MerchantPrivateApi } from "./harness"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; import { withdrawViaBank, createFaultInjectedMerchantTestkudosEnvironment, -} from "./helpers"; +} from "../harness/helpers.js"; import axios from "axios"; import { FaultInjectionRequestContext, FaultInjectionResponseContext, -} from "./faultInjection"; +} from "../harness/faultInjection"; import { codecForMerchantOrderStatusUnpaid, ConfirmPayResultType, diff --git a/packages/taler-wallet-cli/src/integrationtests/test-payment-zero.ts b/packages/taler-wallet-cli/src/integrationtests/test-payment-zero.ts index 771ca27e8..c38b8b382 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-payment-zero.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-payment-zero.ts @@ -18,12 +18,12 @@ * Imports. */ import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { createSimpleTestkudosEnvironment, withdrawViaBank, makeTestPayment, -} from "./helpers"; +} from "../harness/helpers.js"; /** * Run test for a payment for a "free" order with diff --git a/packages/taler-wallet-cli/src/integrationtests/test-payment.ts b/packages/taler-wallet-cli/src/integrationtests/test-payment.ts index 3512ff046..967d491be 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-payment.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-payment.ts @@ -17,12 +17,12 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { createSimpleTestkudosEnvironment, withdrawViaBank, makeTestPayment, -} from "./helpers"; +} from "../harness/helpers.js"; /** * Run test for basic, bank-integrated withdrawal and payment. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-paywall-flow.ts b/packages/taler-wallet-cli/src/integrationtests/test-paywall-flow.ts index 04eee79e3..a8e3b3e95 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-paywall-flow.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-paywall-flow.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState, MerchantPrivateApi } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; import { PreparePayResultType, codecForMerchantOrderStatusUnpaid, diff --git a/packages/taler-wallet-cli/src/integrationtests/test-refund-auto.ts b/packages/taler-wallet-cli/src/integrationtests/test-refund-auto.ts index f1e79f4b9..230fc942d 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-refund-auto.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-refund-auto.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState, MerchantPrivateApi } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; import { durationFromSpec } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; diff --git a/packages/taler-wallet-cli/src/integrationtests/test-refund-gone.ts b/packages/taler-wallet-cli/src/integrationtests/test-refund-gone.ts index b4276248e..acb74b3d3 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-refund-gone.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-refund-gone.ts @@ -17,12 +17,12 @@ /** * Imports. */ -import { GlobalTestState, MerchantPrivateApi } from "./harness"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; import { createSimpleTestkudosEnvironment, withdrawViaBank, applyTimeTravel, -} from "./helpers"; +} from "../harness/helpers.js"; import { durationFromSpec, timestampAddDuration, diff --git a/packages/taler-wallet-cli/src/integrationtests/test-refund-incremental.ts b/packages/taler-wallet-cli/src/integrationtests/test-refund-incremental.ts index 11e1226d1..47c2293e2 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-refund-incremental.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-refund-incremental.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState, delayMs, MerchantPrivateApi } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState, delayMs, MerchantPrivateApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; import { TransactionType, Amounts, diff --git a/packages/taler-wallet-cli/src/integrationtests/test-refund.ts b/packages/taler-wallet-cli/src/integrationtests/test-refund.ts index 1808f7d73..f11771922 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-refund.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-refund.ts @@ -19,8 +19,8 @@ */ import { durationFromSpec } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { GlobalTestState, MerchantPrivateApi } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; +import { GlobalTestState, MerchantPrivateApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; /** * Run test for basic, bank-integrated withdrawal. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-revocation.ts b/packages/taler-wallet-cli/src/integrationtests/test-revocation.ts index fc1ffb267..276c532b5 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-revocation.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-revocation.ts @@ -18,7 +18,7 @@ * Imports. */ import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { CoinConfig } from "./denomStructures"; +import { CoinConfig } from "../harness/denomStructures"; import { GlobalTestState, ExchangeService, @@ -27,12 +27,12 @@ import { setupDb, BankService, delayMs, -} from "./harness"; +} from "../harness/harness.js"; import { withdrawViaBank, makeTestPayment, SimpleTestEnvironment, -} from "./helpers"; +} from "../harness/helpers.js"; async function revokeAllWalletCoins(req: { wallet: WalletCli; diff --git a/packages/taler-wallet-cli/src/integrationtests/test-timetravel-autorefresh.ts b/packages/taler-wallet-cli/src/integrationtests/test-timetravel-autorefresh.ts index bad821198..e20d8bdad 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-timetravel-autorefresh.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-timetravel-autorefresh.ts @@ -27,7 +27,7 @@ import { PendingOperationsResponse, WalletApiOperation, } from "@gnu-taler/taler-wallet-core"; -import { makeNoFeeCoinConfig } from "./denomStructures"; +import { makeNoFeeCoinConfig } from "../harness/denomStructures"; import { BankService, ExchangeService, @@ -36,8 +36,8 @@ import { MerchantService, setupDb, WalletCli, -} from "./harness"; -import { startWithdrawViaBank, withdrawViaBank } from "./helpers"; +} from "../harness/harness.js"; +import { startWithdrawViaBank, withdrawViaBank } from "../harness/helpers.js"; async function applyTimeTravel( timetravelDuration: Duration, diff --git a/packages/taler-wallet-cli/src/integrationtests/test-timetravel-withdraw.ts b/packages/taler-wallet-cli/src/integrationtests/test-timetravel-withdraw.ts index b9e45c862..2ff857057 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-timetravel-withdraw.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-timetravel-withdraw.ts @@ -17,12 +17,12 @@ /** * Imports. */ -import { GlobalTestState } from "./harness"; +import { GlobalTestState } from "../harness/harness.js"; import { createSimpleTestkudosEnvironment, withdrawViaBank, startWithdrawViaBank, -} from "./helpers"; +} from "../harness/helpers.js"; import { Duration, TransactionType } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; diff --git a/packages/taler-wallet-cli/src/integrationtests/test-tipping.ts b/packages/taler-wallet-cli/src/integrationtests/test-tipping.ts index 2421b462f..c6a7f8402 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-tipping.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-tipping.ts @@ -18,8 +18,8 @@ * Imports. */ import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { GlobalTestState, MerchantPrivateApi, BankApi } from "./harness"; -import { createSimpleTestkudosEnvironment } from "./helpers"; +import { GlobalTestState, MerchantPrivateApi, BankApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment } from "../harness/helpers.js"; /** * Run test for basic, bank-integrated withdrawal. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts b/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts index 7debfe6b6..23e01e5e1 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts @@ -18,9 +18,9 @@ * Imports. */ import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { GlobalTestState, WalletCli } from "./harness"; -import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers"; -import { SyncService } from "./sync"; +import { GlobalTestState, WalletCli } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment, withdrawViaBank } from "../harness/helpers.js"; +import { SyncService } from "../harness/sync"; /** * Run test for basic, bank-integrated withdrawal. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-doublespend.ts b/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-doublespend.ts index ab2687fc3..8c20dcc2b 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-doublespend.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-doublespend.ts @@ -19,13 +19,13 @@ */ import { PreparePayResultType } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { GlobalTestState, WalletCli, MerchantPrivateApi } from "./harness"; +import { GlobalTestState, WalletCli, MerchantPrivateApi } from "../harness/harness.js"; import { createSimpleTestkudosEnvironment, makeTestPayment, withdrawViaBank, -} from "./helpers"; -import { SyncService } from "./sync"; +} from "../harness/helpers.js"; +import { SyncService } from "../harness/sync"; /** * Run test for basic, bank-integrated withdrawal. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-wallettesting.ts b/packages/taler-wallet-cli/src/integrationtests/test-wallettesting.ts index 2499e65a0..c21a7279b 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-wallettesting.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-wallettesting.ts @@ -24,7 +24,7 @@ */ import { Amounts } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { CoinConfig, defaultCoinConfig } from "./denomStructures.js"; +import { CoinConfig, defaultCoinConfig } from "../harness/denomStructures.js"; import { BankService, ExchangeService, @@ -32,8 +32,8 @@ import { MerchantService, setupDb, WalletCli, -} from "./harness.js"; -import { SimpleTestEnvironment } from "./helpers.js"; +} from "../harness/harness.js"; +import { SimpleTestEnvironment } from "../harness/helpers.js"; const merchantAuthToken = "secret-token:sandbox"; diff --git a/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-abort-bank.ts b/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-abort-bank.ts index 896b1e877..fe719ea62 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-abort-bank.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-abort-bank.ts @@ -19,8 +19,8 @@ */ import { TalerErrorCode } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { GlobalTestState, BankApi, BankAccessApi } from "./harness"; -import { createSimpleTestkudosEnvironment } from "./helpers"; +import { GlobalTestState, BankApi, BankAccessApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment } from "../harness/helpers.js"; /** * Run test for basic, bank-integrated withdrawal. diff --git a/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-bank-integrated.ts b/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-bank-integrated.ts index 4a02b2708..35969c78f 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-bank-integrated.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-bank-integrated.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState, BankApi, BankAccessApi } from "./harness"; -import { createSimpleTestkudosEnvironment } from "./helpers"; +import { GlobalTestState, BankApi, BankAccessApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment } from "../harness/helpers.js"; import { codecForBalancesResponse } from "@gnu-taler/taler-util"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; diff --git a/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-fakebank.ts b/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-fakebank.ts index bfe29b322..97beba1bf 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-fakebank.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-fakebank.ts @@ -24,10 +24,10 @@ import { setupDb, ExchangeService, FakeBankService, -} from "./harness"; -import { createSimpleTestkudosEnvironment } from "./helpers"; +} from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment } from "../harness/helpers.js"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; -import { CoinConfig, defaultCoinConfig } from "./denomStructures.js"; +import { CoinConfig, defaultCoinConfig } from "../harness/denomStructures.js"; import { URL } from "@gnu-taler/taler-util"; /** diff --git a/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-manual.ts b/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-manual.ts index fe8fd3c56..b93d1b500 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-manual.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-manual.ts @@ -17,8 +17,8 @@ /** * Imports. */ -import { GlobalTestState, BankApi } from "./harness"; -import { createSimpleTestkudosEnvironment } from "./helpers"; +import { GlobalTestState, BankApi } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment } from "../harness/helpers.js"; import { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; /** diff --git a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts index bcb0dd271..d985ed67f 100644 --- a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts +++ b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts @@ -22,7 +22,7 @@ import { runTestWithState, shouldLingerInTest, TestRunResult, -} from "./harness"; +} from "../harness/harness.js"; import { runPaymentTest } from "./test-payment"; import { runPaymentDemoTest } from "./test-payment-on-demo"; import * as fs from "fs"; diff --git a/packages/taler-wallet-cli/src/lint.ts b/packages/taler-wallet-cli/src/lint.ts index 0fed68c34..2b888ccf4 100644 --- a/packages/taler-wallet-cli/src/lint.ts +++ b/packages/taler-wallet-cli/src/lint.ts @@ -43,7 +43,7 @@ import { } from "@gnu-taler/taler-wallet-core"; import { URL } from "url"; import { spawn } from "child_process"; -import { delayMs } from "./integrationtests/harness.js"; +import { delayMs } from "./harness/harness.js"; interface BasicConf { mainCurrency: string; diff --git a/packages/taler-wallet-core/src/wallet-api-types.ts b/packages/taler-wallet-core/src/wallet-api-types.ts index c5bf2c8c0..991c03ee2 100644 --- a/packages/taler-wallet-core/src/wallet-api-types.ts +++ b/packages/taler-wallet-core/src/wallet-api-types.ts @@ -118,6 +118,10 @@ export enum WalletApiOperation { } export type WalletOperations = { + [WalletApiOperation.InitWallet]: { + request: {}; + response: {}; + }; [WalletApiOperation.WithdrawFakebank]: { request: WithdrawFakebankRequest; response: {};