react-native-cross-components
Version:
Beautiful React-Native components using RN Paper by Callstack
46 lines • 6.51 kB
JavaScript
;
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('./CrossButton');
const react_1 = __importDefault(require("react"));
const CrossButton_1 = __importDefault(require("./CrossButton"));
const FontAwesome_1 = __importDefault(require("react-native-vector-icons/FontAwesome"));
const react_test_renderer_1 = __importDefault(require("react-test-renderer"));
const styles_1 = require("../../styles");
function setup(iconName, title) {
return react_test_renderer_1.default.create(react_1.default.createElement(CrossButton_1.default, { iconName: iconName, title: title, onPress: jest.fn() }));
}
describe('components', () => {
/**
* Test component rendering. Properties of children might be tested by importing their type:
*```
const btn = wrapper.root.findByType(Button);
expect(btn.props.title).toBe('child');
```
*/
describe('<CrossButton />', () => {
it('With title should render', () => {
const wrapper = setup('home', 'home');
expect(wrapper.toJSON()).toMatchSnapshot();
});
it('Without title should renders', () => {
const wrapper = setup('map', undefined);
expect(wrapper.toJSON()).toMatchSnapshot();
});
it('Without title should have <FontAwesome.Button />', () => {
const wrapper = setup('map', undefined);
const child = wrapper.root.findByType(FontAwesome_1.default.Button);
expect(child).toBeDefined();
});
it('Without title should have <FontAwesome.Button /> with iconName', () => {
const wrapper = setup('map', undefined);
const child = wrapper.root.findByProps({ 'color': styles_1.Colors.CrossBlack });
console.log('FontAwesome.Button props', child.props);
expect(child.props.name).toBe('map');
});
});
});
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJmaWxlIjoiL1VzZXJzL3Rob21hcy9Tb3VyY2UvcmVhY3QtbmF0aXZlLWNvcmUvc291cmNlL2NvbXBvbmVudHMvYnV0dG9ucy9Dcm9zc0J1dHRvbi50ZXN0LnRzeCIsIm1hcHBpbmdzIjoiOzs7OztBQVlBLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztBQWI3QixrREFBMEI7QUFDMUIsZ0VBQXdDO0FBQ3hDLHdGQUFnRTtBQUNoRSw4RUFBK0M7QUFDL0MseUNBQXNDO0FBRXRDLFNBQVMsS0FBSyxDQUFDLFFBQWdCLEVBQUUsS0FBVztJQUMxQyxPQUFPLDZCQUFZLENBQUMsTUFBTSxDQUN4Qiw4QkFBQyxxQkFBVyxJQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxHQUFJLENBQ3RFLENBQUM7QUFDSixDQUFDO0FBS0QsUUFBUSxDQUFDLFlBQVksRUFBRSxHQUFHLEVBQUU7SUFDMUI7Ozs7OztPQU1HO0lBQ0gsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRTtRQUMvQixFQUFFLENBQUMsMEJBQTBCLEVBQUUsR0FBRyxFQUFFO1lBQ2xDLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDdEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLDhCQUE4QixFQUFFLEdBQUcsRUFBRTtZQUN0QyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ3hDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyxrREFBa0QsRUFBRSxHQUFHLEVBQUU7WUFDMUQsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztZQUN4QyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxxQkFBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzFELE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyxnRUFBZ0UsRUFBRSxHQUFHLEVBQUU7WUFDeEUsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztZQUN4QyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFDLE9BQU8sRUFBRSxlQUFNLENBQUMsVUFBVSxFQUFDLENBQUMsQ0FBQztZQUNyRSxPQUFPLENBQUMsR0FBRyxDQUFDLDBCQUEwQixFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyRCxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi9Vc2Vycy90aG9tYXMvU291cmNlL3JlYWN0LW5hdGl2ZS1jb3JlL3NvdXJjZS9jb21wb25lbnRzL2J1dHRvbnMvQ3Jvc3NCdXR0b24udGVzdC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBDcm9zc0J1dHRvbiBmcm9tICcuL0Nyb3NzQnV0dG9uJztcbmltcG9ydCBGb250QXdlc29tZSBmcm9tICdyZWFjdC1uYXRpdmUtdmVjdG9yLWljb25zL0ZvbnRBd2Vzb21lJztcbmltcG9ydCBUZXN0UmVuZGVyZXIgZnJvbSAncmVhY3QtdGVzdC1yZW5kZXJlcic7XG5pbXBvcnQgeyBDb2xvcnMgfSBmcm9tICcuLi8uLi9zdHlsZXMnO1xuXG5mdW5jdGlvbiBzZXR1cChpY29uTmFtZTogc3RyaW5nLCB0aXRsZT86IGFueSkge1xuICByZXR1cm4gVGVzdFJlbmRlcmVyLmNyZWF0ZShcbiAgICA8Q3Jvc3NCdXR0b24gaWNvbk5hbWU9e2ljb25OYW1lfSB0aXRsZT17dGl0bGV9IG9uUHJlc3M9e2plc3QuZm4oKX0gLz5cbiAgKTtcbn1cblxuamVzdC51bm1vY2soJ3JlYWN0LW5hdGl2ZScpO1xuamVzdC51bm1vY2soJy4vQ3Jvc3NCdXR0b24nKTtcblxuZGVzY3JpYmUoJ2NvbXBvbmVudHMnLCAoKSA9PiB7XG4gIC8qKlxuICAgKiBUZXN0IGNvbXBvbmVudCByZW5kZXJpbmcuIFByb3BlcnRpZXMgb2YgY2hpbGRyZW4gbWlnaHQgYmUgdGVzdGVkIGJ5IGltcG9ydGluZyB0aGVpciB0eXBlOlxuICAgKmBgYFxuICAgICAgY29uc3QgYnRuID0gd3JhcHBlci5yb290LmZpbmRCeVR5cGUoQnV0dG9uKTtcbiAgICAgIGV4cGVjdChidG4ucHJvcHMudGl0bGUpLnRvQmUoJ2NoaWxkJyk7XG4gICAgICBgYGBcbiAgICovXG4gIGRlc2NyaWJlKCc8Q3Jvc3NCdXR0b24gLz4nLCAoKSA9PiB7XG4gICAgaXQoJ1dpdGggdGl0bGUgc2hvdWxkIHJlbmRlcicsICgpID0+IHtcbiAgICAgIGNvbnN0IHdyYXBwZXIgPSBzZXR1cCgnaG9tZScsICdob21lJyk7XG4gICAgICBleHBlY3Qod3JhcHBlci50b0pTT04oKSkudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG5cbiAgICBpdCgnV2l0aG91dCB0aXRsZSBzaG91bGQgcmVuZGVycycsICgpID0+IHtcbiAgICAgIGNvbnN0IHdyYXBwZXIgPSBzZXR1cCgnbWFwJywgdW5kZWZpbmVkKTtcbiAgICAgIGV4cGVjdCh3cmFwcGVyLnRvSlNPTigpKS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcblxuICAgIGl0KCdXaXRob3V0IHRpdGxlIHNob3VsZCBoYXZlIDxGb250QXdlc29tZS5CdXR0b24gLz4nLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gc2V0dXAoJ21hcCcsIHVuZGVmaW5lZCk7XG4gICAgICBjb25zdCBjaGlsZCA9IHdyYXBwZXIucm9vdC5maW5kQnlUeXBlKEZvbnRBd2Vzb21lLkJ1dHRvbik7XG4gICAgICBleHBlY3QoY2hpbGQpLnRvQmVEZWZpbmVkKCk7XG4gICAgfSk7XG5cbiAgICBpdCgnV2l0aG91dCB0aXRsZSBzaG91bGQgaGF2ZSA8Rm9udEF3ZXNvbWUuQnV0dG9uIC8+IHdpdGggaWNvbk5hbWUnLCAoKSA9PiB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gc2V0dXAoJ21hcCcsIHVuZGVmaW5lZCk7XG4gICAgICBjb25zdCBjaGlsZCA9IHdyYXBwZXIucm9vdC5maW5kQnlQcm9wcyh7J2NvbG9yJzogQ29sb3JzLkNyb3NzQmxhY2t9KTtcbiAgICAgIGNvbnNvbGUubG9nKCdGb250QXdlc29tZS5CdXR0b24gcHJvcHMnLCBjaGlsZC5wcm9wcyk7XG4gICAgICBleHBlY3QoY2hpbGQucHJvcHMubmFtZSkudG9CZSgnbWFwJyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXSwidmVyc2lvbiI6M30=