예제 #1
0
        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();
        }
예제 #2
0
        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");
        }
예제 #3
0
        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");
        }