aboutsummaryrefslogtreecommitdiffstats
path: root/ui/app/components/send/send-content/send-dropdown-list
diff options
context:
space:
mode:
authorChi Kei Chan <chikeichan@gmail.com>2019-03-22 07:03:30 +0800
committerDan J Miller <danjm.com@gmail.com>2019-03-22 07:03:30 +0800
commit31175625b446cb5d18b17db23018bca8b14d280c (patch)
treef54e159883deef003fb281267025edf796eb8004 /ui/app/components/send/send-content/send-dropdown-list
parent7287133e15fab22299e07704206e85bc855d1064 (diff)
downloadtangerine-wallet-browser-31175625b446cb5d18b17db23018bca8b14d280c.tar.gz
tangerine-wallet-browser-31175625b446cb5d18b17db23018bca8b14d280c.tar.zst
tangerine-wallet-browser-31175625b446cb5d18b17db23018bca8b14d280c.zip
Folder restructure (#6304)
* Remove ui/app/keychains/ * Remove ui/app/img/ (unused images) * Move conversion-util to helpers/utils/ * Move token-util to helpers/utils/ * Move /helpers/*.js inside /helpers/utils/ * Move util tests inside /helpers/utils/ * Renameand move confirm-transaction/util.js to helpers/utils/ * Move higher-order-components to helpers/higher-order-components/ * Move infura-conversion.json to helpers/constants/ * Move all utility functions to helpers/utils/ * Move pages directory to top-level * Move all constants to helpers/constants/ * Move metametrics inside helpers/ * Move app and root inside pages/ * Move routes inside helpers/ * Re-organize ducks/ * Move reducers to ducks/ * Move selectors inside selectors/ * Move test out of test folder * Move action, reducer, store inside store/ * Move ui components inside ui/ * Move UI components inside ui/ * Move connected components inside components/app/ * Move i18n-helper inside helpers/ * Fix unit tests * Fix unit test * Move pages components * Rename routes component * Move reducers to ducks/index * Fix bad path in unit test
Diffstat (limited to 'ui/app/components/send/send-content/send-dropdown-list')
-rw-r--r--ui/app/components/send/send-content/send-dropdown-list/index.js1
-rw-r--r--ui/app/components/send/send-content/send-dropdown-list/send-dropdown-list.component.js52
-rw-r--r--ui/app/components/send/send-content/send-dropdown-list/tests/send-dropdown-list-component.test.js105
3 files changed, 0 insertions, 158 deletions
diff --git a/ui/app/components/send/send-content/send-dropdown-list/index.js b/ui/app/components/send/send-content/send-dropdown-list/index.js
deleted file mode 100644
index 04af6536c..000000000
--- a/ui/app/components/send/send-content/send-dropdown-list/index.js
+++ /dev/null
@@ -1 +0,0 @@
-export { default } from './send-dropdown-list.component'
diff --git a/ui/app/components/send/send-content/send-dropdown-list/send-dropdown-list.component.js b/ui/app/components/send/send-content/send-dropdown-list/send-dropdown-list.component.js
deleted file mode 100644
index bedac1259..000000000
--- a/ui/app/components/send/send-content/send-dropdown-list/send-dropdown-list.component.js
+++ /dev/null
@@ -1,52 +0,0 @@
-import React, { Component } from 'react'
-import PropTypes from 'prop-types'
-import AccountListItem from '../../account-list-item/'
-
-export default class SendDropdownList extends Component {
-
- static propTypes = {
- accounts: PropTypes.array,
- closeDropdown: PropTypes.func,
- onSelect: PropTypes.func,
- activeAddress: PropTypes.string,
- };
-
- static contextTypes = {
- t: PropTypes.func,
- };
-
- getListItemIcon (accountAddress, activeAddress) {
- return accountAddress === activeAddress
- ? <i className={`fa fa-check fa-lg`} style={ { color: '#02c9b1' } }/>
- : null
- }
-
- render () {
- const {
- accounts,
- closeDropdown,
- onSelect,
- activeAddress,
- } = this.props
-
- return (<div>
- <div
- className="send-v2__from-dropdown__close-area"
- onClick={() => closeDropdown()}
- />
- <div className="send-v2__from-dropdown__list">
- {accounts.map((account, index) => <AccountListItem
- account={account}
- className="account-list-item__dropdown"
- handleClick={() => {
- onSelect(account)
- closeDropdown()
- }}
- icon={this.getListItemIcon(account.address, activeAddress)}
- key={`send-dropdown-account-#${index}`}
- />)}
- </div>
- </div>)
- }
-
-}
diff --git a/ui/app/components/send/send-content/send-dropdown-list/tests/send-dropdown-list-component.test.js b/ui/app/components/send/send-content/send-dropdown-list/tests/send-dropdown-list-component.test.js
deleted file mode 100644
index b92dd4dfe..000000000
--- a/ui/app/components/send/send-content/send-dropdown-list/tests/send-dropdown-list-component.test.js
+++ /dev/null
@@ -1,105 +0,0 @@
-import React from 'react'
-import assert from 'assert'
-import { shallow } from 'enzyme'
-import sinon from 'sinon'
-import SendDropdownList from '../send-dropdown-list.component.js'
-
-import AccountListItem from '../../../account-list-item/account-list-item.container'
-
-const propsMethodSpies = {
- closeDropdown: sinon.spy(),
- onSelect: sinon.spy(),
-}
-
-sinon.spy(SendDropdownList.prototype, 'getListItemIcon')
-
-describe('SendDropdownList Component', function () {
- let wrapper
-
- beforeEach(() => {
- wrapper = shallow(<SendDropdownList
- accounts={[
- { address: 'mockAccount0' },
- { address: 'mockAccount1' },
- { address: 'mockAccount2' },
- ]}
- closeDropdown={propsMethodSpies.closeDropdown}
- onSelect={propsMethodSpies.onSelect}
- activeAddress={'mockAddress2'}
- />, { context: { t: str => str + '_t' } })
- })
-
- afterEach(() => {
- propsMethodSpies.closeDropdown.resetHistory()
- propsMethodSpies.onSelect.resetHistory()
- SendDropdownList.prototype.getListItemIcon.resetHistory()
- })
-
- describe('getListItemIcon', () => {
- it('should return check icon if the passed addresses are the same', () => {
- assert.deepEqual(
- wrapper.instance().getListItemIcon('mockAccount0', 'mockAccount0'),
- <i className={`fa fa-check fa-lg`} style={ { color: '#02c9b1' } }/>
- )
- })
-
- it('should return null if the passed addresses are different', () => {
- assert.equal(
- wrapper.instance().getListItemIcon('mockAccount0', 'mockAccount1'),
- null
- )
- })
- })
-
- describe('render', () => {
- it('should render a single div with two children', () => {
- assert(wrapper.is('div'))
- assert.equal(wrapper.children().length, 2)
- })
-
- it('should render the children with the correct classes', () => {
- assert(wrapper.childAt(0).hasClass('send-v2__from-dropdown__close-area'))
- assert(wrapper.childAt(1).hasClass('send-v2__from-dropdown__list'))
- })
-
- it('should call closeDropdown onClick of the send-v2__from-dropdown__close-area', () => {
- assert.equal(propsMethodSpies.closeDropdown.callCount, 0)
- wrapper.childAt(0).props().onClick()
- assert.equal(propsMethodSpies.closeDropdown.callCount, 1)
- })
-
- it('should render an AccountListItem for each item in accounts', () => {
- assert.equal(wrapper.childAt(1).children().length, 3)
- assert(wrapper.childAt(1).children().every(AccountListItem))
- })
-
- it('should pass the correct props to the AccountListItem', () => {
- wrapper.childAt(1).children().forEach((accountListItem, index) => {
- const {
- account,
- className,
- handleClick,
- } = accountListItem.props()
- assert.deepEqual(account, { address: 'mockAccount' + index })
- assert.equal(className, 'account-list-item__dropdown')
- assert.equal(propsMethodSpies.onSelect.callCount, 0)
- handleClick()
- assert.equal(propsMethodSpies.onSelect.callCount, 1)
- assert.deepEqual(propsMethodSpies.onSelect.getCall(0).args[0], { address: 'mockAccount' + index })
- propsMethodSpies.onSelect.resetHistory()
- propsMethodSpies.closeDropdown.resetHistory()
- assert.equal(propsMethodSpies.closeDropdown.callCount, 0)
- handleClick()
- assert.equal(propsMethodSpies.closeDropdown.callCount, 1)
- propsMethodSpies.onSelect.resetHistory()
- propsMethodSpies.closeDropdown.resetHistory()
- })
- })
-
- it('should call this.getListItemIcon for each AccountListItem', () => {
- assert.equal(SendDropdownList.prototype.getListItemIcon.callCount, 3)
- const getListItemIconCalls = SendDropdownList.prototype.getListItemIcon.getCalls()
- assert(getListItemIconCalls.every(({ args }, index) => args[0] === 'mockAccount' + index))
- })
- })
-})