UNPKG

vcc-ui

Version:

VCC UI is a collection of React UI Components that can be used for developing front-end applications at Volvo Car Corporation.

93 lines (87 loc) 2.7 kB
"use strict"; var _react = _interopRequireDefault(require("react")); var _ = require("."); var _helpers = require("./helpers"); var _createSnapshot = _interopRequireDefault(require("../../test/create-snapshot")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } describe("<NavItem /> snapshot tests", function () { it("renders correctly with default props", function () { var snapshot = (0, _createSnapshot.default)(_react.default.createElement(_.NavItem, null, "Children")); expect(snapshot).toMatchSnapshot(); }); it("renders correctly with dropdown=true", function () { var snapshot = (0, _createSnapshot.default)(_react.default.createElement(_.NavItem, { dropdown: true }, "Children")); expect(snapshot).toMatchSnapshot(); }); it("renders correctly with isActive=true", function () { var snapshot = (0, _createSnapshot.default)(_react.default.createElement(_.NavItem, { isActive: true }, "Children")); expect(snapshot).toMatchSnapshot(); }); it("renders correctly with dropdown=true and isActive=true", function () { var snapshot = (0, _createSnapshot.default)(_react.default.createElement(_.NavItem, { dropdown: true, isActive: true }, "Children")); expect(snapshot).toMatchSnapshot(); }); it("renders correctly with theme", function () { var theme = { navItem: { backgroundColor: "green", padding: "20px", color: "black" }, navItemArrows: { color: "white", size: "16" } }; var snapshot = (0, _createSnapshot.default)(_react.default.createElement(_.NavItem, { dropdown: true, isActive: true }, "Children"), theme); expect(snapshot).toMatchSnapshot(); }); }); describe("helpers", function () { it("should return default styles when navItemArrow is not defined", function () { var defaults = { color: "red", size: "15" }; var theme = { navItem: { border: "1px solid black" } }; var arrowStyles = (0, _helpers.getThemeArrowStyles)({ theme: theme, defaults: defaults }); expect(arrowStyles).toEqual(defaults); }); it("should return theme styles when navItemArrow is defined", function () { var defaults = { color: "red", size: "15" }; var theme = { navItem: { border: "1px solid black" }, navItemArrow: { color: "daisy", size: "40" } }; var arrowStyles = (0, _helpers.getThemeArrowStyles)({ theme: theme, defaults: defaults }); expect(arrowStyles).toEqual(theme.navItemArrow); }); });