コード例 #1
0
        public async Task SearchClubAsync_GivenSecondPage_ShouldReturnSecondPage()
        {
            // Given
            var config = new ClubSearchConfig {
                Page = 2
            };

            // When
            var characters = await _jikan.SearchClubAsync(config);

            // Then
            characters.Data.Should().HaveCount(ParameterConsts.MaximumPageSize);
        }
コード例 #2
0
        public async Task SearchClubAsync_InvalidPageSize_ShouldThrowValidationException(int pageSize)
        {
            // Given
            var config = new ClubSearchConfig {
                PageSize = pageSize
            };

            // When
            var func = _jikan.Awaiting(x => x.SearchClubAsync(config));

            // Then
            await func.Should().ThrowExactlyAsync <JikanValidationException>();
        }
コード例 #3
0
        public async Task SearchClubAsync_EmptyConfig_ShouldReturnFirst25People()
        {
            // Given
            var config = new ClubSearchConfig();

            // When
            var clubs = await _jikan.SearchClubAsync(config);

            // Then
            using var _ = new AssertionScope();
            clubs.Data.Should().HaveCount(ParameterConsts.MaximumPageSize);
            clubs.Data.First().Name.Should().Be("Cowboy Bebop");
        }
コード例 #4
0
        public async Task SearchClubAsync_ValidLetter_ShouldReturnRecordsOnlyStartingOnLetter(char letter)
        {
            // Given
            var config = new ClubSearchConfig {
                Letter = letter
            };

            // When
            var people = await _jikan.SearchClubAsync(config);

            // Then
            people.Data.Should().OnlyContain(x => x.Name.StartsWith(letter));
        }
コード例 #5
0
        public async Task SearchClubAsync_InvalidLetter_ShouldThrowValidationException(char notLetter)
        {
            // Given
            var config = new ClubSearchConfig {
                Letter = notLetter
            };

            // When
            var func = _jikan.Awaiting(x => x.SearchClubAsync(config));

            // Then
            await func.Should().ThrowExactlyAsync <JikanValidationException>();
        }
コード例 #6
0
        public async Task SearchClubAsync_GivenValidPageSize_ShouldReturnPageSizeNumberOfRecords()
        {
            // Given
            const int pageSize = 5;
            var       config   = new ClubSearchConfig {
                PageSize = pageSize
            };

            // When
            var characters = await _jikan.SearchClubAsync(config);

            // Then
            using var _ = new AssertionScope();
            characters.Data.Should().HaveCount(pageSize);
            characters.Data.Skip(1).First().Name.Should().Be("Cowboy Bebop");
        }
コード例 #7
0
        public async Task SearchClubAsync_GivenValidPageAndPageSize_ShouldReturnPageSizeNumberOfRecordsFromNextPage()
        {
            // Given
            const int pageSize = 5;
            var       config   = new ClubSearchConfig {
                PageSize = pageSize, Page = 2
            };

            // When
            var characters = await _jikan.SearchClubAsync(config);

            // Then
            using var _ = new AssertionScope();
            characters.Data.Should().HaveCount(pageSize);
            characters.Data.First().Name.Should().Be("Anime Cafe");
        }