Files
plainleaf/plug-api/lib/resolve.test.ts
T
Zef Hemel 02bd8ed362 Migration Deno -> Node.js
* First pass
* Now using vitest for tests
2026-02-14 22:08:35 +01:00

42 lines
1.1 KiB
TypeScript

import { expect, test } from "vitest";
import { resolveMarkdownLink } from "@silverbulletmd/silverbullet/lib/resolve";
test("Test URL resolver", () => {
// Absolute paths
expect(
resolveMarkdownLink("foo", "/bar"),
).toEqual("bar");
expect(
resolveMarkdownLink("/foo/bar/baz", "/qux"),
).toEqual("qux");
expect(
resolveMarkdownLink("foo", "/bar@123#456"),
).toEqual("bar@123#456");
expect(
resolveMarkdownLink("foo/bar", "/baz.jpg"),
).toEqual("baz.jpg");
// Relative paths
expect(
resolveMarkdownLink("bar", "foo"),
).toEqual("foo");
expect(
resolveMarkdownLink("foo/bar.jpg", "baz"),
).toEqual("foo/baz");
expect(
resolveMarkdownLink("/foo/bar", "baz"),
).toEqual("/foo/baz");
expect(
resolveMarkdownLink("foo///bar", "baz"),
).toEqual("foo///baz");
expect(
resolveMarkdownLink("bar", "../foo/baz"),
).toEqual("foo/baz");
expect(
resolveMarkdownLink("bar", "../../foo/baz"),
).toEqual("foo/baz");
expect(
resolveMarkdownLink("bar/qux", "foo/../baz"),
).toEqual("bar/foo/../baz");
});