public async Task GetSongsAsyncTest() { // Arrange var result = new SongDataDto { Id = 1, AlbumId = 1, Name = "Test", Duration = 1337, FileName = "test.mp3" }; var songCollectionMock = new Mock <ISongCollection>(); songCollectionMock .Setup(mock => mock.GetSongsByAlbumIdAsync(1)) .ReturnsAsync(new[] { new Song(result, null, null, null) }) .Verifiable(); var album = new Album(new AlbumDataDto { Id = 1, ArtistId = 1, Name = "Test", CoverArt = "" }, null, null, songCollectionMock.Object); // Act var songs = (await album.GetSongsAsync()).ToArray(); // Assert songCollectionMock.Verify(); Assert.AreEqual(1, songs.Length); Assert.AreEqual(1, songs[0].Id); }
public Song(SongDataDto dto, ISongRepository songRepository, IAlbumCollection albumCollection, IArtistCollection artistCollection) { Id = dto.Id; Name = dto.Name; Duration = dto.Duration; FileName = dto.FileName; _albumId = dto.AlbumId; _songRepository = songRepository; _albumCollection = albumCollection; _artistCollection = artistCollection; }