taler-typescript-core

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

commit 65d7082dd13cf4b1ee78bc782b8851cae5bc539a
parent 981d66ed066ab0dae4e432b05637899155d071dd
Author: Florian Dold <florian@dold.me>
Date:   Thu, 20 Feb 2025 00:17:48 +0100

harness: tolerate multiple merchant error codes

Diffstat:
Mpackages/taler-harness/src/harness/harness.ts | 8++++++++
Mpackages/taler-harness/src/integrationtests/test-denom-unoffered.ts | 11+++++++----
2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/packages/taler-harness/src/harness/harness.ts b/packages/taler-harness/src/harness/harness.ts @@ -349,6 +349,14 @@ export class GlobalTestState { } } + fail(message?: string): never { + if (message) { + throw Error(`test failed`); + } else { + throw Error(`test failed: ${message}`); + } + } + assertDeepEqual<T>(actual: any, expected: T): asserts actual is T { deepStrictEqual(actual, expected); } diff --git a/packages/taler-harness/src/integrationtests/test-denom-unoffered.ts b/packages/taler-harness/src/integrationtests/test-denom-unoffered.ts @@ -114,10 +114,13 @@ export async function runDenomUnofferedTest(t: GlobalTestState) { const merchantErrorCode = (tx.error as any).requestError.errorResponse.code; - t.assertDeepEqual( - merchantErrorCode, - TalerErrorCode.MERCHANT_GENERIC_EXCHANGE_UNEXPECTED_STATUS, - ); + switch (merchantErrorCode) { + case TalerErrorCode.MERCHANT_GENERIC_EXCHANGE_UNEXPECTED_STATUS: + case TalerErrorCode.MERCHANT_GENERIC_EXCHANGE_TIMEOUT: + break; + default: + t.fail(`unexpected error code: ${merchantErrorCode}`); + } const exchangeErrorCode = (tx.error as any).requestError.errorResponse .exchange_ec;