From 9928d2ef35bbc8dbbfd7b673b79bc6050740e686 Mon Sep 17 00:00:00 2001 From: MS Date: Thu, 29 Apr 2021 11:19:17 +0200 Subject: Libeufin Tests. Testing refunds due to invalid subject. Up to the point where the list of transactions is returned by the local bank account. --- .../src/integrationtests/test-libeufin-refund.ts | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund.ts') diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund.ts index 0adabbf4e..dc5a14c88 100644 --- a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund.ts +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-refund.ts @@ -23,6 +23,7 @@ import { NexusUserBundle, launchLibeufinServices, LibeufinSandboxApi, + LibeufinNexusApi, } from "./libeufin"; /** @@ -46,6 +47,10 @@ export async function runLibeufinRefundTest(t: GlobalTestState) { [user01sandbox, user02sandbox], ); + // user02 - acting as the Exchange - gets money from user01, + // but this one gets the subject wrong - not a valid public key. + // The result should be a reimbursement - minus a small fee - of + // the paid money to user01. await LibeufinSandboxApi.bookPayment( libeufinServices.libeufinSandbox, user02sandbox, @@ -54,4 +59,25 @@ export async function runLibeufinRefundTest(t: GlobalTestState) { "1", "EUR", ); + + // STEPS. + + // 1. Exchange must import this payment into its Nexus / Facade. + // 2. Facade logic should process incoming payments. + // 3. A reimbursement should be prepared. + // 4. The reimbursement payment should be sent. + + // Steps 1-3 should happen all-at-once when triggering the import + // logic. 4 needs to be explicitly triggered (because here there's + // no background task activated, yet?) + + await LibeufinNexusApi.fetchAllTransactions( + libeufinServices.libeufinNexus, + user02nexus.localAccountName, + ); + + await LibeufinNexusApi.getAccountTransactions( + libeufinServices.libeufinNexus, + user02nexus.localAccountName, + ); } -- cgit v1.2.3