From 18c5aa4707e1bbf753cd644a23f8f301a990d691 Mon Sep 17 00:00:00 2001 From: Sylvia van Os Date: Thu, 8 Jul 2021 19:59:27 +0200 Subject: [PATCH] Support for new Voucher Vault export --- CHANGELOG.md | 1 + .../card_locker/importexport/VoucherVaultImporter.java | 10 ++++++---- .../java/protect/card_locker/ImportExportTest.java | 4 +++- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 151945b1e..d1e131181 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ Changes: - Support importing password-protected zip files - Support importing from Stocard (Beta) - Fix useless whitespace in notes from Fidme import +- Support new Voucher Vault export format ## v1.14.1 (2021-06-14) diff --git a/app/src/main/java/protect/card_locker/importexport/VoucherVaultImporter.java b/app/src/main/java/protect/card_locker/importexport/VoucherVaultImporter.java index 42c99d5ff..d9734284b 100644 --- a/app/src/main/java/protect/card_locker/importexport/VoucherVaultImporter.java +++ b/app/src/main/java/protect/card_locker/importexport/VoucherVaultImporter.java @@ -61,11 +61,13 @@ public class VoucherVaultImporter implements Importer expiry = dateFormat.parse(jsonCard.getString("expires")); } - BigDecimal balance; - if (!jsonCard.isNull("balance")) { + BigDecimal balance = new BigDecimal("0"); + if (jsonCard.has("balanceMilliunits")) { + if (!jsonCard.isNull("balanceMilliunits")) { + balance = new BigDecimal(String.valueOf(jsonCard.getInt("balanceMilliunits") / 1000.0)); + } + } else if (!jsonCard.isNull("balance")) { balance = new BigDecimal(String.valueOf(jsonCard.getDouble("balance"))); - } else { - balance = new BigDecimal("0"); } Currency balanceType = Currency.getInstance("USD"); diff --git a/app/src/test/java/protect/card_locker/ImportExportTest.java b/app/src/test/java/protect/card_locker/ImportExportTest.java index 273455194..d464a6905 100644 --- a/app/src/test/java/protect/card_locker/ImportExportTest.java +++ b/app/src/test/java/protect/card_locker/ImportExportTest.java @@ -1194,6 +1194,7 @@ public class ImportExportTest " \"expires\": null,\n" + " \"removeOnceExpired\": true,\n" + " \"balance\": null,\n" + + " \"balanceMilliunits\": null,\n" + " \"color\": \"GREY\"\n" + " },\n" + " {\n" + @@ -1203,7 +1204,8 @@ public class ImportExportTest " \"codeType\": \"CODE39\",\n" + " \"expires\": \"2021-03-26T00:00:00.000\",\n" + " \"removeOnceExpired\": true,\n" + - " \"balance\": 3.5,\n" + + " \"balance\": null,\n" + + " \"balanceMilliunits\": 3500,\n" + " \"color\": \"PURPLE\"\n" + " }\n" + "]";