Exemplo n.º 1
0
        private void ArrangeSearchJokes()
        {
            var jokes =
                new JokesResponse
            {
                Short = new List <string> {
                    "ShortJoke 1", "ShortJoke 2"
                },
                Medium = new List <string> {
                    "MediumJoke 1", "MediumJoke 2"
                },
                Long = new List <string> {
                    "LongJoke 1", "LongJoke 2"
                },
            };

            _jokesServices
            .Setup(mock => mock.SearchJokes(It.IsAny <string>()))
            .Returns(Task.FromResult(jokes));
        }
Exemplo n.º 2
0
        public async Task <JokesResponse> SearchJokes(string searchTerm)
        {
            var requestUrl = $"{_baseUrl}search?limit=30&term={searchTerm}";

            var data = await GetData(requestUrl);

            var searchResponse = JsonConvert.DeserializeObject <SearchResponse>(data);

            var jokesResponse = new JokesResponse
            {
                Short = searchResponse.Results.Where(p => p.Joke.Split(' ').Length < 10).Select(p => p.Joke)
                        .ToList(),
                Medium = searchResponse.Results.Where(p => p.Joke.Split(' ').Length < 20).Select(p => p.Joke)
                         .ToList(),
                Long = searchResponse.Results.Where(p => p.Joke.Split(' ').Length >= 20).Select(p => p.Joke)
                       .ToList()
            };

            jokesResponse.Medium = jokesResponse.Medium.Where(p => p.Split(' ').Length >= 10).ToList();

            return(jokesResponse);
        }