aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorfrankiebee <frankie.diamond@gmail.com>2018-05-23 07:37:30 +0800
committerfrankiebee <frankie.diamond@gmail.com>2018-05-23 07:37:43 +0800
commit60bc28bf3c75135bd751852e32ff98b7b6181249 (patch)
tree2ce2bac7c66c9a7a5386ae8bb0f0c7bc07c26203 /test
parent3084dc47d10e3e455c924e5aad0b0961c500ec8d (diff)
downloadtangerine-wallet-browser-60bc28bf3c75135bd751852e32ff98b7b6181249.tar
tangerine-wallet-browser-60bc28bf3c75135bd751852e32ff98b7b6181249.tar.gz
tangerine-wallet-browser-60bc28bf3c75135bd751852e32ff98b7b6181249.tar.bz2
tangerine-wallet-browser-60bc28bf3c75135bd751852e32ff98b7b6181249.tar.lz
tangerine-wallet-browser-60bc28bf3c75135bd751852e32ff98b7b6181249.tar.xz
tangerine-wallet-browser-60bc28bf3c75135bd751852e32ff98b7b6181249.tar.zst
tangerine-wallet-browser-60bc28bf3c75135bd751852e32ff98b7b6181249.zip
test pending-tx-tracker - update tests to reflect new block tracker behavior and remove tx:confirmed event tests
Diffstat (limited to 'test')
-rw-r--r--test/unit/pending-tx-test.js53
1 files changed, 21 insertions, 32 deletions
diff --git a/test/unit/pending-tx-test.js b/test/unit/pending-tx-test.js
index 001b86dd1..ffd9a7154 100644
--- a/test/unit/pending-tx-test.js
+++ b/test/unit/pending-tx-test.js
@@ -13,7 +13,7 @@ const otherNetworkId = 36
const privKey = new Buffer('8718b9618a37d1fc78c436511fc6df3c8258d3250635bba617f33003270ec03e', 'hex')
-describe('PendingTransactionTracker', function () {
+describe.only('PendingTransactionTracker', function () {
let pendingTxTracker, txMeta, txMetaNoHash, txMetaNoRawTx, providerResultStub,
provider, txMeta3, txList, knownErrors
this.timeout(10000)
@@ -52,7 +52,10 @@ describe('PendingTransactionTracker', function () {
getPendingTransactions: () => {return []},
getCompletedTransactions: () => {return []},
publishTransaction: () => {},
+ confirmTransaction: () => {},
})
+
+ pendingTxTracker._getBlock = (blockNumber) => { return {number: blockNumber, transactions: []} }
})
describe('_checkPendingTx state management', function () {
@@ -120,40 +123,36 @@ describe('PendingTransactionTracker', function () {
})
pendingTxTracker.checkForTxInBlock(block)
})
- it('should emit \'txConfirmed\' if the tx is in the block', function (done) {
- const block = { transactions: [txMeta]}
- pendingTxTracker.getPendingTransactions = () => [txMeta]
- pendingTxTracker.once('tx:confirmed', (txId) => {
- assert(txId, txMeta.id, 'should pass txId')
- done()
- })
- pendingTxTracker.once('tx:failed', (_, err) => { done(err) })
- pendingTxTracker.checkForTxInBlock(block)
- })
})
describe('#queryPendingTxs', function () {
it('should call #_checkPendingTxs if their is no oldBlock', function (done) {
let newBlock, oldBlock
- newBlock = { number: '0x01' }
- pendingTxTracker._checkPendingTxs = done
+ newBlock = '0x01'
+ const originalFunction = pendingTxTracker._checkPendingTxs
+ pendingTxTracker._checkPendingTxs = () => { done() }
pendingTxTracker.queryPendingTxs({ oldBlock, newBlock })
+ pendingTxTracker._checkPendingTxs = originalFunction
})
it('should call #_checkPendingTxs if oldBlock and the newBlock have a diff of greater then 1', function (done) {
let newBlock, oldBlock
- oldBlock = { number: '0x01' }
- newBlock = { number: '0x03' }
- pendingTxTracker._checkPendingTxs = done
+ oldBlock = '0x01'
+ newBlock = '0x03'
+ const originalFunction = pendingTxTracker._checkPendingTxs
+ pendingTxTracker._checkPendingTxs = () => { done() }
pendingTxTracker.queryPendingTxs({ oldBlock, newBlock })
+ pendingTxTracker._checkPendingTxs = originalFunction
})
it('should not call #_checkPendingTxs if oldBlock and the newBlock have a diff of 1 or less', function (done) {
let newBlock, oldBlock
- oldBlock = { number: '0x1' }
- newBlock = { number: '0x2' }
+ oldBlock = '0x1'
+ newBlock = '0x2'
+ const originalFunction = pendingTxTracker._checkPendingTxs
pendingTxTracker._checkPendingTxs = () => {
const err = new Error('should not call #_checkPendingTxs if oldBlock and the newBlock have a diff of 1 or less')
done(err)
}
pendingTxTracker.queryPendingTxs({ oldBlock, newBlock })
+ pendingTxTracker._checkPendingTxs = originalFunction
done()
})
})
@@ -171,16 +170,6 @@ describe('PendingTransactionTracker', function () {
providerResultStub.eth_getTransactionByHash = null
pendingTxTracker._checkPendingTx(txMeta)
})
-
- it('should emit \'txConfirmed\'', function (done) {
- providerResultStub.eth_getTransactionByHash = {blockNumber: '0x01'}
- pendingTxTracker.once('tx:confirmed', (txId) => {
- assert(txId, txMeta.id, 'should pass txId')
- done()
- })
- pendingTxTracker.once('tx:failed', (_, err) => { done(err) })
- pendingTxTracker._checkPendingTx(txMeta)
- })
})
describe('#_checkPendingTxs', function () {
@@ -207,7 +196,7 @@ describe('PendingTransactionTracker', function () {
})
describe('#resubmitPendingTxs', function () {
- const blockStub = { number: '0x0' };
+ const blockNuberStub = '0x0'
beforeEach(function () {
const txMeta2 = txMeta3 = txMeta
txList = [txMeta, txMeta2, txMeta3].map((tx) => {
@@ -225,7 +214,7 @@ describe('PendingTransactionTracker', function () {
Promise.all(txList.map((tx) => tx.processed))
.then((txCompletedList) => done())
.catch(done)
- pendingTxTracker.resubmitPendingTxs(blockStub)
+ pendingTxTracker.resubmitPendingTxs(blockNuberStub)
})
it('should not emit \'tx:failed\' if the txMeta throws a known txError', function (done) {
knownErrors =[
@@ -252,7 +241,7 @@ describe('PendingTransactionTracker', function () {
.then((txCompletedList) => done())
.catch(done)
- pendingTxTracker.resubmitPendingTxs(blockStub)
+ pendingTxTracker.resubmitPendingTxs(blockNuberStub)
})
it('should emit \'tx:warning\' if it encountered a real error', function (done) {
pendingTxTracker.once('tx:warning', (txMeta, err) => {
@@ -270,7 +259,7 @@ describe('PendingTransactionTracker', function () {
.then((txCompletedList) => done())
.catch(done)
- pendingTxTracker.resubmitPendingTxs(blockStub)
+ pendingTxTracker.resubmitPendingTxs(blockNuberStub)
})
})
describe('#_resubmitTx', function () {