honkit
Version:
HonKit is building beautiful books using Markdown.
64 lines (61 loc) • 2.33 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const immutable_1 = __importDefault(require("immutable"));
const mock_1 = __importDefault(require("../../fs/mock"));
const book_1 = __importDefault(require("../../models/book"));
const listAssets_1 = __importDefault(require("../listAssets"));
const parseGlossary_1 = __importDefault(require("../parseGlossary"));
const parseBook_1 = __importDefault(require("../parseBook"));
describe("listAssets", () => {
test("should not list glossary as asset", () => {
const fs = (0, mock_1.default)({
"GLOSSARY.md": "# Glossary\n\n## Hello\nDescription for hello",
"assetFile.js": "",
assets: {
"file.js": "",
},
});
const book = book_1.default.createForFS(fs);
return (0, parseGlossary_1.default)(book)
.then((resultBook) => {
return (0, listAssets_1.default)(resultBook, immutable_1.default.Map());
})
.then((assets) => {
expect(assets.size).toBe(2);
expect(assets.includes("assetFile.js"));
expect(assets.includes("assets/file.js"));
});
});
test("should not list README.md of pages as asset", () => {
const fs = (0, mock_1.default)({
"book.json": JSON.stringify({
root: "./test",
}),
test: {
"SUMMARY.md": `# Summary
* [top](README.md)
* [sub](sub/README-sub.md)
* [subsub](sub/sub/README-subsub.md)
`,
"README.md": "top",
"sub/README-sub.md": "in sub",
"sub/sub/README-subsub.md": "in sub/sub",
},
});
const pages = new Map()
.set("README.md", "top")
.set("sub/README-sub.md", "sub")
.set("sub/sub/README-subsub.md", "sub/sub");
const book = book_1.default.createForFS(fs);
return (0, parseBook_1.default)(book)
.then((resultBook) => {
return (0, listAssets_1.default)(resultBook, pages);
})
.then((assets) => {
expect(assets.size).toBe(0);
});
});
});