UNPKG

react-native-cross-components

Version:
63 lines 11.3 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); jest.unmock('react-native'); jest.unmock('./CrossEditor'); // https://itnext.io/testing-react-16-3-components-with-react-test-renderer-without-enzyme-d9c65d689e88 const react_1 = __importDefault(require("react")); const CrossEditor_1 = require("./CrossEditor"); const react_test_renderer_1 = __importDefault(require("react-test-renderer")); describe('components', () => { describe('<CrossEditor />', () => { describe('`ICrossEditorProps` interface', () => { const propsMock = { label: 'Test' }; it('Should match snapshot', () => { expect(propsMock).toMatchSnapshot(); }); it('Should have `maskProps` property that is undefined', () => { expect(propsMock.maskProps).toBeUndefined(); }); }); describe('With `label` property provided', () => { it('Component should render', () => { const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossEditor_1.CrossEditor, { label: 'Test', onChangeText: jest.fn(), value: 'Textvalue' })); expect(wrapper.toJSON()).toMatchSnapshot(); }); it('Should have paper <TextInput /> with mode "outlined"', () => { const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossEditor_1.CrossEditor, { label: 'Test', onChangeText: jest.fn(), value: 'Textvalue' })); const child = wrapper.root.findByProps({ mode: 'outlined' }); expect(child.type).toEqual('TextInput'); }); it('TextInputProps onChangeText should be called', () => { let gotText = undefined; const onCalled = (val) => (gotText = val); const textVal = '111222'; const maskProps = { type: 'zip-code' }; const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossEditor_1.CrossEditor, { onChangeText: onCalled, label: 'Test', maskProps: maskProps, value: 'default value' })); const child = wrapper.root.findByProps(maskProps); child.instance.props.onChangeText(textVal); // There will not be a value test time expect(gotText).toEqual(''); }); it('maskProps onChangeText should be called', () => { let gotText = undefined; const onCalled = (val) => (gotText = val); const textVal = '111222'; const maskProps = { type: 'zip-code', onChangeText: onCalled, }; const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossEditor_1.CrossEditor, { label: 'Test', maskProps: maskProps, value: 'default value' })); const child = wrapper.root.findByProps({ type: 'zip-code', }); child.instance.props.onChangeText(textVal); // There will not be a value test time expect(gotText).toEqual(''); }); }); }); }); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJmaWxlIjoiL1VzZXJzL3Rob21hcy9Tb3VyY2UvcmVhY3QtbmF0aXZlLWNvcmUvc291cmNlL2NvbXBvbmVudHMvaW5wdXQvQ3Jvc3NFZGl0b3IudGVzdC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7QUFNQSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7QUFQN0IsdUdBQXVHO0FBQ3ZHLGtEQUEwQjtBQUMxQiwrQ0FBK0Q7QUFDL0QsOEVBQStDO0FBTS9DLFFBQVEsQ0FBQyxZQUFZLEVBQUUsR0FBRyxFQUFFO0lBQzFCLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLEVBQUU7UUFDL0IsUUFBUSxDQUFDLCtCQUErQixFQUFFLEdBQUcsRUFBRTtZQUM3QyxNQUFNLFNBQVMsR0FBc0IsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDdkQsRUFBRSxDQUFDLHVCQUF1QixFQUFFLEdBQUcsRUFBRTtnQkFDL0IsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3RDLENBQUMsQ0FBQyxDQUFDO1lBRUgsRUFBRSxDQUFDLG9EQUFvRCxFQUFFLEdBQUcsRUFBRTtnQkFDNUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUM5QyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsUUFBUSxDQUFDLGdDQUFnQyxFQUFFLEdBQUcsRUFBRTtZQUM5QyxFQUFFLENBQUMseUJBQXlCLEVBQUUsR0FBRyxFQUFFO2dCQUNqQyxNQUFNLE9BQU8sR0FBRyw2QkFBWSxDQUFDLE1BQU0sQ0FDakMsOEJBQUMseUJBQVcsSUFDVixLQUFLLEVBQUUsTUFBTSxFQUNiLFlBQVksRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQ3ZCLEtBQUssRUFBRSxXQUFXLEdBQ2xCLENBQ0gsQ0FBQztnQkFDRixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDN0MsQ0FBQyxDQUFDLENBQUM7WUFFSCxFQUFFLENBQUMsc0RBQXNELEVBQUUsR0FBRyxFQUFFO2dCQUM5RCxNQUFNLE9BQU8sR0FBRyw2QkFBWSxDQUFDLE1BQU0sQ0FDakMsOEJBQUMseUJBQVcsSUFDVixLQUFLLEVBQUUsTUFBTSxFQUNiLFlBQVksRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQ3ZCLEtBQUssRUFBRSxXQUFXLEdBQ2xCLENBQ0gsQ0FBQztnQkFDRixNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO2dCQUM3RCxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUMxQyxDQUFDLENBQUMsQ0FBQztZQUVILEVBQUUsQ0FBQyw4Q0FBOEMsRUFBRSxHQUFHLEVBQUU7Z0JBQ3RELElBQUksT0FBTyxHQUF1QixTQUFTLENBQUM7Z0JBQzVDLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUMsQ0FBQztnQkFFbEQsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDO2dCQUN6QixNQUFNLFNBQVMsR0FBdUIsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUM7Z0JBRTNELE1BQU0sT0FBTyxHQUFHLDZCQUFZLENBQUMsTUFBTSxDQUNqQyw4QkFBQyx5QkFBVyxJQUNWLFlBQVksRUFBRSxRQUFRLEVBQ3RCLEtBQUssRUFBRSxNQUFNLEVBQ2IsU0FBUyxFQUFFLFNBQVMsRUFDcEIsS0FBSyxFQUFFLGVBQWUsR0FDdEIsQ0FDSCxDQUFDO2dCQUVGLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUNsRCxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBRTNDLHNDQUFzQztnQkFDdEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUM5QixDQUFDLENBQUMsQ0FBQztZQUVILEVBQUUsQ0FBQyx5Q0FBeUMsRUFBRSxHQUFHLEVBQUU7Z0JBQ2pELElBQUksT0FBTyxHQUF1QixTQUFTLENBQUM7Z0JBQzVDLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUMsQ0FBQztnQkFFbEQsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDO2dCQUN6QixNQUFNLFNBQVMsR0FBdUI7b0JBQ3BDLElBQUksRUFBRSxVQUFVO29CQUNoQixZQUFZLEVBQUUsUUFBUTtpQkFDdkIsQ0FBQztnQkFFRixNQUFNLE9BQU8sR0FBRyw2QkFBWSxDQUFDLE1BQU0sQ0FDakMsOEJBQUMseUJBQVcsSUFDVixLQUFLLEVBQUUsTUFBTSxFQUNiLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLEtBQUssRUFBRSxlQUFlLEdBQ3RCLENBQ0gsQ0FBQztnQkFFRixNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztvQkFDckMsSUFBSSxFQUFFLFVBQVU7aUJBQ2pCLENBQUMsQ0FBQztnQkFDSCxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBRTNDLHNDQUFzQztnQkFDdEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUM5QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIvVXNlcnMvdGhvbWFzL1NvdXJjZS9yZWFjdC1uYXRpdmUtY29yZS9zb3VyY2UvY29tcG9uZW50cy9pbnB1dC9Dcm9zc0VkaXRvci50ZXN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2l0bmV4dC5pby90ZXN0aW5nLXJlYWN0LTE2LTMtY29tcG9uZW50cy13aXRoLXJlYWN0LXRlc3QtcmVuZGVyZXItd2l0aG91dC1lbnp5bWUtZDljNjVkNjg5ZTg4XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgSUNyb3NzRWRpdG9yUHJvcHMsIENyb3NzRWRpdG9yIH0gZnJvbSAnLi9Dcm9zc0VkaXRvcic7XG5pbXBvcnQgVGVzdFJlbmRlcmVyIGZyb20gJ3JlYWN0LXRlc3QtcmVuZGVyZXInO1xuaW1wb3J0IHsgVGV4dElucHV0TWFza1Byb3BzIH0gZnJvbSAncmVhY3QtbmF0aXZlLW1hc2tlZC10ZXh0JztcblxuamVzdC51bm1vY2soJ3JlYWN0LW5hdGl2ZScpO1xuamVzdC51bm1vY2soJy4vQ3Jvc3NFZGl0b3InKTtcblxuZGVzY3JpYmUoJ2NvbXBvbmVudHMnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCc8Q3Jvc3NFZGl0b3IgLz4nLCAoKSA9PiB7XG4gICAgZGVzY3JpYmUoJ2BJQ3Jvc3NFZGl0b3JQcm9wc2AgaW50ZXJmYWNlJywgKCkgPT4ge1xuICAgICAgY29uc3QgcHJvcHNNb2NrOiBJQ3Jvc3NFZGl0b3JQcm9wcyA9IHsgbGFiZWw6ICdUZXN0JyB9O1xuICAgICAgaXQoJ1Nob3VsZCBtYXRjaCBzbmFwc2hvdCcsICgpID0+IHtcbiAgICAgICAgZXhwZWN0KHByb3BzTW9jaykudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgICB9KTtcblxuICAgICAgaXQoJ1Nob3VsZCBoYXZlIGBtYXNrUHJvcHNgIHByb3BlcnR5IHRoYXQgaXMgdW5kZWZpbmVkJywgKCkgPT4ge1xuICAgICAgICBleHBlY3QocHJvcHNNb2NrLm1hc2tQcm9wcykudG9CZVVuZGVmaW5lZCgpO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBkZXNjcmliZSgnV2l0aCBgbGFiZWxgIHByb3BlcnR5IHByb3ZpZGVkJywgKCkgPT4ge1xuICAgICAgaXQoJ0NvbXBvbmVudCBzaG91bGQgcmVuZGVyJywgKCkgPT4ge1xuICAgICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICAgICAgICA8Q3Jvc3NFZGl0b3JcbiAgICAgICAgICAgIGxhYmVsPXsnVGVzdCd9XG4gICAgICAgICAgICBvbkNoYW5nZVRleHQ9e2plc3QuZm4oKX1cbiAgICAgICAgICAgIHZhbHVlPXsnVGV4dHZhbHVlJ31cbiAgICAgICAgICAvPlxuICAgICAgICApO1xuICAgICAgICBleHBlY3Qod3JhcHBlci50b0pTT04oKSkudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgICB9KTtcblxuICAgICAgaXQoJ1Nob3VsZCBoYXZlIHBhcGVyIDxUZXh0SW5wdXQgLz4gd2l0aCBtb2RlIFwib3V0bGluZWRcIicsICgpID0+IHtcbiAgICAgICAgY29uc3Qgd3JhcHBlciA9IFRlc3RSZW5kZXJlci5jcmVhdGUoXG4gICAgICAgICAgPENyb3NzRWRpdG9yXG4gICAgICAgICAgICBsYWJlbD17J1Rlc3QnfVxuICAgICAgICAgICAgb25DaGFuZ2VUZXh0PXtqZXN0LmZuKCl9XG4gICAgICAgICAgICB2YWx1ZT17J1RleHR2YWx1ZSd9XG4gICAgICAgICAgLz5cbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgY2hpbGQgPSB3cmFwcGVyLnJvb3QuZmluZEJ5UHJvcHMoeyBtb2RlOiAnb3V0bGluZWQnIH0pO1xuICAgICAgICBleHBlY3QoY2hpbGQudHlwZSkudG9FcXVhbCgnVGV4dElucHV0Jyk7XG4gICAgICB9KTtcblxuICAgICAgaXQoJ1RleHRJbnB1dFByb3BzIG9uQ2hhbmdlVGV4dCBzaG91bGQgYmUgY2FsbGVkJywgKCkgPT4ge1xuICAgICAgICBsZXQgZ290VGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBvbkNhbGxlZCA9ICh2YWw6IHN0cmluZykgPT4gKGdvdFRleHQgPSB2YWwpO1xuXG4gICAgICAgIGNvbnN0IHRleHRWYWwgPSAnMTExMjIyJztcbiAgICAgICAgY29uc3QgbWFza1Byb3BzOiBUZXh0SW5wdXRNYXNrUHJvcHMgPSB7IHR5cGU6ICd6aXAtY29kZScgfTtcblxuICAgICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICAgICAgICA8Q3Jvc3NFZGl0b3JcbiAgICAgICAgICAgIG9uQ2hhbmdlVGV4dD17b25DYWxsZWR9XG4gICAgICAgICAgICBsYWJlbD17J1Rlc3QnfVxuICAgICAgICAgICAgbWFza1Byb3BzPXttYXNrUHJvcHN9XG4gICAgICAgICAgICB2YWx1ZT17J2RlZmF1bHQgdmFsdWUnfVxuICAgICAgICAgIC8+XG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgY2hpbGQgPSB3cmFwcGVyLnJvb3QuZmluZEJ5UHJvcHMobWFza1Byb3BzKTtcbiAgICAgICAgY2hpbGQuaW5zdGFuY2UucHJvcHMub25DaGFuZ2VUZXh0KHRleHRWYWwpO1xuXG4gICAgICAgIC8vIFRoZXJlIHdpbGwgbm90IGJlIGEgdmFsdWUgdGVzdCB0aW1lXG4gICAgICAgIGV4cGVjdChnb3RUZXh0KS50b0VxdWFsKCcnKTtcbiAgICAgIH0pO1xuXG4gICAgICBpdCgnbWFza1Byb3BzIG9uQ2hhbmdlVGV4dCBzaG91bGQgYmUgY2FsbGVkJywgKCkgPT4ge1xuICAgICAgICBsZXQgZ290VGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBvbkNhbGxlZCA9ICh2YWw6IHN0cmluZykgPT4gKGdvdFRleHQgPSB2YWwpO1xuXG4gICAgICAgIGNvbnN0IHRleHRWYWwgPSAnMTExMjIyJztcbiAgICAgICAgY29uc3QgbWFza1Byb3BzOiBUZXh0SW5wdXRNYXNrUHJvcHMgPSB7XG4gICAgICAgICAgdHlwZTogJ3ppcC1jb2RlJyxcbiAgICAgICAgICBvbkNoYW5nZVRleHQ6IG9uQ2FsbGVkLFxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHdyYXBwZXIgPSBUZXN0UmVuZGVyZXIuY3JlYXRlKFxuICAgICAgICAgIDxDcm9zc0VkaXRvclxuICAgICAgICAgICAgbGFiZWw9eydUZXN0J31cbiAgICAgICAgICAgIG1hc2tQcm9wcz17bWFza1Byb3BzfVxuICAgICAgICAgICAgdmFsdWU9eydkZWZhdWx0IHZhbHVlJ31cbiAgICAgICAgICAvPlxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IGNoaWxkID0gd3JhcHBlci5yb290LmZpbmRCeVByb3BzKHtcbiAgICAgICAgICB0eXBlOiAnemlwLWNvZGUnLFxuICAgICAgICB9KTtcbiAgICAgICAgY2hpbGQuaW5zdGFuY2UucHJvcHMub25DaGFuZ2VUZXh0KHRleHRWYWwpO1xuXG4gICAgICAgIC8vIFRoZXJlIHdpbGwgbm90IGJlIGEgdmFsdWUgdGVzdCB0aW1lXG4gICAgICAgIGV4cGVjdChnb3RUZXh0KS50b0VxdWFsKCcnKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sInZlcnNpb24iOjN9