gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-wallet-core] branch master updated: -missing test file


From: gnunet
Subject: [taler-wallet-core] branch master updated: -missing test file
Date: Wed, 02 Oct 2024 17:34:59 +0200

This is an automated email from the git hooks/post-receive script.

dold pushed a commit to branch master
in repository wallet-core.

The following commit(s) were added to refs/heads/master by this push:
     new 4f75fe358 -missing test file
4f75fe358 is described below

commit 4f75fe3589d10975d20902e8a2fbc3e3e627bbbf
Author: Florian Dold <florian@dold.me>
AuthorDate: Wed Oct 2 17:34:56 2024 +0200

    -missing test file
---
 .../integrationtests/test-wallet-transactions.ts   | 105 +++++++++++++++++++++
 1 file changed, 105 insertions(+)

diff --git 
a/packages/taler-harness/src/integrationtests/test-wallet-transactions.ts 
b/packages/taler-harness/src/integrationtests/test-wallet-transactions.ts
new file mode 100644
index 000000000..42bd7e85b
--- /dev/null
+++ b/packages/taler-harness/src/integrationtests/test-wallet-transactions.ts
@@ -0,0 +1,105 @@
+/*
+ This file is part of GNU Taler
+ (C) 2023 Taler Systems S.A.
+
+ GNU Taler is free software; you can redistribute it and/or modify it under the
+ terms of the GNU General Public License as published by the Free Software
+ Foundation; either version 3, or (at your option) any later version.
+
+ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along with
+ GNU Taler; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+/**
+ * Imports.
+ */
+import { TalerMerchantApi } from "@gnu-taler/taler-util";
+import { WalletApiOperation } from "@gnu-taler/taler-wallet-core";
+import { GlobalTestState } from "../harness/harness.js";
+import {
+  makeTestPaymentV2,
+  useSharedTestkudosEnvironment,
+  withdrawViaBankV2,
+} from "../harness/helpers.js";
+
+export async function runWalletTransactionsTest(t: GlobalTestState) {
+  // Set up test environment
+
+  const { walletClient, bank, exchange, merchant } =
+    await useSharedTestkudosEnvironment(t);
+
+  {
+    const txRes = await walletClient.call(
+      WalletApiOperation.GetTransactionsV2,
+      {},
+    );
+    t.assertDeepEqual(txRes.transactions.length, 0);
+  }
+
+  // Withdraw digital cash into the wallet.
+
+  await withdrawViaBankV2(t, {
+    walletClient,
+    bank,
+    exchange,
+    amount: "TESTKUDOS:20",
+  });
+
+  await walletClient.call(WalletApiOperation.TestingWaitTransactionsFinal, {});
+
+  {
+    const txRes = await walletClient.call(
+      WalletApiOperation.GetTransactionsV2,
+      {},
+    );
+    t.assertDeepEqual(txRes.transactions.length, 1);
+  }
+
+  const order = {
+    summary: "Buy me!",
+    amount: "TESTKUDOS:5",
+    fulfillment_url: "taler://fulfillment-success/thx",
+  } satisfies TalerMerchantApi.Order;
+  await makeTestPaymentV2(t, { walletClient, merchant, order });
+  await walletClient.call(WalletApiOperation.TestingWaitTransactionsFinal, {});
+
+  const order2 = {
+    summary: "Buy me, Too",
+    amount: "TESTKUDOS:3",
+    fulfillment_url: "taler://fulfillment-success/thx",
+  } satisfies TalerMerchantApi.Order;
+  await makeTestPaymentV2(t, { walletClient, merchant, order });
+  await walletClient.call(WalletApiOperation.TestingWaitTransactionsFinal, {});
+
+  {
+    const txRes = await walletClient.call(
+      WalletApiOperation.GetTransactionsV2,
+      {},
+    );
+    t.assertDeepEqual(txRes.transactions.length, 4);
+
+    const txResSp1 = await walletClient.call(
+      WalletApiOperation.GetTransactionsV2,
+      {
+        limit: 2,
+      },
+    );
+    const txResSp2 = await walletClient.call(
+      WalletApiOperation.GetTransactionsV2,
+      {
+        offsetTransactionId: txResSp1.transactions[1].transactionId,
+      },
+    );
+
+    t.assertDeepEqual(
+      [...txResSp1.transactions, ...txResSp2.transactions],
+      txRes.transactions,
+    );
+  }
+}
+
+runWalletTransactionsTest.suites = ["wallet"];

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]