From 70d37e4ed30e69c4b3ba2d31a50fd61d82b91252 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Wed, 5 Oct 2022 15:45:10 +0200 Subject: integration tests: test crypto worker We test instantiations of both crypto workers that are available for node. --- .../integrationtests/test-wallet-cryptoworker.ts | 55 ++++++++++++++++++++++ .../src/integrationtests/testrunner.ts | 2 + 2 files changed, 57 insertions(+) create mode 100644 packages/taler-wallet-cli/src/integrationtests/test-wallet-cryptoworker.ts (limited to 'packages/taler-wallet-cli/src/integrationtests') diff --git a/packages/taler-wallet-cli/src/integrationtests/test-wallet-cryptoworker.ts b/packages/taler-wallet-cli/src/integrationtests/test-wallet-cryptoworker.ts new file mode 100644 index 000000000..fefdab27a --- /dev/null +++ b/packages/taler-wallet-cli/src/integrationtests/test-wallet-cryptoworker.ts @@ -0,0 +1,55 @@ +/* + 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 + */ + +/** + * Imports. + */ +import { j2s } from "@gnu-taler/taler-util"; +import { + checkReserve, + CryptoDispatcher, + depositCoin, + downloadExchangeInfo, + findDenomOrThrow, + NodeHttpLib, + refreshCoin, + SynchronousCryptoWorkerFactory, + TalerError, + topupReserveWithDemobank, + WalletApiOperation, + withdrawCoin, +} from "@gnu-taler/taler-wallet-core"; +import { GlobalTestState, WalletCli } from "../harness/harness.js"; +import { createSimpleTestkudosEnvironment } from "../harness/helpers.js"; + +/** + * Run test for the different crypto workers. + */ +export async function runWalletCryptoWorkerTest(t: GlobalTestState) { + const wallet1 = new WalletCli(t, "w1", { + cryptoWorkerType: "sync", + }); + + await wallet1.client.call(WalletApiOperation.CryptoTest, {}); + + const wallet2 = new WalletCli(t, "w2", { + cryptoWorkerType: "node-worker-thread", + }); + + await wallet2.client.call(WalletApiOperation.CryptoTest, {}); +} + +runWalletCryptoWorkerTest.suites = ["wallet"]; diff --git a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts index 98e56d6ff..c22689e46 100644 --- a/packages/taler-wallet-cli/src/integrationtests/testrunner.ts +++ b/packages/taler-wallet-cli/src/integrationtests/testrunner.ts @@ -93,6 +93,7 @@ import { runTestWithdrawalManualTest } from "./test-withdrawal-manual.js"; import { runAgeRestrictionsPeerTest } from "./test-age-restrictions-peer.js"; import { runWalletBalanceTest } from "./test-wallet-balance.js"; import { runAgeRestrictionsMixedMerchantTest } from "./test-age-restrictions-mixed-merchant.js"; +import { runWalletCryptoWorkerTest } from "./test-wallet-cryptoworker.js"; /** * Test runner. @@ -115,6 +116,7 @@ const allTests: TestMainFunction[] = [ runBankApiTest, runClaimLoopTest, runClauseSchnorrTest, + runWalletCryptoWorkerTest, runDepositTest, runDenomUnofferedTest, runExchangeManagementTest, -- cgit v1.2.3