gnunet-svn
[Top][All Lists]
Advanced

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

[taler-wallet-core] 02/02: Sandbox keyrotation testcase.


From: gnunet
Subject: [taler-wallet-core] 02/02: Sandbox keyrotation testcase.
Date: Tue, 27 Jul 2021 10:08:10 +0200

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

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

commit fbf1b3e9bfe7d9c9c846ac0f924f2c385ddefa42
Author: ms <ms@taler.net>
AuthorDate: Tue Jul 27 10:08:00 2021 +0200

    Sandbox keyrotation testcase.
---
 .../src/integrationtests/libeufin.ts               |  5 +-
 .../integrationtests/test-libeufin-keyrotation.ts  | 67 ++++++++++++++++++++++
 .../src/integrationtests/testrunner.ts             |  2 +
 3 files changed, 72 insertions(+), 2 deletions(-)

diff --git a/packages/taler-wallet-cli/src/integrationtests/libeufin.ts 
b/packages/taler-wallet-cli/src/integrationtests/libeufin.ts
index 037ba116..7a6f3ee1 100644
--- a/packages/taler-wallet-cli/src/integrationtests/libeufin.ts
+++ b/packages/taler-wallet-cli/src/integrationtests/libeufin.ts
@@ -1070,13 +1070,13 @@ export namespace LibeufinNexusApi {
     accountName: string,
     username: string = "admin",
     password: string = "test",
-  ): Promise<void> {
+  ): Promise<any> {
     const baseUrl = libeufinNexusService.baseUrl;
     let url = new URL(
       `/bank-accounts/${accountName}/fetch-transactions`,
       baseUrl,
     );
-    await axios.post(
+    return await axios.post(
       url.href,
       {
         rangeType: "all",
@@ -1087,6 +1087,7 @@ export namespace LibeufinNexusApi {
           username: username,
           password: password,
         },
+        validateStatus: () => true,
       },
     );
   }
diff --git 
a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-keyrotation.ts 
b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-keyrotation.ts
new file mode 100644
index 00000000..97135267
--- /dev/null
+++ 
b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-keyrotation.ts
@@ -0,0 +1,67 @@
+/*
+ This file is part of GNU Taler
+ (C) 2020 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 { GlobalTestState } from "./harness";
+import {
+  SandboxUserBundle,
+  NexusUserBundle,
+  launchLibeufinServices,
+  LibeufinSandboxApi,
+  LibeufinNexusApi,
+} from "./libeufin";
+
+/**
+ * Run basic test with LibEuFin.
+ */
+export async function runLibeufinKeyrotationTest(t: GlobalTestState) {
+  /**
+   * User saltetd "01"
+   */
+  const user01nexus = new NexusUserBundle(
+    "01",
+    "http://localhost:5010/ebicsweb";,
+  );
+  const user01sandbox = new SandboxUserBundle("01");
+
+  /**
+   * Launch Sandbox and Nexus.
+   */
+  const libeufinServices = await launchLibeufinServices(
+    t, [user01nexus], [user01sandbox],
+  );
+
+  await LibeufinNexusApi.fetchAllTransactions(
+    libeufinServices.libeufinNexus,
+    user01nexus.localAccountName,
+  );
+
+  /* Rotate the Sandbox keys, and fetch the transactions again */
+  await LibeufinSandboxApi.rotateKeys(
+    libeufinServices.libeufinSandbox,
+    user01sandbox.ebicsBankAccount.subscriber.hostID,
+  );
+
+  const resp = await LibeufinNexusApi.fetchAllTransactions(
+    libeufinServices.libeufinNexus,
+    user01nexus.localAccountName,
+  );
+  console.log("Attempted fetch after key rotation", resp.data);
+  t.assertTrue(resp.status == 500);
+}
+runLibeufinKeyrotationTest.suites = ["libeufin"];
diff --git a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts 
b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
index 8162eccd..b9225757 100644
--- a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
+++ b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
@@ -56,6 +56,7 @@ import { runWithdrawalBankIntegratedTest } from 
"./test-withdrawal-bank-integrat
 import M from "minimatch";
 import { runMerchantExchangeConfusionTest } from 
"./test-merchant-exchange-confusion";
 import { runLibeufinBasicTest } from "./test-libeufin-basic";
+import { runLibeufinKeyrotationTest } from "./test-libeufin-keyrotation";
 import { runLibeufinRefundTest } from "./test-libeufin-refund";
 import { runLibeufinRefundMultipleUsersTest } from 
"./test-libeufin-refund-multiple-users";
 import { runLibeufinTutorialTest } from "./test-libeufin-tutorial";
@@ -95,6 +96,7 @@ const allTests: TestMainFunction[] = [
   runExchangeManagementTest,
   runFeeRegressionTest,
   runLibeufinBasicTest,
+  runLibeufinKeyrotationTest,
   runLibeufinTutorialTest,
   runLibeufinRefundTest,
   runLibeufinRefundMultipleUsersTest,

-- 
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]