### Question:
ItemManagerImpl implements ItemManager { @Override public Collection<Item> list(SessionContext context) { Response<Collection<Item>> response; response = getStateAdaptor(context).listItems(context); if (!response.isSuccessful()) { ReturnCode returnCode = new ReturnCode(ErrorCode.ZU_ITEM_LIST, 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 testList() { List<Item> retrievedItems = Arrays.asList(createItem(new Id(), "item1"), createItem(new Id(), "item2"), createItem(new Id(), "item3")); Response<List<Item>> itemListResponse = new Response<>(retrievedItems); doReturn(itemListResponse).when(stateAdaptorMock).listItems(context); Collection<Item> items = itemManagerImpl.list(context); Assert.assertEquals(items, retrievedItems); }