public async Task ReturnsCorrectSongWhenTheSongExists() { Song expectedSong = new Song() { Id = "SongId" }; var songRepositoryStub = new Mock <IEfRepository <Song> >(); songRepositoryStub .Setup(x => x.GetByIdAsync(It.IsAny <string>())) .ReturnsAsync(expectedSong); GetSongForEditById query = new GetSongForEditById(); // Arrange GetSongForEditByIdQueryService sut = new GetSongForEditByIdQueryService( songRepository: songRepositoryStub.Object); // Act Song actualSong = await sut.ExecuteAsync(query); // Act && Assert Assert.AreEqual(expectedSong.Id, actualSong.Id); }
public void ThrowsNotFoundExceptionWhenSongDoesNotExists() { var songRepositoryStub = new Mock <IEfRepository <Song> >(); songRepositoryStub .Setup(x => x.GetByIdAsync(It.IsAny <string>())) .ReturnsAsync((Song)null); GetSongForEditById query = new GetSongForEditById(); // Arrange GetSongForEditByIdQueryService sut = new GetSongForEditByIdQueryService( songRepository: songRepositoryStub.Object); // Act && Assert Assert.ThrowsAsync <NotFoundException>(() => sut.ExecuteAsync(query)); }
public void SavePassedSongRepositoryWhenIsNotNull() { var songRepositoryStub = new Mock <IEfRepository <Song> >(); // Arrange && Act GetSongForEditByIdQueryService sut = new GetSongForEditByIdQueryService( songRepository: songRepositoryStub.Object); // Assert var actualSongRepository = sut.GetType() .GetFields(BindingFlags.Instance | BindingFlags.NonPublic) .First(fi => fi.FieldType == typeof(IEfRepository <Song>)) .GetValue(sut); Assert.AreSame(songRepositoryStub.Object, actualSongRepository); }