feature/default_network_editable
parent
1405237479
commit
5bb399e55a
@ -0,0 +1,37 @@ |
|||||||
|
const { |
||||||
|
getSelectedToken, |
||||||
|
getSendEditingTransactionId, |
||||||
|
} = require('../send.selectors.js') |
||||||
|
|
||||||
|
const selectors = { |
||||||
|
getTitleKey, |
||||||
|
getSubtitleParams, |
||||||
|
} |
||||||
|
|
||||||
|
module.exports = selectors |
||||||
|
|
||||||
|
function getTitleKey (state) { |
||||||
|
const isEditing = Boolean(getSendEditingTransactionId(state)) |
||||||
|
const isToken = Boolean(getSelectedToken(state)) |
||||||
|
|
||||||
|
if (isEditing) { |
||||||
|
return 'edit' |
||||||
|
} else if (isToken) { |
||||||
|
return 'sendTokens' |
||||||
|
} else { |
||||||
|
return 'sendETH' |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
function getSubtitleParams (state) { |
||||||
|
const isEditing = Boolean(getSendEditingTransactionId(state)) |
||||||
|
const token = getSelectedToken(state) |
||||||
|
|
||||||
|
if (isEditing) { |
||||||
|
return [ 'editingTransaction' ] |
||||||
|
} else if (token) { |
||||||
|
return [ 'onlySendTokensToAccountAddress', [ token.symbol ] ] |
||||||
|
} else { |
||||||
|
return [ 'onlySendToEtherAddress' ] |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,47 @@ |
|||||||
|
import assert from 'assert' |
||||||
|
import proxyquire from 'proxyquire' |
||||||
|
|
||||||
|
const { |
||||||
|
getTitleKey, |
||||||
|
getSubtitleParams, |
||||||
|
} = proxyquire('../send-header.selectors', { |
||||||
|
'../send.selectors': { |
||||||
|
getSelectedToken: (mockState) => mockState.t, |
||||||
|
getSendEditingTransactionId: (mockState) => mockState.e, |
||||||
|
}, |
||||||
|
}) |
||||||
|
|
||||||
|
describe('send-header selectors', () => { |
||||||
|
|
||||||
|
describe('getTitleKey()', () => { |
||||||
|
it('should return the correct key when getSendEditingTransactionId is truthy', () => { |
||||||
|
assert.equal(getTitleKey({ e: 1, t: true }), 'edit') |
||||||
|
}) |
||||||
|
|
||||||
|
it('should return the correct key when getSendEditingTransactionId is falsy and getSelectedToken is truthy', () => { |
||||||
|
assert.equal(getTitleKey({ e: null, t: 'abc' }), 'sendTokens') |
||||||
|
}) |
||||||
|
|
||||||
|
it('should return the correct key when getSendEditingTransactionId is falsy and getSelectedToken is falsy', () => { |
||||||
|
assert.equal(getTitleKey({ e: null }), 'sendETH') |
||||||
|
}) |
||||||
|
}) |
||||||
|
|
||||||
|
describe('getSubtitleParams()', () => { |
||||||
|
it('should return the correct params when getSendEditingTransactionId is truthy', () => { |
||||||
|
assert.deepEqual(getSubtitleParams({ e: 1, t: true }), [ 'editingTransaction' ]) |
||||||
|
}) |
||||||
|
|
||||||
|
it('should return the correct params when getSendEditingTransactionId is falsy and getSelectedToken is truthy', () => { |
||||||
|
assert.deepEqual( |
||||||
|
getSubtitleParams({ e: null, t: { symbol: 'ABC' } }), |
||||||
|
[ 'onlySendTokensToAccountAddress', [ 'ABC' ] ] |
||||||
|
) |
||||||
|
}) |
||||||
|
|
||||||
|
it('should return the correct params when getSendEditingTransactionId is falsy and getSelectedToken is falsy', () => { |
||||||
|
assert.deepEqual(getSubtitleParams({ e: null }), [ 'onlySendToEtherAddress' ]) |
||||||
|
}) |
||||||
|
}) |
||||||
|
|
||||||
|
}) |
Loading…
Reference in new issue