shineout
Version:
A components library for React
33 lines (32 loc) • 1.24 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.classLengthTest = classLengthTest;
exports.default = structureTest;
exports.inputTest = inputTest;
exports.structureTestInContainer = structureTestInContainer;
var _react = require("@testing-library/react");
function classLengthTest(container, name, nums) {
expect(container.querySelectorAll(name).length).toBe(nums);
}
function structureTestInContainer(container, attributes) {
attributes.forEach(function (value) {
classLengthTest(container, value.attribute, value.num);
});
}
function structureTest(Component, attributes) {
test('should render when not set attribute', function () {
var _render = (0, _react.render)(Component),
container = _render.container;
structureTestInContainer(container, attributes);
});
}
function inputTest(Component, attributes) {
var _render2 = (0, _react.render)(Component),
container = _render2.container;
attributes.forEach(function (value) {
var _container$querySelec;
expect((_container$querySelec = container.querySelector('input')) === null || _container$querySelec === void 0 ? void 0 : _container$querySelec.getAttribute(value.attribute)).toBe(value.value);
});
}