← Back to team overview

sts-sponsors team mailing list archive

[Merge] ~petermakowski/maas-site-manager:fix-sites-pagination into maas-site-manager:main

 

Peter Makowski has proposed merging ~petermakowski/maas-site-manager:fix-sites-pagination into maas-site-manager:main.

Commit message:
fix(sites): pagination

Requested reviews:
  MAAS Committers (maas-committers)

For more details, see:
https://code.launchpad.net/~petermakowski/maas-site-manager/+git/site-manager/+merge/438695
-- 
Your team MAAS Committers is requested to review the proposed merge of ~petermakowski/maas-site-manager:fix-sites-pagination into maas-site-manager:main.
diff --git a/frontend/src/components/SitesList/components/SitesTable.test.tsx b/frontend/src/components/SitesList/components/SitesTable.test.tsx
index ece21db..d0818cc 100644
--- a/frontend/src/components/SitesList/components/SitesTable.test.tsx
+++ b/frontend/src/components/SitesList/components/SitesTable.test.tsx
@@ -35,6 +35,17 @@ it("displays rows with details for each site", () => {
     .forEach((row, i) => expect(row).toHaveTextContent(new RegExp(items[i].name, "i")));
 });
 
+it("displays correctly paginated results", () => {
+  const pageLength = 50;
+  const items = siteFactory.buildList(pageLength);
+  render(
+    <SitesTable data={{ items, total: 100, page: 1, size: pageLength }} isFetchedAfterMount={true} isLoading={false} />,
+  );
+
+  const tableBody = screen.getAllByRole("rowgroup")[1];
+  expect(within(tableBody).getAllByRole("row")).toHaveLength(pageLength);
+});
+
 it("displays correct local time", () => {
   const date = new Date("2000-01-01T12:00:00Z");
   vi.setSystemTime(date);
diff --git a/frontend/src/components/SitesList/components/SitesTable.tsx b/frontend/src/components/SitesList/components/SitesTable.tsx
index 2e8fd72..cb6b66f 100644
--- a/frontend/src/components/SitesList/components/SitesTable.tsx
+++ b/frontend/src/components/SitesList/components/SitesTable.tsx
@@ -1,13 +1,7 @@
 import { useMemo, useState } from "react";
 
 import { Input } from "@canonical/react-components";
-import {
-  useReactTable,
-  flexRender,
-  getCoreRowModel,
-  getFilteredRowModel,
-  getPaginationRowModel,
-} from "@tanstack/react-table";
+import { useReactTable, flexRender, getCoreRowModel } from "@tanstack/react-table";
 import type { ColumnDef, Column } from "@tanstack/react-table";
 import { format } from "date-fns";
 import { utcToZonedTime } from "date-fns-tz";
@@ -187,8 +181,6 @@ const SitesTable = ({
     enableColumnResizing: false,
     columnResizeMode: "onChange",
     getCoreRowModel: getCoreRowModel(),
-    getFilteredRowModel: getFilteredRowModel(),
-    getPaginationRowModel: getPaginationRowModel(),
     debugTable: isDev,
     debugHeaders: isDev,
     debugColumns: isDev,

Follow ups