fleet/frontend/components/forms/fields/Checkbox/Checkbox.tests.jsx
Zach Wasserman 0670db66c4
Migrate JS tests to Jest and update libraries (#74)
- Move from Mocha to Jest for JS testing (Jest seems to have better support for
 'watching' tests and a more active community these days).
- Codemod existing tests to Jest syntax (using https://github.com/skovhus/jest-codemods)
- Fix some errors in tests that were previously hidden.
- Update Babel.
2020-12-01 10:15:12 -08:00

37 lines
961 B
JavaScript

import React from 'react';
import { mount } from 'enzyme';
import Checkbox from './Checkbox';
describe('Checkbox - component', () => {
it('renders', () => {
expect(mount(<Checkbox />)).toBeTruthy();
});
it('calls the "onChange" handler when changed', () => {
const onCheckedComponentChangeSpy = jest.fn();
const onUncheckedComponentChangeSpy = jest.fn();
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);
});
});