@vtex/styleguide
Version:
> VTEX Styleguide React components ([Docs](https://vtex.github.io/styleguide))
78 lines (63 loc) • 2.41 kB
JavaScript
;
var _react = require("react");
var _react2 = _interopRequireDefault(_react);
var _react3 = require("@testing-library/react");
var _index = require("./index");
var _index2 = _interopRequireDefault(_index);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// Skipping those tests because getByText is getting the div inside the button and not the button element itself
// I've tried to fix it, but I couldn't manage to. So I let me fellows future developers in this endeavour
describe.skip('Alert', function () {
describe('action button', function () {
it('should be displayed if props are passed', function () {
var label = 'Action';
var onClick = jest.fn();
var _render = (0, _react3.render)(_react2.default.createElement(_index2.default, {
type: "error",
action: {
label: label,
onClick: onClick
}
}, "Foo")),
getByText = _render.getByText;
var actionButton = getByText(label);
expect(actionButton).toBeDefined();
_react3.fireEvent.click(actionButton);
expect(onClick).toHaveBeenCalled();
});
});
describe('onClose', function () {
it('should be called on click close button', function () {
var onClose = jest.fn();
var _render2 = (0, _react3.render)(_react2.default.createElement(_index2.default, {
type: "error",
onClose: onClose
}, "Foo")),
getByTitle = _render2.getByTitle;
var closeButton = getByTitle('Close');
_react3.fireEvent.click(closeButton);
expect(onClose).toHaveBeenCalled();
});
it('should be called after autoClose time passes', function () {
jest.useFakeTimers();
var onClose = jest.fn();
(0, _react3.render)(_react2.default.createElement(_index2.default, {
type: "error",
autoClose: 1,
onClose: onClose
}, "Foo"));
jest.runAllTimers();
expect(onClose).toHaveBeenCalled();
});
it('should not be called if no click happens or autoClose time is not defined', function () {
jest.useFakeTimers();
var onClose = jest.fn();
(0, _react3.render)(_react2.default.createElement(_index2.default, {
type: "error",
onClose: onClose
}, "Foo"));
jest.runAllTimers();
expect(onClose).not.toHaveBeenCalled();
});
});
});