react-select-material-ui
Version:
A react SELECT component based on react-select and looking like a material-ui component
52 lines • 2.75 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var React = require("react");
var enzyme_1 = require("enzyme");
var InputLabel_1 = require("@material-ui/core/InputLabel/InputLabel");
var SelectLabel_1 = require("./SelectLabel");
var ColorConstants_1 = require("./ColorConstants");
describe("SelectLabel", function () {
it("does not render if label is missing", function () {
var wrapper = enzyme_1.shallow(React.createElement(SelectLabel_1.default, null));
expect(wrapper.html()).toBeNull();
});
it("uses the label", function () {
var label = "label";
var wrapper = enzyme_1.shallow(React.createElement(SelectLabel_1.default, { label: label }));
expect(wrapper
.find(InputLabel_1.default)
.childAt(0)
.text()).toEqual(label);
});
it("passes id to child", function () {
var id = "id";
var label = "label";
var wrapper = enzyme_1.shallow(React.createElement(SelectLabel_1.default, { id: id, label: label }));
expect(wrapper.find(InputLabel_1.default).prop("htmlFor")).toEqual(id);
});
it("passes shrink to child", function () {
var label = "label";
var shrink = true;
var wrapper = enzyme_1.shallow(React.createElement(SelectLabel_1.default, { label: label, shrink: shrink }));
expect(wrapper.find(InputLabel_1.default).prop("shrink")).toEqual(shrink);
shrink = false;
wrapper = enzyme_1.shallow(React.createElement(SelectLabel_1.default, { label: label, shrink: shrink }));
expect(wrapper.find(InputLabel_1.default).prop("shrink")).toEqual(shrink);
});
it("uses the correct color for (no) focus", function () {
var label = "label";
var hasInputFocus = true;
var wrapper = enzyme_1.shallow(React.createElement(SelectLabel_1.default, { label: label, hasInputFocus: hasInputFocus }));
expect(wrapper.find(InputLabel_1.default).prop("style").color).toEqual(ColorConstants_1.colorFocus);
hasInputFocus = false;
wrapper = enzyme_1.shallow(React.createElement(SelectLabel_1.default, { label: label, hasInputFocus: hasInputFocus }));
expect(wrapper.find(InputLabel_1.default).prop("style").color).toEqual(ColorConstants_1.colorNoFocus);
});
it("passes inputLabelProps to child", function () {
var label = "label";
var inputLabelProps = { disabled: true, required: true };
var wrapper = enzyme_1.shallow(React.createElement(SelectLabel_1.default, { label: label, inputLabelProps: inputLabelProps }));
expect(wrapper.find(InputLabel_1.default).props()).toMatchObject(inputLabelProps);
});
});
//# sourceMappingURL=SelectLabel.test.js.map