honkit
Version:
HonKit is building beautiful books using Markdown.
118 lines (117 loc) • 5.73 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const summaryArticle_1 = __importDefault(require("../summaryArticle"));
const file_1 = __importDefault(require("../file"));
const encodeSummaryArticleWithCache_1 = __importDefault(require("../../json/encodeSummaryArticleWithCache"));
const encodeSummaryArticle_1 = __importDefault(require("../../json/encodeSummaryArticle"));
describe("SummaryArticle", () => {
describe("createChildLevel", () => {
test("must create the right level", () => {
const article = summaryArticle_1.default.create({}, "1.1");
expect(article.createChildLevel()).toBe("1.1.1");
});
test("must create the right level when has articles", () => {
const article = summaryArticle_1.default.create({
articles: [
{
title: "Test",
},
],
}, "1.1");
expect(article.createChildLevel()).toBe("1.1.2");
});
});
describe("isFile", () => {
test("must return true when exactly the file", () => {
const article = summaryArticle_1.default.create({
ref: "hello.md",
}, "1.1");
const file = file_1.default.createWithFilepath("hello.md");
expect(article.isFile(file)).toBe(true);
});
test("must return true when path is not normalized", () => {
const article = summaryArticle_1.default.create({
ref: "/hello.md",
}, "1.1");
const file = file_1.default.createWithFilepath("hello.md");
expect(article.isFile(file)).toBe(true);
});
test("must return false when has anchor", () => {
const article = summaryArticle_1.default.create({
ref: "hello.md#world",
}, "1.1");
const file = file_1.default.createWithFilepath("hello.md");
expect(article.isFile(file)).toBe(false);
});
});
describe("hasAnchor", function () {
it("must return false when ref does not have anchor", function () {
var article = summaryArticle_1.default.create({
ref: "hello.md",
}, "1.1");
expect(article.hasAnchor()).toBe(false);
});
it("must return true when has anchor", function () {
var article = summaryArticle_1.default.create({
ref: "hello.md#world",
}, "1.1");
expect(article.hasAnchor()).toBe(true);
});
});
describe("withCache", function () {
it("encodeSummaryArticle (non cached) should return an object", function () {
var article = summaryArticle_1.default.create({
ref: "1-1.md",
}, "1.1");
expect((0, encodeSummaryArticle_1.default)(article)).toBeInstanceOf(Object);
});
it("encodeSummaryArticleWithCache (cached) should return an object", function () {
var article = summaryArticle_1.default.create({
ref: "1-1.md",
}, "1.1");
expect((0, encodeSummaryArticleWithCache_1.default)(article)).toBeInstanceOf(Object);
});
it("encodeSummaryArticle (non cached) should return different object when pass difference SummaryArticle", function () {
var article_1 = summaryArticle_1.default.create({
ref: "1-1.md"
}, "1.1");
var article_2 = summaryArticle_1.default.create({
ref: "1-2.md"
}, "1.2");
expect((0, encodeSummaryArticle_1.default)(article_1)).not.toStrictEqual((0, encodeSummaryArticle_1.default)(article_2));
});
it("encodeSummaryArticle (non cached) should return same object when pass same SummaryArticle", function () {
var article = summaryArticle_1.default.create({
ref: "1-1.md"
}, "1.1");
expect((0, encodeSummaryArticle_1.default)(article)).toStrictEqual((0, encodeSummaryArticle_1.default)(article));
});
it("encodeSummaryArticleWithCache (cached) should return different object when pass difference SummaryArticle", function () {
var article_1 = summaryArticle_1.default.create({
ref: "1-1.md"
}, "1.1");
var article_2 = summaryArticle_1.default.create({
ref: "1-2.md"
}, "1.2");
expect((0, encodeSummaryArticle_1.default)(article_1)).not.toStrictEqual((0, encodeSummaryArticleWithCache_1.default)(article_2));
});
it("encodeSummaryArticleWithCache (cached) should return same object when pass same SummaryArticle", function () {
var article = summaryArticle_1.default.create({
ref: "1-1.md"
}, "1.1");
expect((0, encodeSummaryArticle_1.default)(article)).toStrictEqual((0, encodeSummaryArticle_1.default)(article));
});
it("encodeSummaryArticle (non cached) and encodeSummaryArticleWithCache (cached) should return same object when pass same SummaryArticle", function () {
var article = summaryArticle_1.default.create({
ref: "1-1.md",
articles: [summaryArticle_1.default.create({
ref: "2-1.md",
}, "2.1")]
}, "1.1");
expect((0, encodeSummaryArticle_1.default)(article)).toStrictEqual((0, encodeSummaryArticleWithCache_1.default)(article));
});
});
});