@brightleaf/elements
Version:
React UI elements styled with Bulma CSS
60 lines (48 loc) • 3.57 kB
JavaScript
;
var _react = _interopRequireDefault(require("react"));
var _react2 = require("@testing-library/react");
var _jestDom = require("@testing-library/jest-dom");
var _box = require("../box");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
expect.extend({
toHaveClass: _jestDom.toHaveClass
});
describe('Box component', function () {
afterEach(_react2.cleanup);
it('should render', function () {
var _render = (0, _react2.render)(_react.default.createElement(_box.Box, null, _react.default.createElement("div", null, "Trapped in a Box"))),
container = _render.container;
expect(container.firstChild).toMatchSnapshot();
expect(container.firstChild).toHaveClass('box');
});
it('should render with extra classnames', function () {
var _render2 = (0, _react2.render)(_react.default.createElement(_box.Box, {
className: "boxed-in"
}, _react.default.createElement("div", null, "Trapped in a Box"))),
container = _render2.container;
expect(container.firstChild).toMatchSnapshot();
expect(container.firstChild).toHaveClass('box');
expect(container.firstChild).toHaveClass('boxed-in');
});
it('should render with has-background-primary when hasBackgroundPrimary set', function () {
var _render3 = (0, _react2.render)(_react.default.createElement(_box.Box, {
className: "boxed-in",
hasBackgroundPrimary: true
}, _react.default.createElement("div", null, "Trapped in a Box"))),
container = _render3.container;
expect(container.firstChild).toHaveClass('box');
expect(container.firstChild).toHaveClass('has-background-primary');
});
test.each([['has-background-primary', 'hasBackgroundPrimary'], ['has-background-success', 'hasBackgroundSuccess'], ['has-background-warning', 'hasBackgroundWarning'], ['has-background-danger', 'hasBackgroundDanger'], ['has-background-info', 'hasBackgroundInfo'], ['has-background-white', 'hasBackgroundWhite'], ['has-background-black', 'hasBackgroundBlack'], ['has-background-light', 'hasBackgroundLight'], ['has-background-dark', 'hasBackgroundDark'], ['has-background-link', 'hasBackgroundLink'], ['has-background-black-bis', 'hasBackgroundBlackBis'], ['has-background-black-ter', 'hasBackgroundBlackTer'], ['has-background-grey-darker', 'hasBackgroundGreyDarker'], ['has-background-grey-dark', 'hasBackgroundGreyDark'], ['has-background-grey', 'hasBackgroundGrey'], ['has-background-grey-light', 'hasBackgroundGreyLight'], ['has-background-grey-lighter', 'hasBackgroundGreyLighter'], ['has-background-white-ter', 'hasBackgroundWhiteTer'], ['has-background-white-bis', 'hasBackgroundWhiteBis']])('The background color class %i is added when %i is set)', function (className, propertyName) {
var prop = {};
prop[propertyName] = true;
var _render4 = (0, _react2.render)(_react.default.createElement(_box.Box, _extends({
className: "boxed-in"
}, prop), _react.default.createElement("div", null, "Trapped in a Box"))),
container = _render4.container;
expect(container.firstChild).toHaveClass('box');
expect(container.firstChild).toHaveClass('boxed-in');
expect(container.firstChild).toHaveClass(className);
});
});