Search in sources :

Example 1 with ComponentUsageEntity

use of org.entando.entando.web.component.ComponentUsageEntity in project entando-core by entando.

the class WidgetServiceTest method getWidgetUsageDetails.

@Test
public void getWidgetUsageDetails() throws Exception {
    this.mockPagedMetadata(Arrays.asList(PageMockHelper.PAGE_CODE), 1, 1, 100, 2);
    PagedMetadata<ComponentUsageEntity> usageDetails = widgetService.getComponentUsageDetails(WidgetMockHelper.WIDGET_1_CODE, new PageSearchRequest(WidgetMockHelper.WIDGET_1_CODE));
    WidgetAssertionHelper.assertUsageDetails(usageDetails);
}
Also used : PageSearchRequest(org.entando.entando.web.page.model.PageSearchRequest) ComponentUsageEntity(org.entando.entando.web.component.ComponentUsageEntity) Test(org.junit.Test)

Example 2 with ComponentUsageEntity

use of org.entando.entando.web.component.ComponentUsageEntity in project entando-core by entando.

the class WidgetServiceTest method mockPagedMetadata.

/**
 * init mock for a multipaged request
 */
private void mockPagedMetadata(List<String> utilizers, int currPage, int lastPage, int pageSize, int totalSize) {
    try {
        List<IPage> onlinePageList = utilizers.stream().map(u -> PageMockHelper.mockTestPage(u, WidgetMockHelper.WIDGET_1_CODE)).collect(Collectors.toList());
        List<IPage> draftPageList = utilizers.stream().map(u -> PageMockHelper.mockTestPage(u, WidgetMockHelper.WIDGET_1_CODE)).collect(Collectors.toList());
        when(pageManager.getOnlineWidgetUtilizers(anyString())).thenReturn(onlinePageList);
        when(pageManager.getDraftWidgetUtilizers(anyString())).thenReturn(draftPageList);
        when(widgetManager.getWidgetType(anyString())).thenReturn(WidgetMockHelper.mockWidgetType());
        RestListRequest restListRequest = new RestListRequest();
        restListRequest.setPageSize(pageSize);
        restListRequest.setPage(currPage);
        List<ComponentUsageEntity> componentUsageEntityList = onlinePageList.stream().map(child -> new ComponentUsageEntity(ComponentUsageEntity.TYPE_PAGE, child.getCode(), IPageService.STATUS_ONLINE)).collect(Collectors.toList());
        componentUsageEntityList.addAll(draftPageList.stream().map(child -> new ComponentUsageEntity(ComponentUsageEntity.TYPE_PAGE, child.getCode(), IPageService.STATUS_DRAFT)).collect(Collectors.toList()));
        PagedMetadata pagedMetadata = new PagedMetadata(restListRequest, componentUsageEntityList, totalSize);
        pagedMetadata.setPageSize(pageSize);
        pagedMetadata.setPage(currPage);
        pagedMetadata.imposeLimits();
        when(pagedMetadataMapper.getPagedResult(any(), any())).thenReturn(pagedMetadata);
    } catch (Exception e) {
        Assert.fail("Mock Exception");
    }
}
Also used : ResourceNotFoundException(org.entando.entando.aps.system.exception.ResourceNotFoundException) ArgumentMatchers(org.mockito.ArgumentMatchers) Assertions.assertThat(org.assertj.core.api.Assertions.assertThat) FilterOperator(org.entando.entando.web.common.model.FilterOperator) Group(com.agiletec.aps.system.services.group.Group) IPage(com.agiletec.aps.system.services.page.IPage) IPageService(org.entando.entando.aps.system.services.page.IPageService) PageDto(org.entando.entando.aps.system.services.page.model.PageDto) PageSearchDto(org.entando.entando.aps.system.services.page.model.PageSearchDto) IGroupManager(com.agiletec.aps.system.services.group.IGroupManager) PageMockHelper(org.entando.entando.aps.system.services.mockhelper.PageMockHelper) WidgetDto(org.entando.entando.aps.system.services.widgettype.model.WidgetDto) PageSearchRequest(org.entando.entando.web.page.model.PageSearchRequest) ImmutableMap(com.google.common.collect.ImmutableMap) ApsSystemException(com.agiletec.aps.system.exception.ApsSystemException) ComponentUsageEntity(org.entando.entando.web.component.ComponentUsageEntity) Collectors(java.util.stream.Collectors) RestListRequest(org.entando.entando.web.common.model.RestListRequest) Stream(java.util.stream.Stream) Assertions.fail(org.assertj.core.api.Assertions.fail) PagedMetadata(org.entando.entando.web.common.model.PagedMetadata) MockitoJUnitRunner(org.mockito.junit.MockitoJUnitRunner) IntStream(java.util.stream.IntStream) java.util(java.util) Page(com.agiletec.aps.system.services.page.Page) Mock(org.mockito.Mock) RunWith(org.junit.runner.RunWith) Function(java.util.function.Function) PageAssertionHelper(org.entando.entando.aps.system.services.assertionhelper.PageAssertionHelper) WidgetDtoBuilder(org.entando.entando.aps.system.services.widgettype.model.WidgetDtoBuilder) ArgumentCaptor(org.mockito.ArgumentCaptor) ImmutableList(com.google.common.collect.ImmutableList) WidgetAssertionHelper(org.entando.entando.aps.system.services.assertionhelper.WidgetAssertionHelper) IPageManager(com.agiletec.aps.system.services.page.IPageManager) IComponentManager(org.entando.entando.aps.system.init.IComponentManager) PagedMetadataMapper(org.entando.entando.web.common.assembler.PagedMetadataMapper) Before(org.junit.Before) InjectMocks(org.mockito.InjectMocks) WidgetRequest(org.entando.entando.web.widget.model.WidgetRequest) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) Assert.assertTrue(org.junit.Assert.assertTrue) JsonProcessingException(com.fasterxml.jackson.core.JsonProcessingException) Test(org.junit.Test) IGuiFragmentManager(org.entando.entando.aps.system.services.guifragment.IGuiFragmentManager) Consumer(java.util.function.Consumer) Mockito(org.mockito.Mockito) Filter(org.entando.entando.web.common.model.Filter) WidgetMockHelper(org.entando.entando.aps.system.services.mockhelper.WidgetMockHelper) Assert(org.junit.Assert) IPage(com.agiletec.aps.system.services.page.IPage) PagedMetadata(org.entando.entando.web.common.model.PagedMetadata) RestListRequest(org.entando.entando.web.common.model.RestListRequest) ComponentUsageEntity(org.entando.entando.web.component.ComponentUsageEntity) ResourceNotFoundException(org.entando.entando.aps.system.exception.ResourceNotFoundException) ApsSystemException(com.agiletec.aps.system.exception.ApsSystemException) JsonProcessingException(com.fasterxml.jackson.core.JsonProcessingException)

Example 3 with ComponentUsageEntity

use of org.entando.entando.web.component.ComponentUsageEntity in project entando-core by entando.

the class PageServiceTest method getPageUsageDetailsWithNoChildrenShouldReturnItself.

@Test
public void getPageUsageDetailsWithNoChildrenShouldReturnItself() {
    PageDto pageDto = PageMockHelper.mockPageDto();
    pageDto.setChildren(new ArrayList<>());
    mockForSinglePage(PageMockHelper.mockTestPage(PageMockHelper.PAGE_CODE), pageDto, new String[0]);
    PagedMetadata<ComponentUsageEntity> pageUsageDetails = pageService.getComponentUsageDetails(PageMockHelper.PAGE_CODE, new PageSearchRequest(PageMockHelper.PAGE_CODE));
    PageAssertionHelper.assertUsageDetails(pageUsageDetails, new String[0], 0, 1, pageDto.getStatus());
}
Also used : PageSearchRequest(org.entando.entando.web.page.model.PageSearchRequest) PageDto(org.entando.entando.aps.system.services.page.model.PageDto) ComponentUsageEntity(org.entando.entando.web.component.ComponentUsageEntity) Test(org.junit.Test)

Example 4 with ComponentUsageEntity

use of org.entando.entando.web.component.ComponentUsageEntity in project entando-core by entando.

the class GuiFragmentServiceTest method getFragmentUsageTest.

@Test
public void getFragmentUsageTest() throws Exception {
    Lang lang = new Lang();
    lang.setCode("IT");
    when(langManager.getDefaultLang()).thenReturn(lang);
    GuiFragment fragment = FragmentMockHelper.mockGuiFragment();
    GuiFragmentDto fragmentDto = FragmentMockHelper.mockGuiFragmentDto(fragment, langManager);
    mockPagedMetadata(fragment, fragmentDto, 1, 1, 100, 5);
    PagedMetadata<ComponentUsageEntity> componentUsageDetails = guiFragmentService.getComponentUsageDetails(fragment.getCode(), new PageSearchRequest(PageMockHelper.PAGE_CODE));
    GuiFragmentAssertionHelper.assertUsageDetails(componentUsageDetails);
}
Also used : PageSearchRequest(org.entando.entando.web.page.model.PageSearchRequest) Lang(com.agiletec.aps.system.services.lang.Lang) GuiFragmentDto(org.entando.entando.aps.system.services.guifragment.model.GuiFragmentDto) ComponentUsageEntity(org.entando.entando.web.component.ComponentUsageEntity) Test(org.junit.Test)

Example 5 with ComponentUsageEntity

use of org.entando.entando.web.component.ComponentUsageEntity in project entando-core by entando.

the class GuiFragmentServiceTest method mockPagedMetadata.

/**
 * init mock for a multipaged request
 */
private void mockPagedMetadata(GuiFragment fragment, GuiFragmentDto fragmentDto, int currPage, int lastPage, int pageSize, int totalSize) {
    try {
        when(guiFragmentManager.getGuiFragment(anyString())).thenReturn(fragment);
        when(this.dtoBuilder.convert(any(GuiFragment.class))).thenReturn(fragmentDto);
        RestListRequest restListRequest = new RestListRequest();
        restListRequest.setPageSize(pageSize);
        ComponentUsageEntity componentUsageEntity = new ComponentUsageEntity(ComponentUsageEntity.TYPE_WIDGET, fragmentDto.getWidgetTypeCode());
        List<ComponentUsageEntity> fragmentList = fragmentDto.getFragments().stream().map(fragmentRef -> new ComponentUsageEntity(ComponentUsageEntity.TYPE_FRAGMENT, fragmentRef.getCode())).collect(Collectors.toList());
        List<ComponentUsageEntity> pageModelList = fragmentDto.getPageModels().stream().map(pageModelRef -> new ComponentUsageEntity(ComponentUsageEntity.TYPE_PAGE_TEMPLATE, pageModelRef.getCode())).collect(Collectors.toList());
        List<ComponentUsageEntity> componentUsageEntityList = new ArrayList<>();
        componentUsageEntityList.add(componentUsageEntity);
        componentUsageEntityList.addAll(fragmentList);
        componentUsageEntityList.addAll(pageModelList);
        PagedMetadata pagedMetadata = new PagedMetadata(restListRequest, componentUsageEntityList, totalSize);
        pagedMetadata.setPageSize(pageSize);
        pagedMetadata.setPage(currPage);
        pagedMetadata.imposeLimits();
        when(pagedMetadataMapper.getPagedResult(any(), any())).thenReturn(pagedMetadata);
    } catch (Exception e) {
        Assert.fail("Mock Exception");
    }
}
Also used : ArgumentMatchers.any(org.mockito.ArgumentMatchers.any) AssertionErrors(org.springframework.test.util.AssertionErrors) java.util(java.util) Page(com.agiletec.aps.system.services.page.Page) Lang(com.agiletec.aps.system.services.lang.Lang) Mock(org.mockito.Mock) GuiFragmentDtoBuilder(org.entando.entando.aps.system.services.guifragment.model.GuiFragmentDtoBuilder) IPage(com.agiletec.aps.system.services.page.IPage) IPageService(org.entando.entando.aps.system.services.page.IPageService) MockitoAnnotations(org.mockito.MockitoAnnotations) PageDto(org.entando.entando.aps.system.services.page.model.PageDto) PageSearchDto(org.entando.entando.aps.system.services.page.model.PageSearchDto) PageMockHelper(org.entando.entando.aps.system.services.mockhelper.PageMockHelper) PagedMetadataMapper(org.entando.entando.web.common.assembler.PagedMetadataMapper) ValidationGenericException(org.entando.entando.web.common.exceptions.ValidationGenericException) Before(org.junit.Before) InjectMocks(org.mockito.InjectMocks) PageSearchRequest(org.entando.entando.web.page.model.PageSearchRequest) ComponentUsageEntity(org.entando.entando.web.component.ComponentUsageEntity) Test(org.junit.Test) Mockito.when(org.mockito.Mockito.when) Collectors(java.util.stream.Collectors) ILangManager(com.agiletec.aps.system.services.lang.ILangManager) FragmentMockHelper(org.entando.entando.aps.system.services.mockhelper.FragmentMockHelper) RestListRequest(org.entando.entando.web.common.model.RestListRequest) PagedMetadata(org.entando.entando.web.common.model.PagedMetadata) Assert(org.junit.Assert) GuiFragmentAssertionHelper(org.entando.entando.aps.system.services.assertionhelper.GuiFragmentAssertionHelper) Assert.assertEquals(org.junit.Assert.assertEquals) GuiFragmentDto(org.entando.entando.aps.system.services.guifragment.model.GuiFragmentDto) ArgumentMatchers.anyString(org.mockito.ArgumentMatchers.anyString) PagedMetadata(org.entando.entando.web.common.model.PagedMetadata) RestListRequest(org.entando.entando.web.common.model.RestListRequest) ComponentUsageEntity(org.entando.entando.web.component.ComponentUsageEntity) ValidationGenericException(org.entando.entando.web.common.exceptions.ValidationGenericException)

Aggregations

ComponentUsageEntity (org.entando.entando.web.component.ComponentUsageEntity)18 PageSearchRequest (org.entando.entando.web.page.model.PageSearchRequest)12 Test (org.junit.Test)9 IPage (com.agiletec.aps.system.services.page.IPage)7 PageDto (org.entando.entando.aps.system.services.page.model.PageDto)7 Page (com.agiletec.aps.system.services.page.Page)6 Collectors (java.util.stream.Collectors)6 PagedMetadataMapper (org.entando.entando.web.common.assembler.PagedMetadataMapper)6 PagedMetadata (org.entando.entando.web.common.model.PagedMetadata)6 ResourceNotFoundException (org.entando.entando.aps.system.exception.ResourceNotFoundException)5 RestListRequest (org.entando.entando.web.common.model.RestListRequest)5 ApsSystemException (com.agiletec.aps.system.exception.ApsSystemException)4 IGroupManager (com.agiletec.aps.system.services.group.IGroupManager)4 IPageManager (com.agiletec.aps.system.services.page.IPageManager)4 java.util (java.util)4 IDtoBuilder (org.entando.entando.aps.system.services.IDtoBuilder)4 PageSearchDto (org.entando.entando.aps.system.services.page.model.PageSearchDto)4 SearcherDaoPaginatedResult (com.agiletec.aps.system.common.model.dao.SearcherDaoPaginatedResult)3 Group (com.agiletec.aps.system.services.group.Group)3 RestServerError (org.entando.entando.aps.system.exception.RestServerError)3