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.type).toEqual('Text'); }); 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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LENBQUMsT0FBTyxDQUFDLENBQUMsY0FBYyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7UUFDNUUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi9Vc2Vycy90aG9tYXMvU291cmNlL3JlYWN0LW5hdGl2ZS1jb3JlL3NvdXJjZS9jb21wb25lbnRzL2xhYmVscy9Dcm9zc0xhYmVsLnRlc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgQ3Jvc3NMYWJlbCwgeyBJQ3Jvc3NMYWJlbFByb3BzIH0gZnJvbSAnLi9Dcm9zc0xhYmVsJztcbmltcG9ydCBUZXN0UmVuZGVyZXIgZnJvbSAncmVhY3QtdGVzdC1yZW5kZXJlcic7XG5pbXBvcnQge1xuICBIZWFkbGluZSxcbiAgVGl0bGUsXG4gIFN1YmhlYWRpbmcsXG4gIENhcHRpb24sXG4gIFBhcmFncmFwaCxcbiAgVGV4dCxcbn0gZnJvbSAncmVhY3QtbmF0aXZlLXBhcGVyJztcbmltcG9ydCB7IENvbG9ycyB9IGZyb20gJy4uLy4uL3N0eWxlcyc7XG5pbXBvcnQgeyBMaW5raW5nIH0gZnJvbSAncmVhY3QtbmF0aXZlJztcblxuamVzdC51bm1vY2soJ3JlYWN0LW5hdGl2ZScpO1xuamVzdC51bm1vY2soJy4vQ3Jvc3NMYWJlbCcpO1xuXG4vKipcbiAgICogVGVzdCBjb21wb25lbnQgcmVuZGVyaW5nLiBQcm9wZXJ0aWVzIG9mIGNoaWxkcmVuIG1pZ2h0IGJlIHRlc3RlZCBieSBpbXBvcnRpbmcgdGhlaXIgdHlwZTpcbiAgICpgYGBcbiAgICAgIGNvbnN0IGJ0biA9IHdyYXBwZXIucm9vdC5maW5kQnlUeXBlKEJ1dHRvbik7IC8vIG9yIGZpbmRCeVByb3BzKHsgbW9kZTogJ3RleHQnIH0pO1xuICAgICAgZXhwZWN0KGJ0bi5wcm9wcy50aXRsZSkudG9CZSgnY2hpbGQnKTtcbiAgICAgIGBgYFxuICAgKi9cbmRlc2NyaWJlKCdjb21wb25lbnRzJywgKCkgPT4ge1xuICBkZXNjcmliZSgnPENyb3NzTGFiZWwgLz4nLCAoKSA9PiB7XG4gICAgZGVzY3JpYmUoJ2BJQ3Jvc3NMYWJlbFByb3BzYCBpbnRlcmZhY2UnLCAoKSA9PiB7XG4gICAgICBjb25zdCBwcm9wc01vY2s6IElDcm9zc0xhYmVsUHJvcHMgPSB7fTtcbiAgICAgIGl0KCdTaG91bGQgbWF0Y2ggc25hcHNob3QnLCAoKSA9PiB7XG4gICAgICAgIGV4cGVjdChwcm9wc01vY2spLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgICAgfSk7XG5cbiAgICAgIGl0KCdTaG91bGQgaGF2ZSBgaXNUaXRsZWAgcHJvcGVydHkgdGhhdCBpcyB1bmRlZmluZWQnLCAoKSA9PiB7XG4gICAgICAgIGV4cGVjdChwcm9wc01vY2suaXNUaXRsZSkudG9CZVVuZGVmaW5lZCgpO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnQ29tcG9uZW50IHNob3VsZCByZW5kZXInLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZSg8Q3Jvc3NMYWJlbCAvPik7XG4gICAgICBleHBlY3Qod3JhcHBlci50b0pTT04oKSkudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG5cbiAgICBpdCgnV2hlbiBgaXNIZWFkbGluZWAgaXMgYHRydWVgIHNob3VsZCBjb250YWluIDxIZWFkbGluZSAvPicsICgpID0+IHtcbiAgICAgIGNvbnN0IHdyYXBwZXIgPSBUZXN0UmVuZGVyZXIuY3JlYXRlKFxuICAgICAgICA8Q3Jvc3NMYWJlbCBpc0hlYWRsaW5lPXt0cnVlfT5cbiAgICAgICAgICBDcm9zc3BsYXRmb3JtIChpc0hlYWRsaW5lPXRydWUpXG4gICAgICAgIDwvQ3Jvc3NMYWJlbD5cbiAgICAgICk7XG4gICAgICBjb25zdCBjaGlsZCA9IHdyYXBwZXIucm9vdC5maW5kQnlUeXBlKEhlYWRsaW5lKTtcbiAgICAgIGV4cGVjdChjaGlsZC50eXBlKS50b0VxdWFsKCdUZXh0Jyk7XG4gICAgfSk7XG5cbiAgICBpdCgnV2hlbiBgaXNUaXRsZWAgaXMgYHRydWVgIHNob3VsZCBjb250YWluIDxIZWFkbGluZSAvPicsICgpID0+IHtcbiAgICAgIGNvbnN0IHdyYXBwZXIgPSBUZXN0UmVuZGVyZXIuY3JlYXRlKFxuICAgICAgICA8Q3Jvc3NMYWJlbCBpc1RpdGxlPXt0cnVlfT4mbHQ7Q3Jvc3NMYWJlbCBpc1RpdGxlPXRydWUmZ3Q7PC9Dcm9zc0xhYmVsPlxuICAgICAgKTtcbiAgICAgIGNvbnN0IGNoaWxkID0gd3JhcHBlci5yb290LmZpbmRCeVR5cGUoVGl0bGUpO1xuICAgICAgZXhwZWN0KGNoaWxkLmluc3RhbmNlKS50b0JlRGVmaW5lZCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ1doZW4gYGlzU3ViaGVhZGluZ2AgaXMgYHRydWVgIHNob3VsZCBjb250YWluIDxTdWJoZWFkaW5nIC8+JywgKCkgPT4ge1xuICAgICAgY29uc3Qgd3JhcHBlciA9IFRlc3RSZW5kZXJlci5jcmVhdGUoXG4gICAgICAgIDxDcm9zc0xhYmVsIGlzU3ViaGVhZGluZz17dHJ1ZX0gc3R5bGU9e3sgbWFyZ2luVG9wOiA1IH19PlxuICAgICAgICAgIGlzU3ViSGVhZGluZyA9IHRydWVcbiAgICAgICAgPC9Dcm9zc0xhYmVsPlxuICAgICAgKTtcbiAgICAgIGNvbnN0IGNoaWxkID0gd3JhcHBlci5yb290LmZpbmRCeVR5cGUoU3ViaGVhZGluZyk7XG4gICAgICBleHBlY3QoY2hpbGQuaW5zdGFuY2UpLnRvQmVEZWZpbmVkKCk7XG4gICAgfSk7XG5cbiAgICBpdCgnV2hlbiBgaXNDYXB0aW9uYCBpcyBgdHJ1ZWAgc2hvdWxkIGNvbnRhaW4gPENhcHRpb24gLz4nLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICAgICAgPENyb3NzTGFiZWxcbiAgICAgICAgICBpc0NhcHRpb249e3RydWV9XG4gICAgICAgICAgc3R5bGU9e3sgY29sb3I6IENvbG9ycy5Dcm9zc0xpZ2h0Qmx1ZSwgbWFyZ2luVG9wOiAxMCB9fVxuICAgICAgICA+XG4gICAgICAgICAgaXNDYXB0aW9uPXRydWUsIGN1c3RvbSBjb2xvclxuICAgICAgICA8L0Nyb3NzTGFiZWw+XG4gICAgICApO1xuICAgICAgY29uc3QgY2hpbGQgPSB3cmFwcGVyLnJvb3QuZmluZEJ5VHlwZShDYXB0aW9uKTtcbiAgICAgIGV4cGVjdChjaGlsZC5pbnN0YW5jZSkudG9CZURlZmluZWQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdXaGVuIGBpc1BhcmFncmFwaGAgaXMgYHRydWVgIHNob3VsZCBjb250YWluIDxQYXJhZ3JhcGggLz4nLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICAgICAgPENyb3NzTGFiZWwgaXNQYXJhZ3JhcGg9e3RydWV9IHN0eWxlPXt7IG1hcmdpblRvcDogNSB9fT5cbiAgICAgICAgICBpc1BhcmFncmFwaCA9IHRydWVcbiAgICAgICAgPC9Dcm9zc0xhYmVsPlxuICAgICAgKTtcbiAgICAgIGNvbnN0IGNoaWxkID0gd3JhcHBlci5yb290LmZpbmRCeVR5cGUoUGFyYWdyYXBoKTtcbiAgICAgIGV4cGVjdChjaGlsZC5pbnN0YW5jZSkudG9CZURlZmluZWQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdXaGVuIGBvblByZXNzVXJsVGFyZ2V0YCBpcyB1cmwgc2hvdWxkIGJlIGNsaWNrYWJsZScsICgpID0+IHtcbiAgICAgIGNvbnN0IHdyYXBwZXIgPSBUZXN0UmVuZGVyZXIuY3JlYXRlKFxuICAgICAgICA8Q3Jvc3NMYWJlbFxuICAgICAgICAgIG9uUHJlc3NVcmxUYXJnZXQ9XCJodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvXCJcbiAgICAgICAgICBzdHlsZT17eyBtYXJnaW5Ub3A6IDIwLCBtYXJnaW5Cb3R0b206IDEwIH19XG4gICAgICAgID5cbiAgICAgICAgICBDbGlja2FibGUgbGluayAob25QcmVzc1VybFRhcmdldCk6XG4gICAgICAgIDwvQ3Jvc3NMYWJlbD5cbiAgICAgICk7XG4gICAgICBjb25zdCBjaGlsZCA9IHdyYXBwZXIucm9vdC5maW5kQnlUeXBlKFRleHQpO1xuICAgICAgY2hpbGQucHJvcHMub25QcmVzcygpO1xuICAgICAgZXhwZWN0KExpbmtpbmcub3BlblVSTCkudG9CZUNhbGxlZFdpdGgoJ2h0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy8nKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJ2ZXJzaW9uIjozfQ==