parent
84d80f6a10
commit
64abef1cd4
@ -519,10 +519,8 @@ LibraryBackend::AlbumList LibraryBackend::GetAlbums(const QString& artist,
|
|||||||
if (CheckErrors(q.lastError())) return ret;
|
if (CheckErrors(q.lastError())) return ret;
|
||||||
|
|
||||||
QString last_album;
|
QString last_album;
|
||||||
|
QString last_artist;
|
||||||
while (q.next()) {
|
while (q.next()) {
|
||||||
if (q.value(0).toString() == last_album)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
bool compilation = q.value(2).toBool() | q.value(3).toBool();
|
bool compilation = q.value(2).toBool() | q.value(3).toBool();
|
||||||
|
|
||||||
Album info;
|
Album info;
|
||||||
@ -530,9 +528,14 @@ LibraryBackend::AlbumList LibraryBackend::GetAlbums(const QString& artist,
|
|||||||
info.album_name = q.value(0).toString();
|
info.album_name = q.value(0).toString();
|
||||||
info.art_automatic = q.value(4).toString();
|
info.art_automatic = q.value(4).toString();
|
||||||
info.art_manual = q.value(5).toString();
|
info.art_manual = q.value(5).toString();
|
||||||
|
|
||||||
|
if (info.artist == last_artist && info.album_name == last_album)
|
||||||
|
continue;
|
||||||
|
|
||||||
ret << info;
|
ret << info;
|
||||||
|
|
||||||
last_album = info.album_name;
|
last_album = info.album_name;
|
||||||
|
last_artist = info.artist;
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -181,6 +181,17 @@ class SingleSong : public LibraryBackendTest {
|
|||||||
Song song_;
|
Song song_;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
TEST_F(SingleSong, GetSongWithNoAlbum) {
|
||||||
|
song_.set_album("");
|
||||||
|
AddDummySong(); if (HasFatalFailure()) return;
|
||||||
|
|
||||||
|
EXPECT_EQ(1, backend_->GetAllArtists().size());
|
||||||
|
LibraryBackend::AlbumList albums = backend_->GetAllAlbums();
|
||||||
|
EXPECT_EQ(1, albums.size());
|
||||||
|
EXPECT_EQ("Artist", albums[0].artist);
|
||||||
|
EXPECT_EQ("", albums[0].album_name);
|
||||||
|
}
|
||||||
|
|
||||||
TEST_F(SingleSong, GetAllArtists) {
|
TEST_F(SingleSong, GetAllArtists) {
|
||||||
AddDummySong(); if (HasFatalFailure()) return;
|
AddDummySong(); if (HasFatalFailure()) return;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user