From 28609dcf8747c5c96dfe97d76c4f2a3bad53af33 Mon Sep 17 00:00:00 2001 From: Claudio Ortolina Date: Sat, 19 Oct 2024 19:46:39 +0100 Subject: [PATCH] Display latest purchase in stats page --- lib/music_library/records.ex | 2 +- test/music_library_web/controllers/stats_controller_test.exs | 2 +- test/support/fixtures/records_fixtures.ex | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/music_library/records.ex b/lib/music_library/records.ex index d094864e..67f58a67 100644 --- a/lib/music_library/records.ex +++ b/lib/music_library/records.ex @@ -99,7 +99,7 @@ defmodule MusicLibrary.Records do def get_latest_record! do q = from r in Record, - order_by: [desc: r.inserted_at], + order_by: [desc: r.purchased_at], limit: 1, select: ^@fields diff --git a/test/music_library_web/controllers/stats_controller_test.exs b/test/music_library_web/controllers/stats_controller_test.exs index 8ed93a35..86cf4069 100644 --- a/test/music_library_web/controllers/stats_controller_test.exs +++ b/test/music_library_web/controllers/stats_controller_test.exs @@ -42,7 +42,7 @@ defmodule MusicLibraryWeb.StatsControllerTest do end test "it shows the latest record", %{conn: conn, records: records} do - latest_record = Enum.max_by(records, & &1.inserted_at) + latest_record = Enum.max_by(records, & &1.purchased_at) conn = get(conn, "/") diff --git a/test/support/fixtures/records_fixtures.ex b/test/support/fixtures/records_fixtures.ex index 9cbad072..ff8d4f14 100644 --- a/test/support/fixtures/records_fixtures.ex +++ b/test/support/fixtures/records_fixtures.ex @@ -50,6 +50,7 @@ defmodule MusicLibrary.RecordsFixtures do def record_fixture(attrs \\ %{}) do record_musicbrainz_id = Ecto.UUID.generate() artist_name = Enum.random(@artists) + current_time = DateTime.utc_now() artists_attrs = [ %{ @@ -71,6 +72,7 @@ defmodule MusicLibrary.RecordsFixtures do type: :album, format: Record.formats() |> Enum.random(), release: Enum.random(1969..2024) |> Integer.to_string(), + purchased_at: current_time, artists: artists_attrs }) |> MusicLibrary.Records.create_record()