@Override public ResponseDescriptorDTO getResponseDescriptor(final String key) { return routingService.getResponseDescriptorDTOAndRemove(key); }
@Test public void testGetResponseDescriptorDTOAndRemoveShouldReturnNullWhenKeyNotFound() { //GIVEN Map<String, ResponseDescriptor> responseDescriptorMap = new HashMap<>(); String key = "key"; Whitebox.setInternalState(underTest, "responseDescriptorMap", responseDescriptorMap); //WHEN ResponseDescriptorDTO actual = underTest.getResponseDescriptorDTOAndRemove(key); //THEN assertNull(actual); }
@Test public void testGetResponseDescriptorShouldCallRoutingService() { //GIVEN String key = "key"; //WHEN underTest.getResponseDescriptor(key); //THEN verify(routingService).getResponseDescriptorDTOAndRemove(key); }
@Test public void testGetResponseDescriptorAndRemoveShouldReturnWithEntry() { //GIVEN Map<String, ResponseDescriptorDTO> responseDescriptorMap = new HashMap<>(); String key = "key"; ResponseDescriptorDTO expected = new ResponseDescriptorDTO(null, "", MSG_ID); responseDescriptorMap.put(key, expected); Whitebox.setInternalState(underTest, "responseDescriptorMap", responseDescriptorMap); //WHEN ResponseDescriptorDTO actual = underTest.getResponseDescriptorDTOAndRemove(key); //THEN assertEquals(actual, expected); }
@Test public void testGetResponseDescriptorDTOAndRemoveShouldFindResponseDescriptorWithKey() { //GIVEN Map<String, ResponseDescriptorDTO> responseDescriptorMap = new HashMap<>(); String key = "key"; responseDescriptorMap.put(key, new ResponseDescriptorDTO(null, "", MSG_ID)); Whitebox.setInternalState(underTest, "responseDescriptorMap", responseDescriptorMap); //WHEN ResponseDescriptorDTO actual = underTest.getResponseDescriptorDTOAndRemove(key); //THEN assertEquals(actual.getRequestBody(), MSG_ID); }
@Test public void testGetResponseDescriptorAndRemoveShouldNotDeleteEntryWhenKeyNotFound() { //GIVEN Map<String, ResponseDescriptorDTO> responseDescriptorMap = new HashMap<>(); String key = "key"; responseDescriptorMap.put("someOtherKey", new ResponseDescriptorDTO(null, "", MSG_ID)); Whitebox.setInternalState(underTest, "responseDescriptorMap", responseDescriptorMap); //WHEN underTest.getResponseDescriptorDTOAndRemove(key); //THEN @SuppressWarnings("unchecked") Map<String, ResponseDescriptorDTO> newDescriptorMap = (Map<String, ResponseDescriptorDTO>) Whitebox.getInternalState(underTest, "responseDescriptorMap"); assertEquals(newDescriptorMap.get("someOtherKey").getRequestBody(), MSG_ID); }