import React, { Component } from 'react' import { TextInput } from 'react-native' import { shallow, configure } from 'enzyme' import Adapter from 'enzyme-adapter-react-16' import renderer from 'react-test-renderer' import { SearchBar } from 'react-native-elements' configure({ adapter: new Adapter() }) class MyInput extends Component { constructor(props) { super(props) this.state = { text: 'Useless Placeholder' } } render() { return ( { this.setState({ text }) }} value={this.state.text} /> ) } } describe('(MyInput) is ', () => { it('sends notification on input changes', () => { const wrapper = shallow() wrapper .find(SearchBar) .first() .simulate('ChangeText', '42') expect(wrapper.state()).toEqual({ text: '42' }) }) })