diff options
author | MS <ms@taler.net> | 2021-05-12 11:52:38 +0200 |
---|---|---|
committer | MS <ms@taler.net> | 2021-05-12 11:52:38 +0200 |
commit | 83b02069c931306c72c470e0285693719f65d0ca (patch) | |
tree | d2a2656b767af4bba2de181f5d5c728522451370 | |
parent | 41b65e90b9eb1a0a4a999bce75df29a0ea3aedcc (diff) |
libeufin, testing bank connection removal
3 files changed, 111 insertions, 1 deletions
diff --git a/packages/taler-wallet-cli/src/integrationtests/libeufin.ts b/packages/taler-wallet-cli/src/integrationtests/libeufin.ts index eb9d63f12..709148817 100644 --- a/packages/taler-wallet-cli/src/integrationtests/libeufin.ts +++ b/packages/taler-wallet-cli/src/integrationtests/libeufin.ts @@ -54,6 +54,10 @@ export interface LibeufinNexusConfig { databaseJdbcUri: string; } +export interface DeleteBankConnectionRequest { + bankConnectionId: string; +} + interface LibeufinNexusMoneyMovement { amount: string; creditDebitIndicator: string; @@ -837,6 +841,40 @@ export interface PostNexusPermissionRequest { export namespace LibeufinNexusApi { + export async function getAllConnections( + nexus: LibeufinNexusServiceInterface, + ): Promise<any> { + let url = new URL("bank-connections", nexus.baseUrl); + const res = await axios.get( + url.href, + { + auth: { + username: "admin", + password: "test", + }, + }, + ); + return res; + } + + export async function deleteBankConnection( + libeufinNexusService: LibeufinNexusServiceInterface, + req: DeleteBankConnectionRequest, + ): Promise<any> { + const baseUrl = libeufinNexusService.baseUrl; + let url = new URL("bank-connections/delete-connection", baseUrl); + return await axios.post( + url.href, + req, + { + auth: { + username: "admin", + password: "test", + } + } + ); + } + export async function createEbicsBankConnection( libeufinNexusService: LibeufinNexusServiceInterface, req: CreateEbicsBankConnectionRequest, @@ -953,7 +991,6 @@ export namespace LibeufinNexusApi { ); } - export async function getPaymentInitiations( libeufinNexusService: LibeufinNexusService, accountName: string, diff --git a/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankconnection.ts b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankconnection.ts new file mode 100644 index 000000000..9cd461a83 --- /dev/null +++ b/packages/taler-wallet-cli/src/integrationtests/test-libeufin-api-bankconnection.ts @@ -0,0 +1,71 @@ +/* + 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, + LibeufinSandboxService, + LibeufinSandboxApi, + findNexusPayment, +} from "./libeufin"; + +/** + * Run basic test with LibEuFin. + */ +export async function runLibeufinApiBankconnectionTest(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: "testing-the-bankconnection-api", + } + ); + + await LibeufinNexusApi.createEbicsBankConnection( + nexus, + { + name: "bankconnection-api-test-connection", + ebicsURL: "http://localhost:5012/ebicsweb", + hostID: "mock", + userID: "mock", + partnerID: "mock", + } + ); + + let connections = await LibeufinNexusApi.getAllConnections(nexus); + t.assertTrue(connections.data["bankConnections"].length == 1); + + await LibeufinNexusApi.deleteBankConnection( + nexus, + { + bankConnectionId: "bankconnection-api-test-connection", + } + ); + connections = await LibeufinNexusApi.getAllConnections(nexus); + t.assertTrue(connections.data["bankConnections"].length == 0); +} diff --git a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts index 44b0a728f..173ca2442 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 { runLibeufinApiBankconnectionTest } from "./test-libeufin-api-bankconnection"; import { runLibeufinApiUsersTest } from "./test-libeufin-api-users"; import { runLibeufinApiBankaccountTest } from "./test-libeufin-api-bankaccount"; import { runDepositTest } from "./test-deposit"; @@ -95,6 +96,7 @@ const allTests: TestMainFunction[] = [ runLibeufinApiPermissionsTest, runLibeufinApiUsersTest, runLibeufinApiBankaccountTest, + runLibeufinApiBankconnectionTest, runMerchantExchangeConfusionTest, runMerchantInstancesTest, runMerchantInstancesDeleteTest, |