Use the scrobbling service to get listen count rathen than querying the db directly

This commit is contained in:
emeric
2023-11-26 17:28:15 +01:00
parent d9c5072479
commit 74a222ed54
10 changed files with 57 additions and 21 deletions
+21 -3
View File
@@ -881,7 +881,7 @@ TEST_F(DatabaseFixture, Listen_getCount_track)
{
auto transaction{ session.createReadTransaction() };
const std::size_t count{ Listen::getCount(session, user->getId(), ScrobblingBackend::Internal, track.getId()) };
const std::size_t count{ Listen::getCount(session, user->getId(), track.getId()) };
EXPECT_EQ(count, 0);
}
@@ -891,9 +891,21 @@ TEST_F(DatabaseFixture, Listen_getCount_track)
{
auto transaction{ session.createReadTransaction() };
const std::size_t count{ Listen::getCount(session, user->getId(), ScrobblingBackend::Internal, track.getId()) };
const std::size_t count{ Listen::getCount(session, user->getId(), track.getId()) };
EXPECT_EQ(count, 1);
}
{
auto transaction{ session.createWriteTransaction() };
user.get().modify()->setScrobblingBackend(ScrobblingBackend::ListenBrainz);
}
{
auto transaction{ session.createReadTransaction() };
const std::size_t count{ Listen::getCount(session, user->getId(), track.getId()) };
EXPECT_EQ(count, 0);
}
}
TEST_F(DatabaseFixture, Listen_getCount_release)
@@ -906,7 +918,7 @@ TEST_F(DatabaseFixture, Listen_getCount_release)
auto getReleaseListenCount{ [&]
{
auto transaction{ session.createReadTransaction() };
return Listen::getCount(session, user->getId(), ScrobblingBackend::Internal, release.getId());
return Listen::getCount(session, user->getId(), release.getId());
} };
EXPECT_EQ(getReleaseListenCount(), 0);
@@ -936,6 +948,12 @@ TEST_F(DatabaseFixture, Listen_getCount_release)
ScopedListen listen4{ session, user.lockAndGet(), track1.lockAndGet(), ScrobblingBackend::Internal, dateTime1 };
EXPECT_EQ(getReleaseListenCount(), 2);
{
auto transaction{ session.createWriteTransaction() };
user.get().modify()->setScrobblingBackend(ScrobblingBackend::ListenBrainz);
}
EXPECT_EQ(getReleaseListenCount(), 0);
}
TEST_F(DatabaseFixture, Listen_getMostRecentTrack)