Search in sources :

Example 16 with ControllerScript

use of com.enonic.xp.portal.controller.ControllerScript in project xp by enonic.

the class PartRendererTest method nullResponseComponentEditMode.

@Test
public void nullResponseComponentEditMode() {
    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 new PortalResponseSerializer(null).serialize();
        }

        @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 = "<div data-portal-component-type=\"part\"></div>";
    assertEquals(expected, portalResponse.getAsString());
}
Also used : PartDescriptorService(com.enonic.xp.region.PartDescriptorService) PortalResponseSerializer(com.enonic.xp.portal.impl.controller.PortalResponseSerializer) 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)

Aggregations

ControllerScript (com.enonic.xp.portal.controller.ControllerScript)16 PortalRequest (com.enonic.xp.portal.PortalRequest)7 PortalResponse (com.enonic.xp.portal.PortalResponse)7 ControllerScriptFactory (com.enonic.xp.portal.controller.ControllerScriptFactory)7 Test (org.junit.jupiter.api.Test)6 WebSocketEvent (com.enonic.xp.web.websocket.WebSocketEvent)5 PortalResponseSerializer (com.enonic.xp.portal.impl.controller.PortalResponseSerializer)3 PartDescriptor (com.enonic.xp.region.PartDescriptor)3 PartDescriptorService (com.enonic.xp.region.PartDescriptorService)3 ResourceKey (com.enonic.xp.resource.ResourceKey)3 PrincipalKeys (com.enonic.xp.security.PrincipalKeys)3 WebSocketConfig (com.enonic.xp.web.websocket.WebSocketConfig)3 WebSocketContext (com.enonic.xp.web.websocket.WebSocketContext)3 WebSocketEndpoint (com.enonic.xp.web.websocket.WebSocketEndpoint)3 ApplicationKey (com.enonic.xp.app.ApplicationKey)2 DescriptorKey (com.enonic.xp.page.DescriptorKey)2 RenderMode (com.enonic.xp.portal.RenderMode)2 LayoutDescriptor (com.enonic.xp.region.LayoutDescriptor)2 LayoutDescriptorService (com.enonic.xp.region.LayoutDescriptorService)2 BeforeEach (org.junit.jupiter.api.BeforeEach)2