public void ShouldInsertGamesToRepository_WhenProviderReturnsNewGames() { // given var mockJob = Automock.Create <UpdateGamesListJob>(); var newGame = new Game { Key = "test2" }; var cachedGames = new List <Game> { new Game { Key = "test1" } }; var gamesFromProvider = new List <Game> { new Game { Key = "test1" }, newGame }; Automock.Mock <IGameRepository>().Setup(x => x.GetGamesAsync()).Returns(Task.FromResult(cachedGames.AsEnumerable())); Automock.Mock <IGamesListProvider>().Setup(x => x.GetGamesList()).Returns(gamesFromProvider); // when mockJob.Execute(); // then Automock.Mock <IGameRepository>().Verify(x => x.AddGamesAsync(It.Is <IEnumerable <Game> >(z => z.All(y => y.Equals(newGame))))); }
public void ShouldUpdateExistingGames_WhenEnhancementParametersChanged() { // given var mockJob = Automock.Create <UpdateGamesListJob>(); var changedGames = new List <Game> { new Game { Key = "test2", FourKConfirmed = true }, new Game { Key = "test3", HdrRenderingAvailable = true }, new Game { Key = "test4", Status = AvailabilityStatus.AvailableNow }, }; var cachedGames = new List <Game> { new Game { Key = "test1" }, new Game { Key = "test2", FourKConfirmed = false }, new Game { Key = "test3", HdrRenderingAvailable = false }, new Game { Key = "test4", Status = AvailabilityStatus.ComingSoon }, }; var gamesFromProvider = new List <Game> { new Game { Key = "test1" }, new Game { Key = "test2", FourKConfirmed = true }, new Game { Key = "test3", HdrRenderingAvailable = true }, new Game { Key = "test4", Status = AvailabilityStatus.AvailableNow }, }; Automock.Mock <IGameRepository>().Setup(x => x.GetGamesAsync()).Returns(Task.FromResult(cachedGames.AsEnumerable())); Automock.Mock <IGamesListProvider>().Setup(x => x.GetGamesList()).Returns(gamesFromProvider); // when mockJob.Execute(); // then Automock.Mock <IGameRepository>().Verify(x => x.UpdateGamesAsync(It.Is <IEnumerable <Game> >(z => z.SequenceEqual(changedGames)))); //Automock.Mock<IGameRepository>().Verify(x => x.AddGamesAsync(It.Is<IEnumerable<Game>>(z => z.All(y => y.Equals(newGame))))); }
public void ShouldGetCachedGamesListFromRepository_WhenIsExecuting() { // given var mockJob = Automock.Create <UpdateGamesListJob>(); // when mockJob.Execute(); // then Automock.Mock <IGameRepository>().Verify(x => x.GetGamesAsync()); }
public void ShouldCallGamesListProviderForListOfGames_WhenIsExecuting() { // given var mockJob = Automock.Create <UpdateGamesListJob>(); // when mockJob.Execute(); // then Automock.Mock <IGamesListProvider>().Verify(x => x.GetGamesList()); }