Fix signature of LastFm.Feed.update/1
This commit is contained in:
+3
-1
@@ -21,7 +21,7 @@ defmodule LastFm.Feed do
|
||||
:last_fm_data
|
||||
]
|
||||
|
||||
@spec update([LastFm.Track.t()]) :: :ok | no_return
|
||||
@spec update([LastFm.Track.t()]) :: {:ok, non_neg_integer()} | no_return
|
||||
def update(tracks) do
|
||||
track_params =
|
||||
tracks
|
||||
@@ -37,6 +37,8 @@ defmodule LastFm.Feed do
|
||||
MusicLibrary.ScrobbleRules.apply_all_rules()
|
||||
|
||||
Phoenix.PubSub.broadcast(LastFm.PubSub, "feed:update", %{track_count: count})
|
||||
|
||||
{:ok, count}
|
||||
end
|
||||
|
||||
@spec all_tracks(non_neg_integer()) :: [LastFm.Track.t()]
|
||||
|
||||
@@ -12,14 +12,14 @@ defmodule LastFm.Worker.BackfillScrobbledTracks do
|
||||
# use the returning count to determine if we reached the end of the backfilling
|
||||
# process.
|
||||
case LastFm.Import.batch(to_uts: to_uts, limit: @batch_size) do
|
||||
{@batch_size, nil} ->
|
||||
{:ok, @batch_size} ->
|
||||
next_to_uts = LastFm.lowest_scrobbled_at_uts()
|
||||
|
||||
%{"to_uts" => next_to_uts}
|
||||
|> new(schedule_in: @backfill_delay)
|
||||
|> BackgroundRepo.insert()
|
||||
|
||||
{other_count, nil} when is_integer(other_count) ->
|
||||
{:ok, _other_count} ->
|
||||
:ok
|
||||
|
||||
error ->
|
||||
|
||||
@@ -40,16 +40,16 @@ defmodule LastFm.FeedTest do
|
||||
test "it stores the track and broadcasts the updated track count" do
|
||||
:ok = Feed.subscribe()
|
||||
|
||||
:ok = Feed.update([@track_two, @track_one])
|
||||
assert {:ok, 2} == Feed.update([@track_two, @track_one])
|
||||
assert_receive %{track_count: 2}
|
||||
|
||||
# Tracks have already been inserted, count of new tracks is 0
|
||||
:ok = Feed.update([@track_two, @track_one])
|
||||
assert {:ok, 0} == Feed.update([@track_two, @track_one])
|
||||
assert_receive %{track_count: 0}
|
||||
end
|
||||
|
||||
test "it returns tracks in descending order of scrobble" do
|
||||
:ok = Feed.update([@track_two, @track_one])
|
||||
assert {:ok, 2} == Feed.update([@track_two, @track_one])
|
||||
track_two_scrobbled_at_uts = @track_two.scrobbled_at_uts
|
||||
track_one_scrobbled_at_uts = @track_one.scrobbled_at_uts
|
||||
|
||||
|
||||
Reference in New Issue
Block a user