diff --git a/packages/taler-util/src/helpers.ts b/packages/taler-util/src/helpers.ts index 6c836c482..7d84d434e 100644 --- a/packages/taler-util/src/helpers.ts +++ b/packages/taler-util/src/helpers.ts @@ -63,10 +63,7 @@ export function canonicalJson(obj: any): string { // Check for cycles, etc. obj = JSON.parse(JSON.stringify(obj)); if (typeof obj === "string") { - const s = JSON.stringify(obj); - return s.replace(/[\u007F-\uFFFF]/g, function (chr) { - return "\\u" + ("0000" + chr.charCodeAt(0).toString(16)).substr(-4); - }); + return JSON.stringify(obj); } if (typeof obj === "number" || typeof obj === "boolean" || obj === null) { return JSON.stringify(obj); diff --git a/packages/taler-wallet-cli/src/integrationtests/test-payment.ts b/packages/taler-wallet-cli/src/integrationtests/test-payment.ts index 967d491be..d76bb6762 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-payment.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-payment.ts @@ -49,6 +49,14 @@ export async function runPaymentTest(t: GlobalTestState) { await makeTestPayment(t, { wallet, merchant, order }); + const order2 = { + summary: "Testing “unicode” characters", + amount: "TESTKUDOS:5", + fulfillment_url: "taler://fulfillment-success/thx", + }; + + await makeTestPayment(t, { wallet, merchant, order: order2 }); + await wallet.runUntilDone(); }