taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

commit c83d9465eb8ea775a5dafa11d4a27396e532211d
parent 0a7d0b37432af665ca023a68353c38c00125aaa3
Author: Florian Dold <florian@dold.me>
Date:   Fri,  1 Mar 2024 00:05:10 +0100

taler-harness: test for dev experiment

Diffstat:
Apackages/taler-harness/src/integrationtests/test-wallet-dev-experiments.ts | 48++++++++++++++++++++++++++++++++++++++++++++++++
Mpackages/taler-harness/src/integrationtests/testrunner.ts | 6++++--
2 files changed, 52 insertions(+), 2 deletions(-)

diff --git a/packages/taler-harness/src/integrationtests/test-wallet-dev-experiments.ts b/packages/taler-harness/src/integrationtests/test-wallet-dev-experiments.ts @@ -0,0 +1,48 @@ +/* + 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 { WalletApiOperation } from "@gnu-taler/taler-wallet-core"; +import { GlobalTestState } from "../harness/harness.js"; +import { createWalletDaemonWithClient } from "../harness/helpers.js"; + +export async function runWalletDevExperimentsTest(t: GlobalTestState) { + const w1 = await createWalletDaemonWithClient(t, { + name: "w1", + config: { + testing: { + devModeActive: true, + }, + }, + }); + + await w1.walletClient.call(WalletApiOperation.ApplyDevExperiment, { + devExperimentUri: "taler://dev-experiment/insert-pending-refresh", + }); + + const txnResp = await w1.walletClient.call( + WalletApiOperation.GetTransactions, + { + includeRefreshes: true, + }, + ); + + t.assertTrue(txnResp.transactions.length > 0); +} + +runWalletDevExperimentsTest.suites = ["wallet"]; diff --git a/packages/taler-harness/src/integrationtests/testrunner.ts b/packages/taler-harness/src/integrationtests/testrunner.ts @@ -93,8 +93,10 @@ import { runWalletConfigTest } from "./test-wallet-config.js"; import { runWalletCryptoWorkerTest } from "./test-wallet-cryptoworker.js"; import { runWalletDblessTest } from "./test-wallet-dbless.js"; import { runWalletDd48Test } from "./test-wallet-dd48.js"; +import { runWalletDevExperimentsTest } from "./test-wallet-dev-experiments.js"; import { runWalletGenDbTest } from "./test-wallet-gendb.js"; import { runWalletNotificationsTest } from "./test-wallet-notifications.js"; +import { runWalletObservabilityTest } from "./test-wallet-observability.js"; import { runWalletRefreshTest } from "./test-wallet-refresh.js"; import { runWallettestingTest } from "./test-wallettesting.js"; import { runWithdrawalAbortBankTest } from "./test-withdrawal-abort-bank.js"; @@ -104,7 +106,6 @@ import { runWithdrawalFakebankTest } from "./test-withdrawal-fakebank.js"; import { runWithdrawalFeesTest } from "./test-withdrawal-fees.js"; import { runWithdrawalHugeTest } from "./test-withdrawal-huge.js"; import { runWithdrawalManualTest } from "./test-withdrawal-manual.js"; -import { runWalletObservabilityTest } from "./test-wallet-observability.js"; /** * Test runner. @@ -199,7 +200,8 @@ const allTests: TestMainFunction[] = [ runWalletBalanceNotificationsTest, runExchangeManagementTest, runWalletConfigTest, - runWalletObservabilityTest + runWalletObservabilityTest, + runWalletDevExperimentsTest, ]; export interface TestRunSpec {