### Question:
PageItemConverter extends ItemConverter<PageItem, Page> { @Override public PageItem convert(final Page engineItem) { final PageItem pageItem = new PageItem(); pageItem.setId(engineItem.getId()); pageItem.setProcessId(engineItem.getProcessDefinitionId()); pageItem.setUrlToken(engineItem.getName()); pageItem.setDisplayName(engineItem.getDisplayName()); pageItem.setIsProvided(engineItem.isProvided()); pageItem.setDescription(engineItem.getDescription()); pageItem.setCreatedByUserId(APIID.makeAPIID(engineItem.getInstalledBy())); pageItem.setCreationDate(engineItem.getInstallationDate()); pageItem.setLastUpdateDate(engineItem.getLastModificationDate()); pageItem.setUpdatedByUserId(engineItem.getLastUpdatedBy()); pageItem.setContentName(engineItem.getContentName()); pageItem.setContentType(engineItem.getContentType()); pageItem.setIsHidden(engineItem.isHidden()); return pageItem; }  @Override PageItem convert(final Page engineItem);  }### Answer:
@Test public void should_convert_engineItem_Page_to_portalItem_PageItem(){ final PageItemConverter pageitemConverter = new PageItemConverter(); final Page engineItem = mock(Page.class); when(engineItem.getId()).thenReturn(1l); when(engineItem.getName()).thenReturn("page1"); when(engineItem.getDisplayName()).thenReturn("Page 1"); when(engineItem.isProvided()).thenReturn(false); when(engineItem.getDescription()).thenReturn("This is a page description"); when(engineItem.getInstalledBy()).thenReturn(1l); when(engineItem.getInstallationDate()).thenReturn(new Date(1)); when(engineItem.getLastModificationDate()).thenReturn(new Date(1)); when(engineItem.getLastUpdatedBy()).thenReturn(1l); when(engineItem.getContentName()).thenReturn("page1.zip"); when(engineItem.getProcessDefinitionId()).thenReturn(2L); when(engineItem.getContentType()).thenReturn(ContentType.FORM); final PageItem pageItem = pageitemConverter.convert(engineItem); assertTrue(pageItem.getId().equals(engineItem.getId())); assertTrue(pageItem.getUrlToken().equals(engineItem.getName())); assertTrue(pageItem.getDisplayName().equals(engineItem.getDisplayName())); assertTrue(pageItem.isProvided() == engineItem.isProvided()); assertTrue(pageItem.getDescription().equals(engineItem.getDescription())); assertTrue(pageItem.getCreatedByUserId().equals(engineItem.getInstalledBy())); assertTrue(pageItem.getCreationDate().equals(engineItem.getInstallationDate())); assertTrue(pageItem.getLastUpdateDate().equals(engineItem.getLastModificationDate())); assertTrue(pageItem.getUpdatedByUserId().equals(engineItem.getLastUpdatedBy())); assertTrue(pageItem.getContentName().equals(engineItem.getContentName())); assertTrue(pageItem.getProcessId().equals(engineItem.getProcessDefinitionId())); assertTrue(pageItem.getContentType().equals(engineItem.getContentType())); }