taler-typescript-core

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

commit e259d109efd998d0ff6197123a47b83bfe274680
parent 7008de598db1088f5f6b23b9aafb1e406b66ada2
Author: Florian Dold <florian@dold.me>
Date:   Tue,  3 Nov 2020 13:46:44 +0100

fix CheckPaymentPaidResponse schema

Diffstat:
Mpackages/taler-integrationtests/src/merchantApiTypes.ts | 2+-
Mpackages/taler-wallet-core/src/util/codec.ts | 9++++++++-
Mpnpm-lock.yaml | 2+-
3 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/packages/taler-integrationtests/src/merchantApiTypes.ts b/packages/taler-integrationtests/src/merchantApiTypes.ts @@ -82,7 +82,7 @@ export const codecForCheckPaymentPaidResponse = (): Codec< CheckPaymentPaidResponse > => buildCodecForObject<CheckPaymentPaidResponse>() - .property("order_status_url", codecForConstString("paid")) + .property("order_status_url", codecForString()) .property("order_status", codecForConstString("paid")) .property("refunded", codecForBoolean()) .property("wired", codecForBoolean()) diff --git a/packages/taler-wallet-core/src/util/codec.ts b/packages/taler-wallet-core/src/util/codec.ts @@ -341,10 +341,17 @@ export function codecForConstString<V extends string>(s: V): Codec<V> { if (x === s) { return x; } + if (typeof x !== "string") { + throw new DecodingError( + `expected string constant "${s}" at ${renderContext( + c, + )} but got ${typeof x}`, + ); + } throw new DecodingError( `expected string constant "${s}" at ${renderContext( c, - )} but got ${typeof x}`, + )} but got string value "${x}"`, ); }, }; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml @@ -233,7 +233,7 @@ importers: taler-wallet-core: 'workspace:*' tslib: ^2.0.1 typescript: ^3.9.7 -lockfileVersion: 5.1 +lockfileVersion: 5.2 packages: /@ava/typescript/1.1.1: dependencies: