22 lines
990 B
TypeScript
22 lines
990 B
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",
|
|
);
|
|
});
|