taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

commit 2688ad89f53bdd41963b9714c27e75a4e0b9525b
parent bf7a8fad03fccb32e77c34c66befbac12d86d123
Author: Florian Dold <florian@dold.me>
Date:   Tue, 29 Apr 2025 00:49:21 +0200

wallet-core,harness: fix handling of prior prospective coin selection in PendingPaying state

Diffstat:
Mpackages/taler-harness/src/integrationtests/test-timetravel-autorefresh.ts | 11++++++++---
Mpackages/taler-wallet-core/src/pay-merchant.ts | 2+-
2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/packages/taler-harness/src/integrationtests/test-timetravel-autorefresh.ts b/packages/taler-harness/src/integrationtests/test-timetravel-autorefresh.ts @@ -18,12 +18,12 @@ * Imports. */ import { - ConfirmPayResultType, Duration, NotificationType, PreparePayResultType, TalerCorebankApiClient, TalerMerchantInstanceHttpClient, + TransactionMajorState, j2s, succeedOrThrow, } from "@gnu-taler/taler-util"; @@ -263,11 +263,16 @@ export async function runTimetravelAutorefreshTest(t: GlobalTestState) { t.assertTrue(r.status === PreparePayResultType.PaymentPossible); - const cpr = await walletClient.call(WalletApiOperation.ConfirmPay, { + await walletClient.call(WalletApiOperation.ConfirmPay, { transactionId: r.transactionId, }); - t.assertTrue(cpr.type === ConfirmPayResultType.Done); + await walletClient.call(WalletApiOperation.TestingWaitTransactionState, { + transactionId: r.transactionId, + txState: { + major: TransactionMajorState.Done, + }, + }); } runTimetravelAutorefreshTest.suites = ["wallet"]; diff --git a/packages/taler-wallet-core/src/pay-merchant.ts b/packages/taler-wallet-core/src/pay-merchant.ts @@ -3258,6 +3258,7 @@ async function processPurchasePay( switch (p.purchaseStatus) { case PurchaseStatus.DialogShared: case PurchaseStatus.DialogProposed: + case PurchaseStatus.PendingPaying: p.payInfo = { totalPayCost: Amounts.stringify(payCostInfo), payCoinSelection: { @@ -3281,7 +3282,6 @@ async function processPurchasePay( }); return true; case PurchaseStatus.Done: - case PurchaseStatus.PendingPaying: default: break; }