mirror of
https://github.com/outline/outline.git
synced 2025-12-30 07:19:52 -06:00
* feat: init collection mention * refactor: dedicated search helper function for collection mentions * feat: add test for collection search function helper * feat: parseCollectionSlug * feat: isCollectionUrl * feat: add collection mention to paste handler * fix: update translation of mention keyboard shortcut * fix: keyboard shortcut mention label * fix: missing teamId in search helper functioN * chore: update translations --------- Co-authored-by: Tom Moor <tom@getoutline.com>
49 lines
1.3 KiB
TypeScript
49 lines
1.3 KiB
TypeScript
import sharedEnv from "../env";
|
|
import parseCollectionSlug from "./parseCollectionSlug";
|
|
|
|
sharedEnv.URL = "https://app.outline.dev";
|
|
|
|
describe("#parseCollectionSlug", () => {
|
|
it("should work with fully qualified url", () => {
|
|
expect(
|
|
parseCollectionSlug("http://example.com/collection/test-ANzZwgv2RG")
|
|
).toEqual("test-ANzZwgv2RG");
|
|
});
|
|
|
|
it("should work with paths after document slug", () => {
|
|
expect(
|
|
parseCollectionSlug(
|
|
"http://mywiki.getoutline.com/collection/test-ANzZwgv2RG/recent"
|
|
)
|
|
).toEqual("test-ANzZwgv2RG");
|
|
});
|
|
|
|
it("should work with hash", () => {
|
|
expect(
|
|
parseCollectionSlug(
|
|
"http://mywiki.getoutline.com/collection/test-ANzZwgv2RG#state"
|
|
)
|
|
).toEqual("test-ANzZwgv2RG");
|
|
});
|
|
|
|
it("should work with subdomain qualified url", () => {
|
|
expect(
|
|
parseCollectionSlug(
|
|
"http://mywiki.getoutline.com/collection/test-ANzZwgv2RG"
|
|
)
|
|
).toEqual("test-ANzZwgv2RG");
|
|
});
|
|
|
|
it("should work with path", () => {
|
|
expect(parseCollectionSlug("/collection/test-ANzZwgv2RG")).toEqual(
|
|
"test-ANzZwgv2RG"
|
|
);
|
|
});
|
|
|
|
it("should work with path and hash", () => {
|
|
expect(parseCollectionSlug("/collection/test-ANzZwgv2RG#somehash")).toEqual(
|
|
"test-ANzZwgv2RG"
|
|
);
|
|
});
|
|
});
|