@Override public Character getByKey(String key) throws Exception { MarvelResponse<CharacterDto> characterResponse = characterApiClient.getCharacter(key); CharacterDto characterDto = characterResponse.getResponse(); return mapper.reverseMap(characterDto); }
@Test(expected = IllegalArgumentException.class) public void shouldNotAcceptEmptyCharacterIds() throws Exception { CharacterApiClient characterApiClient = givenCharacterApiClient(); characterApiClient.getCharacter(INVALID_CHARACTER_ID); }
} else if (operation.equals("getCharacter")) { CharacterApiClient characterApiClient = new CharacterApiClient(marvelApiConfig); MarvelResponse<CharacterDto> character = characterApiClient.getCharacter("1011334"); System.out.println(character.toString()); } else if (operation.equals("getComics")) {
@Test public void shouldSendGetCharacterRequestToTheCorrectEndpoint() throws Exception { CharacterApiClient characterApiClient = givenCharacterApiClient(); enqueueMockResponse("getCharacter.json"); characterApiClient.getCharacter(THREED_MAN_CHARACTER_ID); assertRequestSentToContains("characters/" + THREED_MAN_CHARACTER_ID); }
@Test public void shouldParseGetCharacterResponse() throws Exception { CharacterApiClient characterApiClient = givenCharacterApiClient(); enqueueMockResponse("getCharacter.json"); MarvelResponse<CharacterDto> character = characterApiClient.getCharacter(THREED_MAN_CHARACTER_ID); assertBasicMarvelResponse(character); CharacterDto response = character.getResponse(); assertIs3dManCharacter(response); }
@Test(expected = MarvelApiException.class) public void shouldReturnMarvelExceptionWhenTheIdDoesNotExist() throws Exception { CharacterApiClient characterApiClient = givenCharacterApiClient(); enqueueMockResponse(404, "{\"code\":404,\"status\":\"We couldn't find that character\"}"); try { characterApiClient.getCharacter(ANY_NOT_FOUND_ID); } catch (MarvelApiException e) { assertEquals("404", e.getMarvelCode()); assertEquals("We couldn't find that character", e.getMessage()); throw e; } }