You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
2.3 KiB
72 lines
2.3 KiB
6 years ago
|
import React from 'react'
|
||
|
import assert from 'assert'
|
||
|
import { shallow } from 'enzyme'
|
||
|
import BasicTabContent from '../basic-tab-content.component'
|
||
|
|
||
|
import GasPriceButtonGroup from '../../../gas-price-button-group/'
|
||
|
|
||
|
const mockGasPriceButtonGroupProps = {
|
||
|
buttonDataLoading: false,
|
||
|
className: 'gas-price-button-group',
|
||
|
gasButtonInfo: [
|
||
|
{
|
||
|
feeInPrimaryCurrency: '$0.52',
|
||
|
feeInSecondaryCurrency: '0.0048 ETH',
|
||
|
timeEstimate: '~ 1 min 0 sec',
|
||
|
priceInHexWei: '0xa1b2c3f',
|
||
|
},
|
||
|
{
|
||
|
feeInPrimaryCurrency: '$0.39',
|
||
|
feeInSecondaryCurrency: '0.004 ETH',
|
||
|
timeEstimate: '~ 1 min 30 sec',
|
||
|
priceInHexWei: '0xa1b2c39',
|
||
|
},
|
||
|
{
|
||
|
feeInPrimaryCurrency: '$0.30',
|
||
|
feeInSecondaryCurrency: '0.00354 ETH',
|
||
|
timeEstimate: '~ 2 min 1 sec',
|
||
|
priceInHexWei: '0xa1b2c30',
|
||
|
},
|
||
|
],
|
||
|
handleGasPriceSelection: newPrice => console.log('NewPrice: ', newPrice),
|
||
|
noButtonActiveByDefault: true,
|
||
|
showCheck: true,
|
||
|
}
|
||
|
|
||
|
describe('BasicTabContent Component', function () {
|
||
|
let wrapper
|
||
|
|
||
|
beforeEach(() => {
|
||
|
wrapper = shallow(<BasicTabContent
|
||
|
gasPriceButtonGroupProps={mockGasPriceButtonGroupProps}
|
||
|
/>)
|
||
|
})
|
||
|
|
||
|
describe('render', () => {
|
||
|
it('should have a title', () => {
|
||
|
assert(wrapper.find('.basic-tab-content').childAt(0).hasClass('basic-tab-content__title'))
|
||
|
})
|
||
|
|
||
|
it('should render a GasPriceButtonGroup compenent', () => {
|
||
|
assert.equal(wrapper.find(GasPriceButtonGroup).length, 1)
|
||
|
})
|
||
|
|
||
|
it('should pass correct props to GasPriceButtonGroup', () => {
|
||
|
const {
|
||
|
buttonDataLoading,
|
||
|
className,
|
||
|
gasButtonInfo,
|
||
|
handleGasPriceSelection,
|
||
|
noButtonActiveByDefault,
|
||
|
showCheck,
|
||
|
} = wrapper.find(GasPriceButtonGroup).props()
|
||
|
assert.equal(buttonDataLoading, mockGasPriceButtonGroupProps.buttonDataLoading)
|
||
|
assert.equal(className, mockGasPriceButtonGroupProps.className)
|
||
|
assert.equal(noButtonActiveByDefault, mockGasPriceButtonGroupProps.noButtonActiveByDefault)
|
||
|
assert.equal(showCheck, mockGasPriceButtonGroupProps.showCheck)
|
||
|
assert.deepEqual(gasButtonInfo, mockGasPriceButtonGroupProps.gasButtonInfo)
|
||
|
assert.equal(JSON.stringify(handleGasPriceSelection), JSON.stringify(mockGasPriceButtonGroupProps.handleGasPriceSelection))
|
||
|
})
|
||
|
})
|
||
|
})
|