aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2021-03-10 17:11:59 +0100
committerFlorian Dold <florian@dold.me>2021-03-10 17:11:59 +0100
commit1392dc47c6489fca1b3a4c036852873495190c36 (patch)
treeb8b76bff34b7425de602651fec3d86463e4c7599 /packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts
parentac89c3d277134e49e44d8b0afd4930fd4df934aa (diff)
downloadwallet-core-1392dc47c6489fca1b3a4c036852873495190c36.tar.xz
finish first complete end-to-end backup/sync test
Diffstat (limited to 'packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts')
-rw-r--r--packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts60
1 files changed, 56 insertions, 4 deletions
diff --git a/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts b/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts
index 9804f7ab2..2ed16fe19 100644
--- a/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts
+++ b/packages/taler-wallet-cli/src/integrationtests/test-wallet-backup-basic.ts
@@ -17,9 +17,12 @@
/**
* Imports.
*/
-import { GlobalTestState, BankApi, BankAccessApi } from "./harness";
-import { createSimpleTestkudosEnvironment } from "./helpers";
-import { codecForBalancesResponse } from "@gnu-taler/taler-wallet-core";
+import { GlobalTestState, BankApi, BankAccessApi, WalletCli } from "./harness";
+import {
+ createSimpleTestkudosEnvironment,
+ makeTestPayment,
+ withdrawViaBank,
+} from "./helpers";
import { SyncService } from "./sync";
/**
@@ -28,7 +31,13 @@ import { SyncService } from "./sync";
export async function runWalletBackupBasicTest(t: GlobalTestState) {
// Set up test environment
- const { commonDb, merchant, wallet, bank, exchange } = await createSimpleTestkudosEnvironment(t);
+ const {
+ commonDb,
+ merchant,
+ wallet,
+ bank,
+ exchange,
+ } = await createSimpleTestkudosEnvironment(t);
const sync = await SyncService.create(t, {
currency: "TESTKUDOS",
@@ -69,5 +78,48 @@ export async function runWalletBackupBasicTest(t: GlobalTestState) {
{
const bi = await wallet.getBackupInfo();
console.log(bi);
+ t.assertDeepEqual(
+ bi.providers[0].paymentStatus.type,
+ "insufficient-balance",
+ );
+ }
+
+ await withdrawViaBank(t, { wallet, bank, exchange, amount: "TESTKUDOS:10" });
+
+ await wallet.runBackupCycle();
+
+ {
+ const bi = await wallet.getBackupInfo();
+ console.log(bi);
+ }
+
+ await withdrawViaBank(t, { wallet, bank, exchange, amount: "TESTKUDOS:5" });
+
+ await wallet.runBackupCycle();
+
+ {
+ const bi = await wallet.getBackupInfo();
+ console.log(bi);
+ }
+
+ const backupRecovery = await wallet.exportBackupRecovery();
+
+ const wallet2 = new WalletCli(t, "wallet2");
+
+ // Check that the second wallet is a fresh wallet.
+ {
+ const bal = await wallet2.getBalances();
+ t.assertTrue(bal.balances.length === 0);
+ }
+
+ await wallet2.importBackupRecovery({ recovery: backupRecovery });
+
+ await wallet2.runBackupCycle();
+
+ // Check that now the old balance is available!
+ {
+ const bal = await wallet2.getBalances();
+ t.assertTrue(bal.balances.length === 1);
+ console.log(bal);
}
}