[Experimental] Added a new "Similar" radio based on users history (suggested by @gordon)

This commit is contained in:
Eliot Berriot 2019-01-30 16:54:06 +01:00
parent 602a4c3b29
commit 5ce4cc8379
No known key found for this signature in database
GPG key ID: DD6965E2476E5C27
4 changed files with 95 additions and 4 deletions

View file

@ -237,3 +237,20 @@ def test_can_start_less_listened_radio(factories):
for i in range(5):
assert radio.pick(filter_playable=False) in good_tracks
def test_similar_radio_track(factories):
user = factories["users.User"]()
seed = factories["music.Track"]()
radio = radios.SimilarRadio()
radio.start_session(user, related_object=seed)
factories["music.Track"].create_batch(5)
# one user listened to this track
l1 = factories["history.Listening"](track=seed)
expected_next = factories["music.Track"]()
factories["history.Listening"](track=expected_next, user=l1.user)
assert radio.pick(filter_playable=False) == expected_next