UNPKG

honkit

Version:

HonKit is building beautiful books using Markdown.

73 lines (72 loc) 2.72 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const summary_1 = __importDefault(require("../../../models/summary")); const summaryArticle_1 = __importDefault(require("../../../models/summaryArticle")); const file_1 = __importDefault(require("../../../models/file")); const insertArticle_1 = __importDefault(require("../insertArticle")); describe("insertArticle", () => { const summary = summary_1.default.createFromParts(new file_1.default(), [ { articles: [ { title: "1.1", path: "1.1", }, { title: "1.2", path: "1.2", }, ], }, { title: "Part I", articles: [ { title: "2.1", path: "2.1", articles: [ { title: "2.1.1", path: "2.1.1", }, { title: "2.1.2", path: "2.1.2", }, ], }, { title: "2.2", path: "2.2", }, ], }, ]); test("should insert an article at a given level", () => { const article = summaryArticle_1.default.create({ title: "Inserted", }, "fake.level"); const newSummary = (0, insertArticle_1.default)(summary, article, "2.1.1"); const inserted = newSummary.getByLevel("2.1.1"); const nextOne = newSummary.getByLevel("2.1.2"); expect(inserted.getTitle()).toBe("Inserted"); expect(inserted.getLevel()).toBe("2.1.1"); expect(nextOne.getTitle()).toBe("2.1.1"); expect(nextOne.getLevel()).toBe("2.1.2"); }); test("should insert an article in last position", () => { const article = summaryArticle_1.default.create({ title: "Inserted", }, "fake.level"); const newSummary = (0, insertArticle_1.default)(summary, article, "2.2"); const inserted = newSummary.getByLevel("2.2"); const previousOne = newSummary.getByLevel("2.1"); expect(inserted.getTitle()).toBe("Inserted"); expect(inserted.getLevel()).toBe("2.2"); expect(previousOne.getTitle()).toBe("2.1"); // Unchanged expect(previousOne.getLevel()).toBe("2.1"); }); });