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