--- trunk/tests/framework/pagination/Pagination.test.ts 2024/09/07 14:57:22 630 +++ trunk/tests/framework/pagination/Pagination.test.ts 2024/09/10 15:53:22 631 @@ -5,8 +5,12 @@ describe("Pagination", () => { createApplication(); + const emojiResolver = (_name: string) => { + return undefined; + }; + it("should initialize with default values", () => { - const pagination = new Pagination(); + const pagination = new Pagination(undefined, emojiResolver); expect(pagination.state).toEqual({ page: 1 }); expect(pagination.limit).toBe(10); @@ -14,55 +18,57 @@ it("should set fetcher correctly", () => { const fetcher = vi.fn(); - const pagination = new Pagination().setFetcher(fetcher); + const pagination = new Pagination(undefined, emojiResolver).setFetcher(fetcher); expect(pagination["_fetcher"]).toBe(fetcher); }); it("should set count getter correctly", () => { const getCount = vi.fn(); - const pagination = new Pagination().setCountGetter(getCount); + const pagination = new Pagination(undefined, emojiResolver).setCountGetter(getCount); expect(pagination["_getCount"]).toBe(getCount); }); it("should set initial message correctly", () => { const message = {} as any; - const pagination = new Pagination().setInitialMessage(message); + const pagination = new Pagination(undefined, emojiResolver).setInitialMessage(message); expect(pagination["_initialMessage"]).toBe(message); }); it("should set data correctly", () => { const data = [1, 2, 3]; - const pagination = new Pagination().setData(data); + const pagination = new Pagination(undefined, emojiResolver).setData(data); expect(pagination["_cachedData"]).toBe(data); }); it("should set limit correctly", () => { const limit = 20; - const pagination = new Pagination().setLimit(limit); + const pagination = new Pagination(undefined, emojiResolver).setLimit(limit); expect(pagination["_limit"]).toBe(limit); }); it("should set message options builder correctly", () => { const builder = vi.fn(); - const pagination = new Pagination().setMessageOptionsBuilder(builder); + const pagination = new Pagination(undefined, emojiResolver).setMessageOptionsBuilder( + builder + ); expect(pagination["_builder"]).toBe(builder); }); it("should set action row builder correctly", () => { const builder = vi.fn(); - const pagination = new Pagination().setActionRowBuilder(builder); + const pagination = new Pagination(undefined, emojiResolver).setActionRowBuilder(builder); expect(pagination["_actionRowBuilder"]).toBe(builder); }); it("should calculate offset correctly", () => { - const pagination = new Pagination().setLimit(10); + const pagination = new Pagination(undefined, emojiResolver).setLimit(10); expect(pagination["calculateOffset"].call(pagination, 1)).toBe(0); expect(pagination["calculateOffset"].call(pagination, 2)).toBe(10); @@ -71,7 +77,7 @@ it("should get slice correctly", async () => { const data = [1, 2, 3, 4, 5]; - const pagination = new Pagination().setData(data).setLimit(2); + const pagination = new Pagination(undefined, emojiResolver).setData(data).setLimit(2); expect(await pagination["getSlice"].call(pagination, 1)).toEqual([1, 2]); expect(await pagination["getSlice"].call(pagination, 2)).toEqual([3, 4]); @@ -81,7 +87,9 @@ it("should get message options correctly", async () => { const data = [1, 2, 3]; const builder = vi.fn().mockResolvedValue({}); - const pagination = new Pagination().setData(data).setMessageOptionsBuilder(builder); + const pagination = new Pagination(undefined, emojiResolver) + .setData(data) + .setMessageOptionsBuilder(builder); await pagination["getMessageOptions"].call(pagination); @@ -98,7 +106,7 @@ const message = { edit: vi.fn() } as any; - const pagination = new Pagination().setInitialMessage(message); + const pagination = new Pagination(undefined, emojiResolver).setInitialMessage(message); pagination["getMessageOptions"] = vi.fn().mockResolvedValue({}); await pagination.destroy(); @@ -110,13 +118,13 @@ it("should calculate max pages correctly", async () => { const getCount = vi.fn().mockResolvedValue(15); - const pagination = new Pagination().setCountGetter(getCount).setLimit(5); + const pagination = new Pagination(undefined, emojiResolver).setCountGetter(getCount).setLimit(5); expect(await pagination["calculateMaxPages"].call(pagination)).toBe(3); }); it("should get action row correctly", async () => { - const pagination = new Pagination().setLimit(10); + const pagination = new Pagination(undefined, emojiResolver).setLimit(10); pagination["calculateMaxPages"] = vi.fn().mockResolvedValue(3); const actionRow = await pagination["getActionRow"].call(pagination);