commit e259d109efd998d0ff6197123a47b83bfe274680
parent 7008de598db1088f5f6b23b9aafb1e406b66ada2
Author: Florian Dold <florian@dold.me>
Date: Tue, 3 Nov 2020 13:46:44 +0100
fix CheckPaymentPaidResponse schema
Diffstat:
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: