removed obsolete db functions

This commit is contained in:
Moritz Weber 2020-08-10 20:51:16 +02:00
parent b30f07588d
commit 85ebe9e37a
3 changed files with 0 additions and 144 deletions

View file

@ -79,12 +79,6 @@ class MoorMusicDataSource extends _$MoorMusicDataSource
return await into(albums).insert(albumModel.toAlbumsCompanion());
}
@override
Future<bool> albumExists(AlbumModel albumModel) async {
final List<AlbumModel> albumList = await getAlbums();
return albumList.contains(albumModel);
}
@override
Future<List<SongModel>> getSongs() {
return select(songs).get().then((moorSongList) => moorSongList
@ -108,54 +102,6 @@ class MoorMusicDataSource extends _$MoorMusicDataSource
await into(songs).insert(songModel.toSongsCompanion());
}
@override
Future<bool> songExists(SongModel songModel) async {
final List<SongModel> songList = await getSongs();
return songList.contains(songModel);
}
@override
Future<void> flagAlbumPresent(AlbumModel albumModel) async {
if (albumModel.id != null) {
(update(albums)..where((t) => t.id.equals(albumModel.id)))
.write(const AlbumsCompanion(present: Value(true)));
} else {
throw UnimplementedError();
}
}
@override
Future<AlbumModel> getAlbumByTitleArtist(String title, String artist) {
return (select(albums)
..where((t) => t.title.equals(title) & t.artist.equals(artist)))
.getSingle()
.then(
(moorAlbum) {
if (moorAlbum == null) {
return null;
}
return AlbumModel.fromMoorAlbum(moorAlbum);
},
);
}
@override
Future<void> removeNonpresentAlbums() async {
(delete(albums)..where((t) => t.present.not())).go();
}
@override
Future<void> resetAlbumsPresentFlag() async {
update(albums).write(const AlbumsCompanion(present: Value(false)));
// return;
}
@override
Future<void> flagSongPresent(SongModel songModel) async {
(update(songs)..where((t) => t.path.equals(songModel.path)))
.write(const SongsCompanion(present: Value(true)));
}
@override
Future<SongModel> getSongByPath(String path) async {
return (select(songs)..where((t) => t.path.equals(path))).getSingle().then(
@ -168,35 +114,6 @@ class MoorMusicDataSource extends _$MoorMusicDataSource
);
}
@override
Future<SongModel> getSongByTitleAlbumArtist(
String title, String album, String artist) async {
return (select(songs)
..where((t) =>
t.title.equals(title) &
t.albumTitle.equals(album) &
t.artist.equals(artist)))
.getSingle()
.then(
(moorSong) {
if (moorSong == null) {
return null;
}
return SongModel.fromMoorSong(moorSong);
},
);
}
@override
Future<void> removeNonpresentSongs() async {
(delete(songs)..where((t) => t.present.not())).go();
}
@override
Future<void> resetSongsPresentFlag() async {
update(songs).write(const SongsCompanion(present: Value(false)));
}
@override
Future<void> deleteAllArtists() async {
delete(artists).go();

View file

@ -4,29 +4,16 @@ import '../models/song_model.dart';
abstract class MusicDataSource {
Future<List<AlbumModel>> getAlbums();
Future<bool> albumExists(AlbumModel albumModel);
/// Insert album into the database. Return the ID of the inserted album.
Future<int> insertAlbum(AlbumModel albumModel);
Future<List<SongModel>> getSongs();
Future<List<SongModel>> getSongsFromAlbum(AlbumModel album);
Future<bool> songExists(SongModel songModel);
Future<void> insertSong(SongModel songModel);
Future<void> resetAlbumsPresentFlag();
/// Get an AlbumModel with the matching title and artist. Returns null if there is none.
Future<AlbumModel> getAlbumByTitleArtist(String title, String artist);
Future<void> flagAlbumPresent(AlbumModel albumModel);
Future<void> removeNonpresentAlbums();
Future<void> resetSongsPresentFlag();
Future<SongModel> getSongByPath(String path);
Future<SongModel> getSongByTitleAlbumArtist(
String title, String album, String artist);
Future<void> flagSongPresent(SongModel songModel);
Future<void> removeNonpresentSongs();
Future<void> deleteAllArtists();
Future<int> insertArtist(ArtistModel artistModel);

View file

@ -51,30 +51,6 @@ void main() {
);
});
group('albumExists', () {
test(
'should return true when album exists in data source',
() async {
// arrange
moorMusicDataSource.insertAlbum(albumModel);
// act
final bool result = await moorMusicDataSource.albumExists(albumModel);
// assert
assert(result);
},
);
test(
'should return false when album does not exists in data source',
() async {
// act
final bool result = await moorMusicDataSource.albumExists(albumModel);
// assert
assert(!result);
},
);
});
group('insertSong and getSongs', () {
test(
'should return the song that was inserted',
@ -87,28 +63,4 @@ void main() {
},
);
});
group('songExists', () {
test(
'should return true when song exists in data source',
() async {
// arrange
moorMusicDataSource.insertSong(songModel);
// act
final bool result = await moorMusicDataSource.songExists(songModel);
// assert
assert(result);
},
);
test(
'should return false when song does not exists in data source',
() async {
// act
final bool result = await moorMusicDataSource.songExists(songModel);
// assert
assert(!result);
},
);
});
}