public async Task Read_ClientThrowsException_ThrowsHttpRequestException() { SetupConfiguration(); var client = new HttpClient(MessageHandlerBuilder.GetExceptionThrowingMessageHandler()); var reader = new PokeapiSpeciesReader(client, _httpClientConfiguration.Object); await Assert.ThrowsExceptionAsync <HttpRequestException>(() => reader.Read("name")); }
public async Task Read_ClientReturnsInternalServerError_ThrowsHttpRequestException() { SetupConfiguration(); var client = new HttpClient(MessageHandlerBuilder.GetResponseMessageHandler(HttpStatusCode.InternalServerError)); var reader = new PokeapiSpeciesReader(client, _httpClientConfiguration.Object); await Assert.ThrowsExceptionAsync <HttpRequestException>(() => reader.Read("name")); }
public async Task Read_ClientReturnsNotFound_ReturnsNull() { SetupConfiguration(); var client = new HttpClient(MessageHandlerBuilder.GetResponseMessageHandler(HttpStatusCode.NotFound)); var reader = new PokeapiSpeciesReader(client, _httpClientConfiguration.Object); var pokemonSpecies = await reader.Read("name"); Assert.IsNull(pokemonSpecies); }
public async Task Read_ClientReturnsSimplifiedMewtwoJson_CorrectName() { SetupConfiguration(); var messageHandler = MessageHandlerBuilder.GetSuccessfulResponseMessageHandler(_simplifiedMewtwoResponseContent); var client = new HttpClient(messageHandler); var reader = new PokeapiSpeciesReader(client, _httpClientConfiguration.Object); var pokemonSpecies = await reader.Read("name"); Assert.AreEqual("mewtwo", pokemonSpecies.Name); }
public async Task Read_ClientReturnsSimplifiedMewtwoJson_HasFlavorTextEntry(string flavorText, string languageName) { SetupConfiguration(); var messageHandler = MessageHandlerBuilder.GetSuccessfulResponseMessageHandler(_simplifiedMewtwoResponseContent); var client = new HttpClient(messageHandler); var reader = new PokeapiSpeciesReader(client, _httpClientConfiguration.Object); var pokemonSpecies = await reader.Read("name"); Assert.IsTrue(pokemonSpecies.FlavorTextEntries.Any(fte => fte.FlavorText == flavorText && fte.Language.Name == languageName)); }