public async Task GetAsync_GivenNoSeasons_ShouldReturnNull() { // Given var dbContext = InMemoryDbProvider.GetDbContext(); var repository = new SeasonRepository(dbContext); // When var result = await repository.GetAsync(x => true); // Then result.Should().BeNull(); }
public async Task GetAsync_GivenSingleSeasons_ShouldReturn() { // Given var dbContext = InMemoryDbProvider.GetDbContext(); var repository = new SeasonRepository(dbContext); var season1 = new SeasonBuilder().WithName("Test1").Build(); await dbContext.AnimeSeasons.AddAsync(season1); await dbContext.SaveChangesAsync(); // When var result = await repository.GetAsync(x => true); // Then result.Name.Should().Be("Test1"); }
public async Task GetAsync_GivenMultipleSeasonsWithPredicate_ShouldReturn() { // Given var dbContext = InMemoryDbProvider.GetDbContext(); var repository = new SeasonRepository(dbContext); var season1 = new SeasonBuilder().WithName("Test1").Build(); var season2 = new SeasonBuilder().WithName("Test2").Build(); var season3 = new SeasonBuilder().WithName("Test3").Build(); await dbContext.AnimeSeasons.AddAsync(season1); await dbContext.AnimeSeasons.AddAsync(season2); await dbContext.AnimeSeasons.AddAsync(season3); await dbContext.SaveChangesAsync(); // When var result = await repository.GetAsync(x => x.Name.EndsWith("3")); // Then result.Name.Should().Be("Test3"); }