OOKNET                             [ /  search the index  ]  
──────────────────────────────────────────────────────────────────────────────────────
══════════════════════════════════════════════════════════════════════════════════════
OOKNET   [ /  search  ]  
────────────────────────────────────────────────
════════════════════════════════════════════════
 
 
master @ 45 LINES
 
[ HISTORY ]  [ UP ]
 

import { describe, expect, it } from "vitest";
import { docsOrder, docsTree } from "./docs";

const DOCS = [
  { id: "design/pipeline", title: "Pipeline", order: 2 },
  { id: "design/frames", title: "Frames", order: 1 },
  { id: "authoring/wikilinks", title: "Wikilinks", order: 2 },
  { id: "authoring/filing-notes", title: "Filing notes", order: 1 },
  { id: "design/zeta", title: "Zeta" },
];

describe("docsOrder", () => {
  it("sorts directories alphabetically, pages by order then title", () => {
    expect(docsOrder(DOCS).map((d) => d.id)).toEqual([
      "authoring/filing-notes",
      "authoring/wikilinks",
      "design/frames",
      "design/pipeline",
      "design/zeta",
    ]);
  });

  it("sorts a top-level page before directory contents", () => {
    const withIndex = [...DOCS, { id: "overview", title: "Overview" }];
    expect(docsOrder(withIndex)[0].id).toBe("overview");
  });
});

describe("docsTree", () => {
  it("builds branches from path segments with linked leaves", () => {
    const tree = docsTree(DOCS);
    expect(tree.map((n) => n.label)).toEqual(["/AUTHORING", "/DESIGN"]);
    const design = tree[1];
    expect(design.children!.map((n) => n.label)).toEqual(["FRAMES", "PIPELINE", "Z
ETA"]);
    expect(design.children![0].href).toBe("/docs/design/frames/");
  });

  it("marks the current page", () => {
    const tree = docsTree(DOCS, "design/frames");
    const frames = tree[1].children![0];
    expect(frames.current).toBe(true);
    expect(tree[0].children![0].current).toBeUndefined();
  });
});

import { describe, expect, it } from "vitest
";
import { docsOrder, docsTree } from "./docs"
;

const DOCS = [
  { id: "design/pipeline", title: "Pipeline"
, order: 2 },
  { id: "design/frames", title: "Frames", or
der: 1 },
  { id: "authoring/wikilinks", title: "Wikil
inks", order: 2 },
  { id: "authoring/filing-notes", title: "Fi
ling notes", order: 1 },
  { id: "design/zeta", title: "Zeta" },
];

describe("docsOrder", () => {
  it("sorts directories alphabetically, page
s by order then title", () => {
    expect(docsOrder(DOCS).map((d) => d.id))
.toEqual([
      "authoring/filing-notes",
      "authoring/wikilinks",
      "design/frames",
      "design/pipeline",
      "design/zeta",
    ]);
  });

  it("sorts a top-level page before director
y contents", () => {
    const withIndex = [...DOCS, { id: "overv
iew", title: "Overview" }];
    expect(docsOrder(withIndex)[0].id).toBe(
"overview");
  });
});

describe("docsTree", () => {
  it("builds branches from path segments wit
h linked leaves", () => {
    const tree = docsTree(DOCS);
    expect(tree.map((n) => n.label)).toEqual
(["/AUTHORING", "/DESIGN"]);
    const design = tree[1];
    expect(design.children!.map((n) => n.lab
el)).toEqual(["FRAMES", "PIPELINE", "ZETA"])
;
    expect(design.children![0].href).toBe("/
docs/design/frames/");
  });

  it("marks the current page", () => {
    const tree = docsTree(DOCS, "design/fram
es");
    const frames = tree[1].children![0];
    expect(frames.current).toBe(true);
    expect(tree[0].children![0].current).toB
eUndefined();
  });
});
 
──────────────────────────────────────────────────────────────────────────────────────
OOKNET
────────────────────────────────────────────────
OOKNET