public async Task GetAlbumsByArtistIdAsyncTest_ValidId_OneAlbum() { // Arrange AlbumDataDto[] result = { new AlbumDataDto { Id = 1, Name = "Test", CoverArt = "" }, }; var albumRepoMock = new Mock <IAlbumRepository>(); albumRepoMock.Setup(mock => mock.GetAlbumsByArtistIdAsync(1)) .ReturnsAsync(result) .Verifiable(); var albumCollection = new AlbumCollection(albumRepoMock.Object, _dependencyMapper); // Act var albums = (await albumCollection.GetAlbumsByArtistIdAsync(1)).ToArray(); // Assert albumRepoMock.Verify(); Assert.AreEqual(1, albums.Length); }
public async Task GetAlbumsByArtistIdAsyncTest_InvalidId_EmptyArray() { // Arrange var albumRepo = new Mock <IAlbumRepository>(); albumRepo.Setup(mock => mock.GetAlbumsByArtistIdAsync(1)) .ReturnsAsync(new AlbumDataDto[] { }) .Verifiable(); var albumCollection = new AlbumCollection(albumRepo.Object, _dependencyMapper); // Act var albums = (await albumCollection.GetAlbumsByArtistIdAsync(1)).ToArray(); // Assert albumRepo.Verify(); Assert.AreEqual(0, albums.Length); }
public async Task GetAlbumsByArtistIdAsyncTest_ValidId_MultipleAlbums() { // Arrange AlbumDataDto[] result = { new AlbumDataDto { Id = 1, Name = "Test", CoverArt = "", }, new AlbumDataDto { Id = 2, Name = "Test 2", CoverArt = "test2.mp3", }, }; var albumRepoMock = new Mock <IAlbumRepository>(); albumRepoMock.Setup(mock => mock.GetAlbumsByArtistIdAsync(1)) .ReturnsAsync(result) .Verifiable(); var albumCollection = new AlbumCollection(albumRepoMock.Object, _dependencyMapper); // Act var albums = (await albumCollection.GetAlbumsByArtistIdAsync(1)).ToArray(); // Assert albumRepoMock.Verify(); Assert.AreEqual(2, albums.Length); for (int i = 0; i < 2; ++i) { Assert.AreEqual(result[i].Id, albums[i].Id); Assert.AreEqual(result[i].Name, albums[i].Name); Assert.AreEqual(result[i].CoverArt, albums[i].CoverArt); } }