[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-wallet-core] branch master updated: Libeufin testing: testing use
From: |
gnunet |
Subject: |
[taler-wallet-core] branch master updated: Libeufin testing: testing users creation/update |
Date: |
Mon, 10 May 2021 11:55: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.
The following commit(s) were added to refs/heads/master by this push:
new 9772e583 Libeufin testing: testing users creation/update
9772e583 is described below
commit 9772e5837ea861b23690b6727f1a67c7b2edf1da
Author: MS <ms@taler.net>
AuthorDate: Mon May 10 11:54:59 2021 +0200
Libeufin testing: testing users creation/update
---
.../src/integrationtests/libeufin.ts | 33 +++++++++-
.../integrationtests/test-libeufin-api-users.ts | 70 ++++++++++++++++++++++
.../src/integrationtests/testrunner.ts | 2 +
3 files changed, 103 insertions(+), 2 deletions(-)
diff --git a/packages/taler-wallet-cli/src/integrationtests/libeufin.ts
b/packages/taler-wallet-cli/src/integrationtests/libeufin.ts
index f90b22f3..638926a4 100644
--- a/packages/taler-wallet-cli/src/integrationtests/libeufin.ts
+++ b/packages/taler-wallet-cli/src/integrationtests/libeufin.ts
@@ -755,6 +755,17 @@ export interface CreateTalerWireGatewayFacadeRequest {
reserveTransferLevel: "report" | "statement" | "notification";
}
+export interface UpdateNexusUserRequest {
+ newPassword: string;
+}
+
+export interface NexusAuth {
+ auth: {
+ username: string;
+ password: string;
+ }
+}
+
export interface CreateNexusUserRequest {
username: string;
password: string;
@@ -949,7 +960,6 @@ export namespace LibeufinNexusApi {
);
}
-
export async function fetchAllTransactions(
libeufinNexusService: LibeufinNexusService,
accountName: string,
@@ -976,6 +986,25 @@ export namespace LibeufinNexusApi {
);
}
+ export async function changePassword(
+ libeufinNexusService: LibeufinNexusServiceInterface,
+ req: UpdateNexusUserRequest,
+ auth: NexusAuth,
+ ) {
+ const baseUrl = libeufinNexusService.baseUrl;
+ let url = new URL(`/users/password`, baseUrl);
+ await axios.post(url.href, req, auth);
+ }
+
+ export async function getUser(
+ libeufinNexusService: LibeufinNexusServiceInterface,
+ auth: NexusAuth,
+ ): Promise<any> {
+ const baseUrl = libeufinNexusService.baseUrl;
+ let url = new URL(`/user`, baseUrl);
+ return await axios.get(url.href, auth);
+ }
+
export async function createUser(
libeufinNexusService: LibeufinNexusServiceInterface,
req: CreateNexusUserRequest,
@@ -992,7 +1021,7 @@ export namespace LibeufinNexusApi {
export async function getAllPermissions(
libeufinNexusService: LibeufinNexusServiceInterface,
- ):Promise<any> {
+ ): Promise<any> {
const baseUrl = libeufinNexusService.baseUrl;
let url = new URL(`/permissions`, baseUrl);
return await axios.get(url.href, {
diff --git
a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-users.ts
b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-users.ts
new file mode 100644
index 00000000..fa443305
--- /dev/null
+++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-users.ts
@@ -0,0 +1,70 @@
+/*
+ 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 {
+ NexusUserBundle,
+ LibeufinNexusApi,
+ LibeufinNexusService,
+} from "./libeufin";
+
+/**
+ * Run basic test with LibEuFin.
+ */
+export async function runLibeufinApiUsersTest(t: GlobalTestState) {
+ const nexus = await LibeufinNexusService.create(t, {
+ httpPort: 5011,
+ databaseJdbcUri: `jdbc:sqlite:${t.testDir}/libeufin-nexus.sqlite3`,
+ });
+ await nexus.start();
+ await nexus.pingUntilAvailable();
+
+ await LibeufinNexusApi.createUser(
+ nexus,
+ {
+ username: "one",
+ password: "will-be-changed",
+ }
+ );
+
+ await LibeufinNexusApi.changePassword(
+ nexus,
+ {
+ newPassword: "got-changed",
+ },
+ {
+ auth: {
+ username: "one",
+ password: "will-be-changed",
+ }
+ },
+ );
+
+ let resp = await LibeufinNexusApi.getUser(
+ nexus,
+ {
+ auth: {
+ username: "one",
+ password: "got-changed",
+ }
+ }
+ );
+ console.log(resp.data);
+ t.assertTrue(resp.data["username"] == "one" && !resp.data["superuser"]);
+}
diff --git a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
index b064ebb0..c57cd8d1 100644
--- a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
+++ b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts
@@ -59,6 +59,7 @@ import { runLibeufinRefundTest } from
"./test-libeufin-refund";
import { runLibeufinRefundMultipleUsersTest } from
"./test-libeufin-refund-multiple-users";
import { runLibeufinTutorialTest } from "./test-libeufin-tutorial";
import { runLibeufinApiPermissionsTest } from
"./test-libeufin-api-permissions";
+import { runLibeufinApiUsersTest } from "./test-libeufin-api-users";
import { runDepositTest } from "./test-deposit";
import CancellationToken from "cancellationtoken";
import { runMerchantInstancesTest } from "./test-merchant-instances";
@@ -91,6 +92,7 @@ const allTests: TestMainFunction[] = [
runLibeufinRefundTest,
runLibeufinRefundMultipleUsersTest,
runLibeufinApiPermissionsTest,
+ runLibeufinApiUsersTest,
runMerchantExchangeConfusionTest,
runMerchantInstancesTest,
runMerchantInstancesDeleteTest,
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-wallet-core] branch master updated: Libeufin testing: testing users creation/update,
gnunet <=