From 6e3300429bff335e12078375cb24e9fa6a869122 Mon Sep 17 00:00:00 2001 From: Claudio Ortolina Date: Tue, 15 Oct 2024 22:53:41 +0100 Subject: [PATCH] Collection defaults to 100 records per page --- .../live/record_live/index.ex | 2 +- .../live/record_index_test.exs | 21 +++++++++++-------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/lib/music_library_web/live/record_live/index.ex b/lib/music_library_web/live/record_live/index.ex index ae76bab8..7d372776 100644 --- a/lib/music_library_web/live/record_live/index.ex +++ b/lib/music_library_web/live/record_live/index.ex @@ -7,7 +7,7 @@ defmodule MusicLibraryWeb.RecordLive.Index do @default_records_list_params %{ query: "", page: 1, - page_size: 20 + page_size: 100 } @impl true diff --git a/test/music_library_web/live/record_index_test.exs b/test/music_library_web/live/record_index_test.exs index 3899d9bb..8d2928b7 100644 --- a/test/music_library_web/live/record_index_test.exs +++ b/test/music_library_web/live/record_index_test.exs @@ -8,8 +8,11 @@ defmodule MusicLibraryWeb.RecordIndexTest do setup :verify_on_exit! + @default_records_page_size 100 + @total_records @default_records_page_size + 10 + defp create_records(_) do - records = Enum.map(1..30, fn _ -> record_fixture() end) + records = Enum.map(1..@total_records, fn _ -> record_fixture() end) %{records: records} end @@ -32,8 +35,8 @@ defmodule MusicLibraryWeb.RecordIndexTest do html =~ record.id end) - assert length(present) == 20 - assert length(absent) == 10 + assert length(present) == @default_records_page_size + assert length(absent) == @total_records - @default_records_page_size for record <- present do record_row = @@ -55,15 +58,15 @@ defmodule MusicLibraryWeb.RecordIndexTest do end test "uses query string params", %{conn: conn, records: records} do - {:ok, page_2_live, page_2_html} = live(conn, ~p"/records?page=2&page_size=5") + {:ok, page_2_live, page_2_html} = live(conn, ~p"/records?page=2&page_size=25") {page_2_present, page_2_absent} = Enum.split_with(records, fn record -> page_2_html =~ record.id end) - assert length(page_2_present) == 5 - assert length(page_2_absent) == 25 + assert length(page_2_present) == 25 + assert length(page_2_absent) == @total_records - 25 page_2_pagination = page_2_live |> with_target("#pagination") refute has_element?(page_2_pagination, "a", "2") @@ -72,15 +75,15 @@ defmodule MusicLibraryWeb.RecordIndexTest do assert has_element?(page_2_pagination, "a", "4") assert has_element?(page_2_pagination, "a", "5") - {:ok, page_3_live, page_3_html} = live(conn, ~p"/records?page=3&page_size=5") + {:ok, page_3_live, page_3_html} = live(conn, ~p"/records?page=3&page_size=25") {page_3_present, page_3_absent} = Enum.split_with(records, fn record -> page_3_html =~ record.id end) - assert length(page_3_present) == 5 - assert length(page_3_absent) == 25 + assert length(page_3_present) == 25 + assert length(page_3_absent) == @total_records - 25 page_3_pagination = page_3_live |> with_target("#pagination") refute has_element?(page_3_pagination, "a", "3")