react95-native
Version:
Refreshed Windows 95 style UI components for your React Native app
64 lines (56 loc) • 2.04 kB
JavaScript
var _react = _interopRequireDefault(require("react"));
var _reactNative = require("@testing-library/react-native");
var _styles = require("../../styles/styles");
var _Button = require("./Button");
var _ = require("../..");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const noop = () => {};
describe('<Button />', () => {
it('should render children', () => {
const {
getByText
} = (0, _reactNative.render)( /*#__PURE__*/_react.default.createElement(_.Button, {
onPress: noop
}, /*#__PURE__*/_react.default.createElement(_.Text, null, "Potato")));
expect(getByText('Potato')).toBeTruthy();
});
it('should fire press', () => {
const onButtonPress = jest.fn();
const {
getByRole
} = (0, _reactNative.render)( /*#__PURE__*/_react.default.createElement(_.Button, {
onPress: onButtonPress
}, /*#__PURE__*/_react.default.createElement(_.Text, null, "Ok")));
(0, _reactNative.fireEvent)(getByRole('button'), 'press');
expect(onButtonPress).toHaveBeenCalled();
});
it('should handle square sizes', () => {
const sizes = ['sm', 'md', 'lg'];
sizes.forEach(size => {
const {
getByTestId
} = (0, _reactNative.render)( /*#__PURE__*/_react.default.createElement(_.Button, {
onPress: noop,
size: size,
square: true
}, /*#__PURE__*/_react.default.createElement(_.Text, null, "Ok")));
expect(getByTestId(_Button.testId)).toHaveStyle({
width: _styles.blockSizes[size]
});
});
});
it('should render custom styles', () => {
const style = {
backgroundColor: 'papayawhip'
};
const {
getByTestId
} = (0, _reactNative.render)( /*#__PURE__*/_react.default.createElement(_.Button, {
onPress: noop,
style: style
}, /*#__PURE__*/_react.default.createElement(_.Text, null, "Ok")));
expect(getByTestId(_Button.testId)).toHaveStyle(style);
});
});
//# sourceMappingURL=Button.spec.js.map
;