diff options
author | Florian Dold <florian@dold.me> | 2022-09-23 18:56:21 +0200 |
---|---|---|
committer | Florian Dold <florian@dold.me> | 2022-09-23 20:38:26 +0200 |
commit | 72336b149b4c27715e4e2f7610ec4007ecccdbd9 (patch) | |
tree | f209095fc98fd47d4681499662276f4cde5486ba /packages/taler-wallet-cli | |
parent | 9811e19252ef859099fa5c16d703808f6c778a94 (diff) |
wallet-core: do not block when accepting a manual withdrawal
Diffstat (limited to 'packages/taler-wallet-cli')
-rw-r--r-- | packages/taler-wallet-cli/package.json | 2 | ||||
-rw-r--r-- | packages/taler-wallet-cli/src/integrationtests/test-withdrawal-manual.ts | 15 |
2 files changed, 15 insertions, 2 deletions
diff --git a/packages/taler-wallet-cli/package.json b/packages/taler-wallet-cli/package.json index d01ce9465..2316a7d48 100644 --- a/packages/taler-wallet-cli/package.json +++ b/packages/taler-wallet-cli/package.json @@ -46,7 +46,7 @@ "dependencies": { "@gnu-taler/taler-util": "workspace:*", "@gnu-taler/taler-wallet-core": "workspace:*", - "axios": "^0.25.0", + "axios": "^0.27.2", "source-map-support": "^0.5.21", "tslib": "^2.3.1" } 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 6ae0e65e7..b691ae508 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-manual.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-withdrawal-manual.ts @@ -20,6 +20,11 @@ import { GlobalTestState } from "../harness/harness.js"; import { createSimpleTestkudosEnvironment } from "../harness/helpers.js"; import { WalletApiOperation, BankApi } from "@gnu-taler/taler-wallet-core"; +import { + AbsoluteTime, + Duration, + TalerProtocolTimestamp, +} from "@gnu-taler/taler-util"; /** * Run test for basic, bank-integrated withdrawal. @@ -38,6 +43,9 @@ export async function runTestWithdrawalManualTest(t: GlobalTestState) { exchangeBaseUrl: exchange.baseUrl, }); + const tStart = AbsoluteTime.now(); + + // We expect this to return immediately. const wres = await wallet.client.call( WalletApiOperation.AcceptManualWithdrawal, { @@ -46,9 +54,14 @@ export async function runTestWithdrawalManualTest(t: GlobalTestState) { }, ); + // Check that the request did not go into long-polling. + const duration = AbsoluteTime.difference(tStart, AbsoluteTime.now()); + if (duration.d_ms > 5 * 1000) { + throw Error("withdrawal took too long (longpolling issue)"); + } + const reservePub: string = wres.reservePub; - // Bug. await BankApi.adminAddIncoming(bank, { exchangeBankAccount, amount: "TESTKUDOS:10", |