import React from 'react';
import { shallow, mount } from 'enzyme';
import { Button, ButtonToggle } from '../';
describe("ButtonToggle", () => {
it('should render children', () => {
const wrapper = shallow(Ello world);
expect(wrapper.type()).toEqual(Button);
expect(wrapper.first(Button).shallow().text()).toBe("Ello world");
});
it('should have button already toggled for defaultValue true', () => {
const wrapper = shallow(Ello world);
expect(wrapper.state().toggled).toBe(true);
});
describe('onClick', () => {
it('calls props.onClick if it exists', () => {
const onClick = jest.fn();
const wrapper = mount(Testing Click);
wrapper.find('button').hostNodes().simulate('click');
expect(onClick).toHaveBeenCalled();
});
it('should not call props.onClick if it exists and button is disabled', () => {
const onClick = jest.fn();
const wrapper = mount(Testing Click);
wrapper.find('button').hostNodes().simulate('click');
expect(onClick).not.toHaveBeenCalled();
});
});
describe('onFocus', () => {
it('calls props.onFocus if it exists', () => {
const onFocus = jest.fn();
const wrapper = mount(Testing Click);
wrapper.find('button').hostNodes().simulate('focus');
expect(onFocus).toHaveBeenCalled();
});
});
describe('onBlur', () => {
it('calls props.onBlur if it exists', () => {
const onBlur = jest.fn();
const wrapper = mount(Testing Click);
wrapper.find('button').hostNodes().simulate('blur');
expect(onBlur).toHaveBeenCalled();
});
});
});