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.type).toEqual('Text'); }); 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.type).toEqual('Text'); }); 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.type).toEqual('Text'); }); 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.type).toEqual('Text'); }); 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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QUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3RCLE1BQU0sQ0FBQyxzQkFBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLGNBQWMsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1FBQzVFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIvVXNlcnMvdGhvbWFzL1NvdXJjZS9yZWFjdC1uYXRpdmUtY29yZS9zb3VyY2UvY29tcG9uZW50cy9sYWJlbHMvQ3Jvc3NMYWJlbC50ZXN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IENyb3NzTGFiZWwsIHsgSUNyb3NzTGFiZWxQcm9wcyB9IGZyb20gJy4vQ3Jvc3NMYWJlbCc7XG5pbXBvcnQgVGVzdFJlbmRlcmVyIGZyb20gJ3JlYWN0LXRlc3QtcmVuZGVyZXInO1xuaW1wb3J0IHtcbiAgSGVhZGxpbmUsXG4gIFRpdGxlLFxuICBTdWJoZWFkaW5nLFxuICBDYXB0aW9uLFxuICBQYXJhZ3JhcGgsXG4gIFRleHQsXG59IGZyb20gJ3JlYWN0LW5hdGl2ZS1wYXBlcic7XG5pbXBvcnQgeyBDb2xvcnMgfSBmcm9tICcuLi8uLi9zdHlsZXMnO1xuaW1wb3J0IHsgTGlua2luZyB9IGZyb20gJ3JlYWN0LW5hdGl2ZSc7XG5cbmplc3QudW5tb2NrKCdyZWFjdC1uYXRpdmUnKTtcbmplc3QudW5tb2NrKCcuL0Nyb3NzTGFiZWwnKTtcblxuLyoqXG4gICAqIFRlc3QgY29tcG9uZW50IHJlbmRlcmluZy4gUHJvcGVydGllcyBvZiBjaGlsZHJlbiBtaWdodCBiZSB0ZXN0ZWQgYnkgaW1wb3J0aW5nIHRoZWlyIHR5cGU6XG4gICAqYGBgXG4gICAgICBjb25zdCBidG4gPSB3cmFwcGVyLnJvb3QuZmluZEJ5VHlwZShCdXR0b24pOyAvLyBvciBmaW5kQnlQcm9wcyh7IG1vZGU6ICd0ZXh0JyB9KTtcbiAgICAgIGV4cGVjdChidG4ucHJvcHMudGl0bGUpLnRvQmUoJ2NoaWxkJyk7XG4gICAgICBgYGBcbiAgICovXG5kZXNjcmliZSgnY29tcG9uZW50cycsICgpID0+IHtcbiAgZGVzY3JpYmUoJzxDcm9zc0xhYmVsIC8+JywgKCkgPT4ge1xuICAgIGRlc2NyaWJlKCdgSUNyb3NzTGFiZWxQcm9wc2AgaW50ZXJmYWNlJywgKCkgPT4ge1xuICAgICAgY29uc3QgcHJvcHNNb2NrOiBJQ3Jvc3NMYWJlbFByb3BzID0ge307XG4gICAgICBpdCgnU2hvdWxkIG1hdGNoIHNuYXBzaG90JywgKCkgPT4ge1xuICAgICAgICBleHBlY3QocHJvcHNNb2NrKS50b01hdGNoU25hcHNob3QoKTtcbiAgICAgIH0pO1xuXG4gICAgICBpdCgnU2hvdWxkIGhhdmUgYGlzVGl0bGVgIHByb3BlcnR5IHRoYXQgaXMgdW5kZWZpbmVkJywgKCkgPT4ge1xuICAgICAgICBleHBlY3QocHJvcHNNb2NrLmlzVGl0bGUpLnRvQmVVbmRlZmluZWQoKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ0NvbXBvbmVudCBzaG91bGQgcmVuZGVyJywgKCkgPT4ge1xuICAgICAgY29uc3Qgd3JhcHBlciA9IFRlc3RSZW5kZXJlci5jcmVhdGUoPENyb3NzTGFiZWwgLz4pO1xuICAgICAgZXhwZWN0KHdyYXBwZXIudG9KU09OKCkpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ1doZW4gYGlzSGVhZGxpbmVgIGlzIGB0cnVlYCBzaG91bGQgY29udGFpbiA8SGVhZGxpbmUgLz4nLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICAgICAgPENyb3NzTGFiZWwgaXNIZWFkbGluZT17dHJ1ZX0+XG4gICAgICAgICAgQ3Jvc3NwbGF0Zm9ybSAoaXNIZWFkbGluZT10cnVlKVxuICAgICAgICA8L0Nyb3NzTGFiZWw+XG4gICAgICApO1xuICAgICAgY29uc3QgY2hpbGQgPSB3cmFwcGVyLnJvb3QuZmluZEJ5VHlwZShIZWFkbGluZSk7XG4gICAgICBleHBlY3QoY2hpbGQudHlwZSkudG9FcXVhbCgnVGV4dCcpO1xuICAgIH0pO1xuXG4gICAgaXQoJ1doZW4gYGlzVGl0bGVgIGlzIGB0cnVlYCBzaG91bGQgY29udGFpbiA8SGVhZGxpbmUgLz4nLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICAgICAgPENyb3NzTGFiZWwgaXNUaXRsZT17dHJ1ZX0+Jmx0O0Nyb3NzTGFiZWwgaXNUaXRsZT10cnVlJmd0OzwvQ3Jvc3NMYWJlbD5cbiAgICAgICk7XG4gICAgICBjb25zdCBjaGlsZCA9IHdyYXBwZXIucm9vdC5maW5kQnlUeXBlKFRpdGxlKTtcbiAgICAgIGV4cGVjdChjaGlsZC50eXBlKS50b0VxdWFsKCdUZXh0Jyk7XG4gICAgfSk7XG5cbiAgICBpdCgnV2hlbiBgaXNTdWJoZWFkaW5nYCBpcyBgdHJ1ZWAgc2hvdWxkIGNvbnRhaW4gPFN1YmhlYWRpbmcgLz4nLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICAgICAgPENyb3NzTGFiZWwgaXNTdWJoZWFkaW5nPXt0cnVlfSBzdHlsZT17eyBtYXJnaW5Ub3A6IDUgfX0+XG4gICAgICAgICAgaXNTdWJIZWFkaW5nID0gdHJ1ZVxuICAgICAgICA8L0Nyb3NzTGFiZWw+XG4gICAgICApO1xuICAgICAgY29uc3QgY2hpbGQgPSB3cmFwcGVyLnJvb3QuZmluZEJ5VHlwZShTdWJoZWFkaW5nKTtcbiAgICAgIGV4cGVjdChjaGlsZC50eXBlKS50b0VxdWFsKCdUZXh0Jyk7XG4gICAgfSk7XG5cbiAgICBpdCgnV2hlbiBgaXNDYXB0aW9uYCBpcyBgdHJ1ZWAgc2hvdWxkIGNvbnRhaW4gPENhcHRpb24gLz4nLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICAgICAgPENyb3NzTGFiZWxcbiAgICAgICAgICBpc0NhcHRpb249e3RydWV9XG4gICAgICAgICAgc3R5bGU9e3sgY29sb3I6IENvbG9ycy5Dcm9zc0xpZ2h0Qmx1ZSwgbWFyZ2luVG9wOiAxMCB9fVxuICAgICAgICA+XG4gICAgICAgICAgaXNDYXB0aW9uPXRydWUsIGN1c3RvbSBjb2xvclxuICAgICAgICA8L0Nyb3NzTGFiZWw+XG4gICAgICApO1xuICAgICAgY29uc3QgY2hpbGQgPSB3cmFwcGVyLnJvb3QuZmluZEJ5VHlwZShDYXB0aW9uKTtcbiAgICAgIGV4cGVjdChjaGlsZC50eXBlKS50b0VxdWFsKCdUZXh0Jyk7XG4gICAgfSk7XG5cbiAgICBpdCgnV2hlbiBgaXNQYXJhZ3JhcGhgIGlzIGB0cnVlYCBzaG91bGQgY29udGFpbiA8UGFyYWdyYXBoIC8+JywgKCkgPT4ge1xuICAgICAgY29uc3Qgd3JhcHBlciA9IFRlc3RSZW5kZXJlci5jcmVhdGUoXG4gICAgICAgIDxDcm9zc0xhYmVsIGlzUGFyYWdyYXBoPXt0cnVlfSBzdHlsZT17eyBtYXJnaW5Ub3A6IDUgfX0+XG4gICAgICAgICAgaXNQYXJhZ3JhcGggPSB0cnVlXG4gICAgICAgIDwvQ3Jvc3NMYWJlbD5cbiAgICAgICk7XG4gICAgICBjb25zdCBjaGlsZCA9IHdyYXBwZXIucm9vdC5maW5kQnlUeXBlKFBhcmFncmFwaCk7XG4gICAgICBleHBlY3QoY2hpbGQudHlwZSkudG9FcXVhbCgnVGV4dCcpO1xuICAgIH0pO1xuXG4gICAgaXQoJ1doZW4gYG9uUHJlc3NVcmxUYXJnZXRgIGlzIHVybCBzaG91bGQgYmUgY2xpY2thYmxlJywgKCkgPT4ge1xuICAgICAgY29uc3Qgd3JhcHBlciA9IFRlc3RSZW5kZXJlci5jcmVhdGUoXG4gICAgICAgIDxDcm9zc0xhYmVsXG4gICAgICAgICAgb25QcmVzc1VybFRhcmdldD1cImh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9cIlxuICAgICAgICAgIHN0eWxlPXt7IG1hcmdpblRvcDogMjAsIG1hcmdpbkJvdHRvbTogMTAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIENsaWNrYWJsZSBsaW5rIChvblByZXNzVXJsVGFyZ2V0KTpcbiAgICAgICAgPC9Dcm9zc0xhYmVsPlxuICAgICAgKTtcbiAgICAgIGNvbnN0IGNoaWxkID0gd3JhcHBlci5yb290LmZpbmRCeVR5cGUoVGV4dCk7XG4gICAgICBjaGlsZC5wcm9wcy5vblByZXNzKCk7XG4gICAgICBleHBlY3QoTGlua2luZy5vcGVuVVJMKS50b0JlQ2FsbGVkV2l0aCgnaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnLycpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sInZlcnNpb24iOjN9