rsuite
Version:
A suite of react components
56 lines (50 loc) • 1.43 kB
JavaScript
import React from 'react';
import ReactDOM from 'react-dom';
import InputPicker from '../index';
import {
createTestContainer,
getDOMNode,
getStyle,
toRGB,
getDefaultPalette,
inChrome
} from '@test/testUtils';
import '../styles/index';
const data = [
{
label: 'Eugenia',
value: 'Eugenia',
role: 'Master'
},
{
label: <span>Kariane</span>,
value: 'Kariane',
role: 'Developer'
},
{
label: 'Louisa',
value: 'Louisa',
role: 'Master'
}
];
const { H700 } = getDefaultPalette();
describe('InputPicker styles', () => {
it('Should render correct toggle styles', done => {
const instanceRef = React.createRef();
ReactDOM.render(<InputPicker ref={instanceRef} data={data} />, createTestContainer());
const dom = getDOMNode(instanceRef.current);
const toggleDom = dom.querySelector('.rs-picker-toggle');
const toggleInputDom = dom.querySelector('.rs-picker-search-input');
inChrome &&
assert.equal(getStyle(dom, 'border'), `1px solid ${toRGB('#e5e5ea')}`, 'Picker border');
toggleDom.click();
setTimeout(() => {
inChrome &&
assert.equal(getStyle(dom, 'border'), `1px solid ${H700}`, 'Picker active border');
done();
}, 400);
assert.equal(getStyle(toggleDom, 'height'), '34px', 'Toggle height');
inChrome &&
assert.equal(getStyle(toggleInputDom, 'border-style'), 'none', 'Toggle input border');
});
});