### Question:
ItemManagerImpl implements ItemManager { @Override public Item get(SessionContext context, Id itemId) { Response<Item> response; response = getStateAdaptor(context).getItem(context, itemId); if (!response.isSuccessful()) { ReturnCode returnCode = new ReturnCode(ErrorCode.ZU_ITEM_GET, Module.ZDB, null, response.getReturnCode()); logger.error(returnCode.toString()); throw new ZusammenException(returnCode); } return response.getValue(); }  @Override Collection<Item> list(SessionContext context); @Override boolean isExist(SessionContext context, Id itemId); @Override Item get(SessionContext context, Id itemId); @Override Id create(SessionContext context, Info itemInfo); @Override Id create(SessionContext context, Id itemId, Info itemInfo); @Override void update(SessionContext context, Id itemId, Info itemInfo); @Override void delete(SessionContext context, Id itemId); @Override void updateModificationTime(SessionContext context, Id itemId, Date modificationTime);  }### Answer:
@Test public void testGet() { Item retrievedItem = createItem(new Id(), "item1"); Response<Item> itemResponse = new Response<>(retrievedItem); doReturn(itemResponse).when(stateAdaptorMock).getItem(context, retrievedItem.getId()); Item item = itemManagerImpl.get(context, retrievedItem.getId()); Assert.assertEquals(item, retrievedItem); }
@Test public void testGetNonExisting() { Id itemId = new Id(); Item retrieveItem = null; Response<Item> itemResponse = new Response<>(retrieveItem); doReturn(itemResponse).when(stateAdaptorMock).getItem(context, itemId); Item item = itemManagerImpl.get(context, itemId); Assert.assertNull(item); }