Search in sources :

Example 11 with PartDescriptorService

use of com.enonic.xp.region.PartDescriptorService in project xp by enonic.

the class PartRendererTest method htmlResponseComponentEditMode.

@Test
public void htmlResponseComponentEditMode() {
    final PartDescriptor partDescriptor = PartDescriptor.create().displayName("My part component").config(Form.create().build()).key(DescriptorKey.from("module:myPartComponent")).build();
    final ControllerScript controllerScript = new ControllerScript() {

        @Override
        public PortalResponse execute(final PortalRequest portalRequest) {
            return PortalResponse.create().body("<h1 class=\"important\">My component</h1>").contentType(MediaType.HTML_UTF_8).status(HttpStatus.OK).build();
        }

        @Override
        public void onSocketEvent(final WebSocketEvent event) {
        }
    };
    final PartDescriptorService partDescriptorService = Mockito.mock(PartDescriptorService.class);
    final ControllerScriptFactory controllerScriptFactory = Mockito.mock(ControllerScriptFactory.class);
    renderer = new PartRenderer();
    renderer.setPartDescriptorService(partDescriptorService);
    renderer.setControllerScriptFactory(controllerScriptFactory);
    when(partDescriptorService.getByKey(any())).thenReturn(partDescriptor);
    when(controllerScriptFactory.fromDir(any())).thenReturn(controllerScript);
    portalRequest.setMode(RenderMode.EDIT);
    partComponent = PartComponent.create().descriptor("myapp:myPartComponent").descriptor(partDescriptor.getKey()).build();
    // exercise
    portalResponse = renderer.render(partComponent, portalRequest);
    // verify
    String expected = "<h1 data-portal-component-type=\"part\" class=\"important\">My component</h1>";
    assertEquals(expected, portalResponse.getAsString());
}
Also used : PartDescriptorService(com.enonic.xp.region.PartDescriptorService) WebSocketEvent(com.enonic.xp.web.websocket.WebSocketEvent) ControllerScript(com.enonic.xp.portal.controller.ControllerScript) PartDescriptor(com.enonic.xp.region.PartDescriptor) ControllerScriptFactory(com.enonic.xp.portal.controller.ControllerScriptFactory) PortalRequest(com.enonic.xp.portal.PortalRequest) Test(org.junit.jupiter.api.Test)

Example 12 with PartDescriptorService

use of com.enonic.xp.region.PartDescriptorService in project xp by enonic.

the class ContentDataSerializerTest method createContentDataSerializer.

private ContentDataSerializer createContentDataSerializer() {
    final PageDescriptorService pageDescriptorService = Mockito.mock(PageDescriptorService.class);
    final PartDescriptorService partDescriptorService = Mockito.mock(PartDescriptorService.class);
    final LayoutDescriptorService layoutDescriptorService = Mockito.mock(LayoutDescriptorService.class);
    return ContentDataSerializer.create().partDescriptorService(partDescriptorService).pageDescriptorService(pageDescriptorService).layoutDescriptorService(layoutDescriptorService).build();
}
Also used : PartDescriptorService(com.enonic.xp.region.PartDescriptorService) PageDescriptorService(com.enonic.xp.page.PageDescriptorService) LayoutDescriptorService(com.enonic.xp.region.LayoutDescriptorService)

Aggregations

PartDescriptorService (com.enonic.xp.region.PartDescriptorService)12 PageDescriptorService (com.enonic.xp.page.PageDescriptorService)9 LayoutDescriptorService (com.enonic.xp.region.LayoutDescriptorService)9 XDataService (com.enonic.xp.schema.xdata.XDataService)5 Content (com.enonic.xp.content.Content)4 BeforeEach (org.junit.jupiter.api.BeforeEach)4 ContentDataSerializer (com.enonic.xp.core.impl.content.serializer.ContentDataSerializer)3 PropertyTree (com.enonic.xp.data.PropertyTree)3 PortalRequest (com.enonic.xp.portal.PortalRequest)3 ControllerScript (com.enonic.xp.portal.controller.ControllerScript)3 ControllerScriptFactory (com.enonic.xp.portal.controller.ControllerScriptFactory)3 PartDescriptor (com.enonic.xp.region.PartDescriptor)3 ContentType (com.enonic.xp.schema.content.ContentType)3 ContentTypeName (com.enonic.xp.schema.content.ContentTypeName)3 ContentTypeService (com.enonic.xp.schema.content.ContentTypeService)3 GetContentTypeParams (com.enonic.xp.schema.content.GetContentTypeParams)3 WebSocketEvent (com.enonic.xp.web.websocket.WebSocketEvent)3 Test (org.junit.jupiter.api.Test)3 CreateAttachment (com.enonic.xp.attachment.CreateAttachment)2 CreateAttachments (com.enonic.xp.attachment.CreateAttachments)2