UNPKG

opds-web-client

Version:
51 lines (50 loc) 2.01 kB
"use strict"; var __assign = (this && this.__assign) || Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; var chai_1 = require("chai"); var sinon_1 = require("sinon"); var React = require("react"); var enzyme_1 = require("enzyme"); var OPDSCatalog_1 = require("../OPDSCatalog"); var Root_1 = require("../Root"); var store_1 = require("../../store"); describe("OPDSCatalog", function () { var props = { collectionUrl: "collection url", bookUrl: "book url", proxyUrl: "proxy url", navigate: sinon_1.stub(), pathFor: function (collectionUrl, bookUrl) { return "path"; }, bookData: { id: "book id", title: "book title", url: "book url" }, pageTitleTemplate: function (c, b) { return "test title"; } }; it("creates a store for Root if not given one", function () { var wrapper = enzyme_1.shallow(React.createElement(OPDSCatalog_1.default, __assign({}, props))); var root = wrapper.find(Root_1.default); chai_1.expect(root.props().store).to.be.ok; }); it("passes state to Root if given one", function () { var store = store_1.default(); var state = store.getState(); var wrapper = enzyme_1.shallow(React.createElement(OPDSCatalog_1.default, __assign({}, props, { initialState: state }))); var root = wrapper.find(Root_1.default); chai_1.expect(root.props().store.getState()).to.equal(state); }); it("passes props to Root", function () { var wrapper = enzyme_1.shallow(React.createElement(OPDSCatalog_1.default, __assign({}, props))); var root = wrapper.find(Root_1.default); Object.keys(props).forEach(function (key) { chai_1.expect(root.props()[key]).to.equal(props[key]); }); }); });