UNPKG

react-form-controlled

Version:

Intuitive react forms for building powerful applications

76 lines (67 loc) 2 kB
import React from 'react'; import { mount } from 'enzyme'; import Form, { Integrate } from '../src'; describe('Integrate', () => { it('should be able to create simple object', () => { const value = { place: 'Kosice' }; const wrapper = mount(React.createElement( Form, { value: value }, React.createElement(Integrate, { name: 'place', render: ({ value, onChange }) => React.createElement('input', { placeholder: '1122', value: value, onChange: onChange }) }) )); expect(wrapper.find('input').first().props().value).toBe('Kosice'); }); it('should be able to use children function', () => { const state = { place: 'Kosice' }; const wrapper = mount(React.createElement( Form, { value: state }, React.createElement( Integrate, { name: 'place' }, ({ name, value, onChange }) => React.createElement('input', { placeholder: '1122', name: name, value: value, onChange: onChange }) ) )); expect(wrapper.find('input').first().props().value).toBe('Kosice'); }); it('should be able to create object', () => { const value = { rows: [123, 456] }; const wrapper = mount(React.createElement( Form, { value: value }, React.createElement( 'table', null, React.createElement( 'tbody', { name: 'rows' }, React.createElement( 'tr', null, React.createElement( 'td', null, React.createElement(Integrate, { name: '.', render: ({ name, value, onChange }) => React.createElement('input', { placeholder: '1122', name: name, value: value, onChange: onChange }) }) ) ) ) ) )); expect(wrapper.find('input').first().props().value).toBe(123); }); }); //# sourceMappingURL=Integrate.test.js.map