[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-wallet-core] branch master updated: allow repeats in test case
From: |
gnunet |
Subject: |
[taler-wallet-core] branch master updated: allow repeats in test case |
Date: |
Sat, 08 Aug 2020 13:22:50 +0200 |
This is an automated email from the git hooks/post-receive script.
dold pushed a commit to branch master
in repository wallet-core.
The following commit(s) were added to refs/heads/master by this push:
new e8c0a43d allow repeats in test case
e8c0a43d is described below
commit e8c0a43dd37f34ae8227d02c87b1ed7ab368d03c
Author: Florian Dold <florian.dold@gmail.com>
AuthorDate: Sat Aug 8 16:52:45 2020 +0530
allow repeats in test case
---
packages/taler-integrationtests/src/harness.ts | 9 ++-
.../src/scenario-rerun-payment-multiple.ts | 66 ++++++++++++++--------
2 files changed, 49 insertions(+), 26 deletions(-)
diff --git a/packages/taler-integrationtests/src/harness.ts
b/packages/taler-integrationtests/src/harness.ts
index 18a88d26..d092a973 100644
--- a/packages/taler-integrationtests/src/harness.ts
+++ b/packages/taler-integrationtests/src/harness.ts
@@ -591,9 +591,7 @@ export class ExchangeService implements
ExchangeServiceInterface {
name: exchangeName,
roundUnit: config.getString("taler", "currency_round_unit").required(),
};
- const privFile = config
- .getPath("exchange", "master_priv_file")
- .required();
+ const privFile = config.getPath("exchange", "master_priv_file").required();
const eddsaPriv = fs.readFileSync(privFile);
const keyPair: EddsaKeyPair = {
eddsaPriv,
@@ -991,6 +989,11 @@ function shellWrap(s: string) {
export class WalletCli {
constructor(private globalTestState: GlobalTestState) {}
+ deleteDatabase() {
+ const wdb = this.globalTestState.testDir + "/walletdb.json";
+ fs.unlinkSync(wdb);
+ }
+
async apiRequest(
request: string,
payload: Record<string, unknown>,
diff --git
a/packages/taler-integrationtests/src/scenario-rerun-payment-multiple.ts
b/packages/taler-integrationtests/src/scenario-rerun-payment-multiple.ts
index 967b5391..a755aa93 100644
--- a/packages/taler-integrationtests/src/scenario-rerun-payment-multiple.ts
+++ b/packages/taler-integrationtests/src/scenario-rerun-payment-multiple.ts
@@ -41,29 +41,13 @@ const prevT = new GlobalTestState({
testDir: existingTestDir,
});
-/**
- * Run test.
- */
-runTestWithState(prevT, async (t: GlobalTestState) => {
- // Set up test environment
-
- const bank = BankService.fromExistingConfig(t);
- const exchange = ExchangeService.fromExistingConfig(t, "testexchange-1");
- const merchant = MerchantService.fromExistingConfig(t, "testmerchant-1");
-
- await bank.start();
- await exchange.start();
- await merchant.start();
- await Promise.all([
- bank.pingUntilAvailable(),
- merchant.pingUntilAvailable(),
- exchange.pingUntilAvailable(),
- ]);
-
- const wallet = new WalletCli(t);
-
- // Withdraw digital cash into the wallet.
-
+async function withdrawAndPay(
+ t: GlobalTestState,
+ wallet: WalletCli,
+ bank: BankService,
+ exchange: ExchangeService,
+ merchant: MerchantService,
+): Promise<void> {
await withdrawViaBank(t, { wallet, bank, exchange, amount: "TESTKUDOS:100"
});
// Set up order.
@@ -104,6 +88,42 @@ runTestWithState(prevT, async (t: GlobalTestState) => {
);
t.assertTrue(orderStatus.order_status === "paid");
+}
+
+/**
+ * Run test.
+ */
+runTestWithState(prevT, async (t: GlobalTestState) => {
+ // Set up test environment
+
+ const bank = BankService.fromExistingConfig(t);
+ const exchange = ExchangeService.fromExistingConfig(t, "testexchange-1");
+ const merchant = MerchantService.fromExistingConfig(t, "testmerchant-1");
+
+ await bank.start();
+ await exchange.start();
+ await merchant.start();
+ await Promise.all([
+ bank.pingUntilAvailable(),
+ merchant.pingUntilAvailable(),
+ exchange.pingUntilAvailable(),
+ ]);
+
+ const wallet = new WalletCli(t);
+
+ // Withdraw digital cash into the wallet.
+
+ const repetitions = Number.parseInt(process.env["TALER_TEST_REPEAT"] ?? "1");
+
+ for (let rep = 0; rep < repetitions; rep++) {
+ console.log("repetition", rep);
+ try {
+ wallet.deleteDatabase();
+ await withdrawAndPay(t, wallet, bank, exchange, merchant);
+ } catch (e) {
+ console.log("ignoring exception", e);
+ }
+ }
await t.shutdown();
});
--
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: allow repeats in test case,
gnunet <=