UNPKG

react-native-cross-components

Version:
69 lines 13 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('./CrossLabel'); const react_1 = __importDefault(require("react")); const CrossLabel_1 = __importDefault(require("./CrossLabel")); const react_test_renderer_1 = __importDefault(require("react-test-renderer")); const react_native_paper_1 = require("react-native-paper"); const styles_1 = require("../../styles"); const react_native_1 = require("react-native"); /** * Test component rendering. Properties of children might be tested by importing their type: *``` const btn = wrapper.root.findByType(Button); // or findByProps({ mode: 'text' }); expect(btn.props.title).toBe('child'); ``` */ describe('components', () => { describe('<CrossLabel />', () => { describe('`ICrossLabelProps` interface', () => { const propsMock = {}; it('Should match snapshot', () => { expect(propsMock).toMatchSnapshot(); }); it('Should have `isTitle` property that is undefined', () => { expect(propsMock.isTitle).toBeUndefined(); }); }); it('Component should render', () => { const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossLabel_1.default, null)); expect(wrapper.toJSON()).toMatchSnapshot(); }); it('When `isHeadline` is `true` should contain <Headline />', () => { const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossLabel_1.default, { isHeadline: true }, "Crossplatform (isHeadline=true)")); const child = wrapper.root.findByType(react_native_paper_1.Headline); expect(child.instance).toBeDefined(); }); it('When `isTitle` is `true` should contain <Headline />', () => { const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossLabel_1.default, { isTitle: true }, "<CrossLabel isTitle=true>")); const child = wrapper.root.findByType(react_native_paper_1.Title); expect(child.instance).toBeDefined(); }); it('When `isSubheading` is `true` should contain <Subheading />', () => { const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossLabel_1.default, { isSubheading: true, style: { marginTop: 5 } }, "isSubHeading = true")); const child = wrapper.root.findByType(react_native_paper_1.Subheading); expect(child.instance).toBeDefined(); }); it('When `isCaption` is `true` should contain <Caption />', () => { const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossLabel_1.default, { isCaption: true, style: { color: styles_1.Colors.CrossLightBlue, marginTop: 10 } }, "isCaption=true, custom color")); const child = wrapper.root.findByType(react_native_paper_1.Caption); expect(child.instance).toBeDefined(); }); it('When `isParagraph` is `true` should contain <Paragraph />', () => { const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossLabel_1.default, { isParagraph: true, style: { marginTop: 5 } }, "isParagraph = true")); const child = wrapper.root.findByType(react_native_paper_1.Paragraph); expect(child.instance).toBeDefined(); }); it('When `onPressUrlTarget` is url should be clickable', () => { const wrapper = react_test_renderer_1.default.create(react_1.default.createElement(CrossLabel_1.default, { onPressUrlTarget: "https://www.typescriptlang.org/", style: { marginTop: 20, marginBottom: 10 } }, "Clickable link (onPressUrlTarget):")); const child = wrapper.root.findByType(react_native_paper_1.Text); child.props.onPress(); expect(react_native_1.Linking.openURL).toBeCalledWith('https://www.typescriptlang.org/'); }); }); }); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJmaWxlIjoiL1VzZXJzL3Rob21hcy9Tb3VyY2UvcmVhY3QtbmF0aXZlLWNvcmUvc291cmNlL2NvbXBvbmVudHMvbGFiZWxzL0Nyb3NzTGFiZWwudGVzdC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7QUFjQSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7QUFmNUIsa0RBQTBCO0FBQzFCLDhEQUE0RDtBQUM1RCw4RUFBK0M7QUFDL0MsMkRBTzRCO0FBQzVCLHlDQUFzQztBQUN0QywrQ0FBdUM7QUFLdkM7Ozs7OztLQU1LO0FBQ0wsUUFBUSxDQUFDLFlBQVksRUFBRSxHQUFHLEVBQUU7SUFDMUIsUUFBUSxDQUFDLGdCQUFnQixFQUFFLEdBQUcsRUFBRTtRQUM5QixRQUFRLENBQUMsOEJBQThCLEVBQUUsR0FBRyxFQUFFO1lBQzVDLE1BQU0sU0FBUyxHQUFxQixFQUFFLENBQUM7WUFDdkMsRUFBRSxDQUFDLHVCQUF1QixFQUFFLEdBQUcsRUFBRTtnQkFDL0IsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3RDLENBQUMsQ0FBQyxDQUFDO1lBRUgsRUFBRSxDQUFDLGtEQUFrRCxFQUFFLEdBQUcsRUFBRTtnQkFDMUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUM1QyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLHlCQUF5QixFQUFFLEdBQUcsRUFBRTtZQUNqQyxNQUFNLE9BQU8sR0FBRyw2QkFBWSxDQUFDLE1BQU0sQ0FBQyw4QkFBQyxvQkFBVSxPQUFHLENBQUMsQ0FBQztZQUNwRCxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7UUFFSCxFQUFFLENBQUMseURBQXlELEVBQUUsR0FBRyxFQUFFO1lBQ2pF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LENBQUMsQ0FBQyxjQUFjLENBQUMsaUNBQWlDLENBQUMsQ0FBQztRQUM1RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiL1VzZXJzL3Rob21hcy9Tb3VyY2UvcmVhY3QtbmF0aXZlLWNvcmUvc291cmNlL2NvbXBvbmVudHMvbGFiZWxzL0Nyb3NzTGFiZWwudGVzdC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBDcm9zc0xhYmVsLCB7IElDcm9zc0xhYmVsUHJvcHMgfSBmcm9tICcuL0Nyb3NzTGFiZWwnO1xuaW1wb3J0IFRlc3RSZW5kZXJlciBmcm9tICdyZWFjdC10ZXN0LXJlbmRlcmVyJztcbmltcG9ydCB7XG4gIEhlYWRsaW5lLFxuICBUaXRsZSxcbiAgU3ViaGVhZGluZyxcbiAgQ2FwdGlvbixcbiAgUGFyYWdyYXBoLFxuICBUZXh0LFxufSBmcm9tICdyZWFjdC1uYXRpdmUtcGFwZXInO1xuaW1wb3J0IHsgQ29sb3JzIH0gZnJvbSAnLi4vLi4vc3R5bGVzJztcbmltcG9ydCB7IExpbmtpbmcgfSBmcm9tICdyZWFjdC1uYXRpdmUnO1xuXG5qZXN0LnVubW9jaygncmVhY3QtbmF0aXZlJyk7XG5qZXN0LnVubW9jaygnLi9Dcm9zc0xhYmVsJyk7XG5cbi8qKlxuICAgKiBUZXN0IGNvbXBvbmVudCByZW5kZXJpbmcuIFByb3BlcnRpZXMgb2YgY2hpbGRyZW4gbWlnaHQgYmUgdGVzdGVkIGJ5IGltcG9ydGluZyB0aGVpciB0eXBlOlxuICAgKmBgYFxuICAgICAgY29uc3QgYnRuID0gd3JhcHBlci5yb290LmZpbmRCeVR5cGUoQnV0dG9uKTsgLy8gb3IgZmluZEJ5UHJvcHMoeyBtb2RlOiAndGV4dCcgfSk7XG4gICAgICBleHBlY3QoYnRuLnByb3BzLnRpdGxlKS50b0JlKCdjaGlsZCcpO1xuICAgICAgYGBgXG4gICAqL1xuZGVzY3JpYmUoJ2NvbXBvbmVudHMnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCc8Q3Jvc3NMYWJlbCAvPicsICgpID0+IHtcbiAgICBkZXNjcmliZSgnYElDcm9zc0xhYmVsUHJvcHNgIGludGVyZmFjZScsICgpID0+IHtcbiAgICAgIGNvbnN0IHByb3BzTW9jazogSUNyb3NzTGFiZWxQcm9wcyA9IHt9O1xuICAgICAgaXQoJ1Nob3VsZCBtYXRjaCBzbmFwc2hvdCcsICgpID0+IHtcbiAgICAgICAgZXhwZWN0KHByb3BzTW9jaykudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgICB9KTtcblxuICAgICAgaXQoJ1Nob3VsZCBoYXZlIGBpc1RpdGxlYCBwcm9wZXJ0eSB0aGF0IGlzIHVuZGVmaW5lZCcsICgpID0+IHtcbiAgICAgICAgZXhwZWN0KHByb3BzTW9jay5pc1RpdGxlKS50b0JlVW5kZWZpbmVkKCk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdDb21wb25lbnQgc2hvdWxkIHJlbmRlcicsICgpID0+IHtcbiAgICAgIGNvbnN0IHdyYXBwZXIgPSBUZXN0UmVuZGVyZXIuY3JlYXRlKDxDcm9zc0xhYmVsIC8+KTtcbiAgICAgIGV4cGVjdCh3cmFwcGVyLnRvSlNPTigpKS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcblxuICAgIGl0KCdXaGVuIGBpc0hlYWRsaW5lYCBpcyBgdHJ1ZWAgc2hvdWxkIGNvbnRhaW4gPEhlYWRsaW5lIC8+JywgKCkgPT4ge1xuICAgICAgY29uc3Qgd3JhcHBlciA9IFRlc3RSZW5kZXJlci5jcmVhdGUoXG4gICAgICAgIDxDcm9zc0xhYmVsIGlzSGVhZGxpbmU9e3RydWV9PlxuICAgICAgICAgIENyb3NzcGxhdGZvcm0gKGlzSGVhZGxpbmU9dHJ1ZSlcbiAgICAgICAgPC9Dcm9zc0xhYmVsPlxuICAgICAgKTtcbiAgICAgIGNvbnN0IGNoaWxkID0gd3JhcHBlci5yb290LmZpbmRCeVR5cGUoSGVhZGxpbmUpO1xuICAgICAgZXhwZWN0KGNoaWxkLmluc3RhbmNlKS50b0JlRGVmaW5lZCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ1doZW4gYGlzVGl0bGVgIGlzIGB0cnVlYCBzaG91bGQgY29udGFpbiA8SGVhZGxpbmUgLz4nLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICAgICAgPENyb3NzTGFiZWwgaXNUaXRsZT17dHJ1ZX0+Jmx0O0Nyb3NzTGFiZWwgaXNUaXRsZT10cnVlJmd0OzwvQ3Jvc3NMYWJlbD5cbiAgICAgICk7XG4gICAgICBjb25zdCBjaGlsZCA9IHdyYXBwZXIucm9vdC5maW5kQnlUeXBlKFRpdGxlKTtcbiAgICAgIGV4cGVjdChjaGlsZC5pbnN0YW5jZSkudG9CZURlZmluZWQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdXaGVuIGBpc1N1YmhlYWRpbmdgIGlzIGB0cnVlYCBzaG91bGQgY29udGFpbiA8U3ViaGVhZGluZyAvPicsICgpID0+IHtcbiAgICAgIGNvbnN0IHdyYXBwZXIgPSBUZXN0UmVuZGVyZXIuY3JlYXRlKFxuICAgICAgICA8Q3Jvc3NMYWJlbCBpc1N1YmhlYWRpbmc9e3RydWV9IHN0eWxlPXt7IG1hcmdpblRvcDogNSB9fT5cbiAgICAgICAgICBpc1N1YkhlYWRpbmcgPSB0cnVlXG4gICAgICAgIDwvQ3Jvc3NMYWJlbD5cbiAgICAgICk7XG4gICAgICBjb25zdCBjaGlsZCA9IHdyYXBwZXIucm9vdC5maW5kQnlUeXBlKFN1YmhlYWRpbmcpO1xuICAgICAgZXhwZWN0KGNoaWxkLmluc3RhbmNlKS50b0JlRGVmaW5lZCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ1doZW4gYGlzQ2FwdGlvbmAgaXMgYHRydWVgIHNob3VsZCBjb250YWluIDxDYXB0aW9uIC8+JywgKCkgPT4ge1xuICAgICAgY29uc3Qgd3JhcHBlciA9IFRlc3RSZW5kZXJlci5jcmVhdGUoXG4gICAgICAgIDxDcm9zc0xhYmVsXG4gICAgICAgICAgaXNDYXB0aW9uPXt0cnVlfVxuICAgICAgICAgIHN0eWxlPXt7IGNvbG9yOiBDb2xvcnMuQ3Jvc3NMaWdodEJsdWUsIG1hcmdpblRvcDogMTAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIGlzQ2FwdGlvbj10cnVlLCBjdXN0b20gY29sb3JcbiAgICAgICAgPC9Dcm9zc0xhYmVsPlxuICAgICAgKTtcbiAgICAgIGNvbnN0IGNoaWxkID0gd3JhcHBlci5yb290LmZpbmRCeVR5cGUoQ2FwdGlvbik7XG4gICAgICBleHBlY3QoY2hpbGQuaW5zdGFuY2UpLnRvQmVEZWZpbmVkKCk7XG4gICAgfSk7XG5cbiAgICBpdCgnV2hlbiBgaXNQYXJhZ3JhcGhgIGlzIGB0cnVlYCBzaG91bGQgY29udGFpbiA8UGFyYWdyYXBoIC8+JywgKCkgPT4ge1xuICAgICAgY29uc3Qgd3JhcHBlciA9IFRlc3RSZW5kZXJlci5jcmVhdGUoXG4gICAgICAgIDxDcm9zc0xhYmVsIGlzUGFyYWdyYXBoPXt0cnVlfSBzdHlsZT17eyBtYXJnaW5Ub3A6IDUgfX0+XG4gICAgICAgICAgaXNQYXJhZ3JhcGggPSB0cnVlXG4gICAgICAgIDwvQ3Jvc3NMYWJlbD5cbiAgICAgICk7XG4gICAgICBjb25zdCBjaGlsZCA9IHdyYXBwZXIucm9vdC5maW5kQnlUeXBlKFBhcmFncmFwaCk7XG4gICAgICBleHBlY3QoY2hpbGQuaW5zdGFuY2UpLnRvQmVEZWZpbmVkKCk7XG4gICAgfSk7XG5cbiAgICBpdCgnV2hlbiBgb25QcmVzc1VybFRhcmdldGAgaXMgdXJsIHNob3VsZCBiZSBjbGlja2FibGUnLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICAgICAgPENyb3NzTGFiZWxcbiAgICAgICAgICBvblByZXNzVXJsVGFyZ2V0PVwiaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL1wiXG4gICAgICAgICAgc3R5bGU9e3sgbWFyZ2luVG9wOiAyMCwgbWFyZ2luQm90dG9tOiAxMCB9fVxuICAgICAgICA+XG4gICAgICAgICAgQ2xpY2thYmxlIGxpbmsgKG9uUHJlc3NVcmxUYXJnZXQpOlxuICAgICAgICA8L0Nyb3NzTGFiZWw+XG4gICAgICApO1xuICAgICAgY29uc3QgY2hpbGQgPSB3cmFwcGVyLnJvb3QuZmluZEJ5VHlwZShUZXh0KTtcbiAgICAgIGNoaWxkLnByb3BzLm9uUHJlc3MoKTtcbiAgICAgIGV4cGVjdChMaW5raW5nLm9wZW5VUkwpLnRvQmVDYWxsZWRXaXRoKCdodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvJyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXSwidmVyc2lvbiI6M30=