fleet/frontend/components/forms/fields/Checkbox/Checkbox.tests.jsx

41 lines
1 KiB
React
Raw Normal View History

2016-12-01 18:57:19 +00:00
import React from 'react';
import expect, { createSpy, restoreSpies } from 'expect';
2016-12-01 18:57:19 +00:00
import { mount } from 'enzyme';
import Checkbox from './Checkbox';
describe('Checkbox - component', () => {
afterEach(restoreSpies);
2016-12-01 18:57:19 +00:00
it('renders', () => {
expect(mount(<Checkbox />)).toExist();
});
it('calls the "onChange" handler when changed', () => {
const onCheckedComponentChangeSpy = createSpy();
const onUncheckedComponentChangeSpy = createSpy();
const checkedComponent = mount(
<Checkbox
name="checkbox"
onChange={onCheckedComponentChangeSpy}
value
/>,
).find('input');
const uncheckedComponent = mount(
<Checkbox
name="checkbox"
onChange={onUncheckedComponentChangeSpy}
value={false}
/>,
).find('input');
checkedComponent.simulate('change');
uncheckedComponent.simulate('change');
expect(onCheckedComponentChangeSpy).toHaveBeenCalledWith(false);
expect(onUncheckedComponentChangeSpy).toHaveBeenCalledWith(true);
});
2016-12-01 18:57:19 +00:00
});