@zohodesk/components
Version:
Dot UI is a customizable React component library built to deliver a clean, accessible, and developer-friendly UI experience. It offers a growing set of reusable components designed to align with modern design systems and streamline application development
221 lines (197 loc) • 7.3 kB
JavaScript
"use strict";
var _react = _interopRequireDefault(require("react"));
var _react2 = require("@testing-library/react");
var _Label = _interopRequireDefault(require("../Label"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
// Hoisted enum values (PropTypes.oneOf enforcement)
var REQUIRED_TYPE_VALUES = ['asterisk', 'text'];
var SIZE_VALUES = ['small', 'medium'];
var PALETTE_VALUES = ['default', 'secondary'];
var TEXT_WEIGHT_VALUES = ['regular', 'semibold'];
var LAYOUT_VALUES = ['inline', 'block'];
afterEach(_react2.cleanup);
describe('Label - Snapshot', function () {
test('Render with default props', function () {
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text"
})),
asFragment = _render.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test.each(REQUIRED_TYPE_VALUES)('Render with requiredType=%s', function (value) {
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
isRequired: true,
requiredType: value
})),
asFragment = _render2.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test.each(SIZE_VALUES)('Render with size=%s', function (value) {
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
size: value
})),
asFragment = _render3.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test.each(PALETTE_VALUES)('Render with palette=%s', function (value) {
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
palette: value
})),
asFragment = _render4.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test.each(TEXT_WEIGHT_VALUES)('Render with fontWeight=%s', function (value) {
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
fontWeight: value
})),
asFragment = _render5.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test.each(LAYOUT_VALUES)('Render with layout=%s', function (value) {
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
layout: value
})),
asFragment = _render6.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with shouldHighlightRequired=true', function () {
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
isRequired: true,
shouldHighlightRequired: true
})),
asFragment = _render7.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with isClipped=true', function () {
var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
isClipped: true
})),
asFragment = _render8.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with isRequired=true', function () {
var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
isRequired: true
})),
asFragment = _render9.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with isRequired=true isClipped=true', function () {
var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
isRequired: true,
isClipped: true
})),
asFragment = _render10.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with isDisabled=true', function () {
var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
isDisabled: true
})),
asFragment = _render11.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with isReadOnly=true', function () {
var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
isReadOnly: true
})),
asFragment = _render12.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with htmlFor', function () {
var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
htmlFor: "input-id"
})),
asFragment = _render13.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with i18nKeys', function () {
var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
isRequired: true,
requiredType: "text",
i18nKeys: {
requiredText: 'Custom Required'
}
})),
asFragment = _render14.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with customClass', function () {
var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
customClass: {
container: 'custom-container',
label: 'custom-label'
}
})),
asFragment = _render15.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with customProps', function () {
var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
customProps: {
container: {
$flag_shrink: true
},
label: {
$ui_lineClamp: '2'
}
}
})),
asFragment = _render16.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with customId and testId', function () {
var _render17 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
customId: "label-customId",
testId: "label-testId"
})),
asFragment = _render17.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with tag attributes', function () {
var _render18 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
tagAttributes: {
container: {
'data-custom-attr': 'true'
},
label: {
'data-custom-attr': 'true'
}
}
})),
asFragment = _render18.asFragment;
expect(asFragment()).toMatchSnapshot();
});
test('Render with a11y attributes', function () {
var _render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Label["default"], {
text: "Label text",
a11yAttributes: {
container: {
role: 'group'
},
label: {
'aria-label': 'Custom label'
}
}
})),
asFragment = _render19.asFragment;
expect(asFragment()).toMatchSnapshot();
});
});