From 9fd26b472b18924ab11afcebace90329b0fe3abf Mon Sep 17 00:00:00 2001 From: Mohamed Bassem Date: Sun, 12 Jan 2025 20:03:47 +0000 Subject: feat: Add ability to filter by bookmark type --- packages/trpc/lib/__tests__/search.test.ts | 48 ++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) (limited to 'packages/trpc/lib/__tests__') diff --git a/packages/trpc/lib/__tests__/search.test.ts b/packages/trpc/lib/__tests__/search.test.ts index 468aef83..8a6f1949 100644 --- a/packages/trpc/lib/__tests__/search.test.ts +++ b/packages/trpc/lib/__tests__/search.test.ts @@ -280,6 +280,54 @@ describe("getBookmarkIdsFromMatcher", () => { expect(result).toEqual(["b1", "b2"]); }); + it("should handle type matcher", async () => { + expect( + await getBookmarkIdsFromMatcher(mockCtx, { + type: "type", + typeName: BookmarkTypes.LINK, + inverse: false, + }), + ).toEqual(["b1", "b2", "b4"]); + expect( + await getBookmarkIdsFromMatcher(mockCtx, { + type: "type", + typeName: BookmarkTypes.TEXT, + inverse: false, + }), + ).toEqual(["b3", "b5"]); + expect( + await getBookmarkIdsFromMatcher(mockCtx, { + type: "type", + typeName: BookmarkTypes.ASSET, + inverse: false, + }), + ).toEqual(["b6"]); + }); + + it("should handle type matcher with inverse=true", async () => { + expect( + await getBookmarkIdsFromMatcher(mockCtx, { + type: "type", + typeName: BookmarkTypes.LINK, + inverse: true, + }), + ).toEqual(["b3", "b5", "b6"]); + expect( + await getBookmarkIdsFromMatcher(mockCtx, { + type: "type", + typeName: BookmarkTypes.TEXT, + inverse: true, + }), + ).toEqual(["b1", "b2", "b4", "b6"]); + expect( + await getBookmarkIdsFromMatcher(mockCtx, { + type: "type", + typeName: BookmarkTypes.ASSET, + inverse: true, + }), + ).toEqual(["b1", "b2", "b3", "b4", "b5"]); + }); + it("should handle dateBefore matcher with inverse=true", async () => { const matcher: Matcher = { type: "dateBefore", -- cgit v1.2.3-70-g09d2