aboutsummaryrefslogtreecommitdiffstats
path: root/test/unit
diff options
context:
space:
mode:
authorfrankiebee <frankie.diamond@gmail.com>2018-06-26 02:45:00 +0800
committerfrankiebee <frankie.diamond@gmail.com>2018-06-26 02:45:00 +0800
commit7d3da0ae96a761461ee12bf20d8386a5ba7aade2 (patch)
tree0b11f5143557cf6607bedb5fa361358da233749c /test/unit
parent27c348ba77c9be7baafd48516ef6f46f5402f4d0 (diff)
downloadtangerine-wallet-browser-7d3da0ae96a761461ee12bf20d8386a5ba7aade2.tar
tangerine-wallet-browser-7d3da0ae96a761461ee12bf20d8386a5ba7aade2.tar.gz
tangerine-wallet-browser-7d3da0ae96a761461ee12bf20d8386a5ba7aade2.tar.bz2
tangerine-wallet-browser-7d3da0ae96a761461ee12bf20d8386a5ba7aade2.tar.lz
tangerine-wallet-browser-7d3da0ae96a761461ee12bf20d8386a5ba7aade2.tar.xz
tangerine-wallet-browser-7d3da0ae96a761461ee12bf20d8386a5ba7aade2.tar.zst
tangerine-wallet-browser-7d3da0ae96a761461ee12bf20d8386a5ba7aade2.zip
migration 27 - remove rejected transactions from state
Diffstat (limited to 'test/unit')
-rw-r--r--test/unit/migrations/027-test.js50
1 files changed, 50 insertions, 0 deletions
diff --git a/test/unit/migrations/027-test.js b/test/unit/migrations/027-test.js
new file mode 100644
index 000000000..77c0bbee6
--- /dev/null
+++ b/test/unit/migrations/027-test.js
@@ -0,0 +1,50 @@
+const assert = require('assert')
+const migration27 = require('../../../app/scripts/migrations/027')
+
+const oldStorage = {
+ "meta": {},
+ "data": {
+ "TransactionController": {
+ "transactions": [
+ ]
+ },
+ },
+}
+
+const transactions = []
+
+
+while (transactions.length < 9) {
+ transactions.push({status: 'rejected'})
+ transactions.push({status: 'unapproved'})
+ transactions.push({status: 'approved'})
+}
+
+
+oldStorage.data.TransactionController.transactions = transactions
+
+describe('migration #27', () => {
+ it('should remove rejected transactions', (done) => {
+ migration27.migrate(oldStorage)
+ .then((newStorage) => {
+ const newTransactions = newStorage.data.TransactionController.transactions
+ assert.equal(newTransactions.length, 6, 'transactions is expected to have the length of 6')
+ newTransactions.forEach((txMeta) => {
+ if (txMeta.status === 'rejected') done(new Error('transaction was found with a status of rejected'))
+ })
+ done()
+ })
+ .catch(done)
+ })
+
+ it('should successfully migrate first time state', (done) => {
+ migration27.migrate({
+ meta: {},
+ data: require('../../../app/scripts/first-time-state'),
+ })
+ .then((migratedData) => {
+ assert.equal(migratedData.meta.version, migration27.version)
+ done()
+ }).catch(done)
+ })
+})