Search in sources :

Example 1 with PageModelFrameReq

use of org.entando.entando.web.pagemodel.model.PageModelFrameReq in project entando-core by entando.

the class PageModelControllerTest method should_validate_add_page_model_frame_no_descr.

@Test
public void should_validate_add_page_model_frame_no_descr() throws Exception {
    UserDetails user = new OAuth2TestUtils.UserBuilder("jack_bauer", "0x24").grantedToRoleAdmin().build();
    String accessToken = mockOAuthInterceptor(user);
    PageModelRequest pageModel = new PageModelRequest();
    pageModel.setCode("test");
    pageModel.setDescr("test_descr");
    PageModelFrameReq frame0 = new PageModelFrameReq(0, "descr_0");
    PageModelFrameReq frame1 = new PageModelFrameReq(1, null);
    pageModel.getConfiguration().add(frame0);
    pageModel.getConfiguration().add(frame1);
    ObjectMapper mapper = new ObjectMapper();
    String payload = mapper.writeValueAsString(pageModel);
    ResultActions result = mockMvc.perform(post("/pagemodels").content(payload).contentType(MediaType.APPLICATION_JSON).header("Authorization", "Bearer " + accessToken));
    result.andExpect(status().isBadRequest());
}
Also used : PageModelRequest(org.entando.entando.web.pagemodel.model.PageModelRequest) UserDetails(com.agiletec.aps.system.services.user.UserDetails) PageModelFrameReq(org.entando.entando.web.pagemodel.model.PageModelFrameReq) ResultActions(org.springframework.test.web.servlet.ResultActions) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) AbstractControllerTest(org.entando.entando.web.AbstractControllerTest) Test(org.junit.Test)

Example 2 with PageModelFrameReq

use of org.entando.entando.web.pagemodel.model.PageModelFrameReq in project entando-core by entando.

the class PageModelControllerTest method should_validate_add_page_model_invalid_frames_progressive.

@Test
public void should_validate_add_page_model_invalid_frames_progressive() throws Exception {
    UserDetails user = new OAuth2TestUtils.UserBuilder("jack_bauer", "0x24").grantedToRoleAdmin().build();
    String accessToken = mockOAuthInterceptor(user);
    PageModelRequest pageModel = new PageModelRequest();
    pageModel.setCode("test");
    pageModel.setDescr("test_descr");
    PageModelFrameReq frame0 = new PageModelFrameReq(0, "descr_0");
    PageModelFrameReq frame1 = new PageModelFrameReq(0, "descr_1");
    PageModelFrameReq frame2 = new PageModelFrameReq(2, "descr_2");
    pageModel.getConfiguration().add(frame0);
    pageModel.getConfiguration().add(frame1);
    pageModel.getConfiguration().add(frame2);
    ObjectMapper mapper = new ObjectMapper();
    String payload = mapper.writeValueAsString(pageModel);
    ResultActions result = mockMvc.perform(post("/pagemodels").content(payload).contentType(MediaType.APPLICATION_JSON).header("Authorization", "Bearer " + accessToken));
    result.andExpect(status().isBadRequest());
    result.andExpect(jsonPath("$.errors.length()", is(1)));
}
Also used : PageModelRequest(org.entando.entando.web.pagemodel.model.PageModelRequest) UserDetails(com.agiletec.aps.system.services.user.UserDetails) PageModelFrameReq(org.entando.entando.web.pagemodel.model.PageModelFrameReq) ResultActions(org.springframework.test.web.servlet.ResultActions) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) AbstractControllerTest(org.entando.entando.web.AbstractControllerTest) Test(org.junit.Test)

Example 3 with PageModelFrameReq

use of org.entando.entando.web.pagemodel.model.PageModelFrameReq in project entando-core by entando.

the class PageModelControllerTest method should_validate_add_page_model_invalid_frames_first.

@Test
public void should_validate_add_page_model_invalid_frames_first() throws Exception {
    UserDetails user = new OAuth2TestUtils.UserBuilder("jack_bauer", "0x24").grantedToRoleAdmin().build();
    String accessToken = mockOAuthInterceptor(user);
    PageModelRequest pageModel = new PageModelRequest();
    pageModel.setCode("test");
    pageModel.setDescr("test_descr");
    PageModelFrameReq frame0 = new PageModelFrameReq();
    frame0.setPos(1);
    pageModel.getConfiguration().add(frame0);
    ObjectMapper mapper = new ObjectMapper();
    String payload = mapper.writeValueAsString(pageModel);
    ResultActions result = mockMvc.perform(post("/pagemodels").content(payload).contentType(MediaType.APPLICATION_JSON).header("Authorization", "Bearer " + accessToken));
    result.andExpect(status().isBadRequest());
    result.andExpect(jsonPath("$.errors.length()", is(1)));
}
Also used : PageModelRequest(org.entando.entando.web.pagemodel.model.PageModelRequest) UserDetails(com.agiletec.aps.system.services.user.UserDetails) PageModelFrameReq(org.entando.entando.web.pagemodel.model.PageModelFrameReq) ResultActions(org.springframework.test.web.servlet.ResultActions) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) AbstractControllerTest(org.entando.entando.web.AbstractControllerTest) Test(org.junit.Test)

Example 4 with PageModelFrameReq

use of org.entando.entando.web.pagemodel.model.PageModelFrameReq in project entando-core by entando.

the class PageModelControllerTest method should_validate_add_page_model_invalid_frames_last.

@Test
public void should_validate_add_page_model_invalid_frames_last() throws Exception {
    UserDetails user = new OAuth2TestUtils.UserBuilder("jack_bauer", "0x24").grantedToRoleAdmin().build();
    String accessToken = mockOAuthInterceptor(user);
    PageModelRequest pageModel = new PageModelRequest();
    pageModel.setCode("test");
    pageModel.setDescr("test_descr");
    PageModelFrameReq frame0 = new PageModelFrameReq(0, "descr_0");
    PageModelFrameReq frame1 = new PageModelFrameReq(2, "descr_1");
    pageModel.getConfiguration().add(frame0);
    pageModel.getConfiguration().add(frame1);
    ObjectMapper mapper = new ObjectMapper();
    String payload = mapper.writeValueAsString(pageModel);
    ResultActions result = mockMvc.perform(post("/pagemodels").content(payload).contentType(MediaType.APPLICATION_JSON).header("Authorization", "Bearer " + accessToken));
    result.andExpect(status().isBadRequest());
    result.andExpect(jsonPath("$.errors.length()", is(1)));
}
Also used : PageModelRequest(org.entando.entando.web.pagemodel.model.PageModelRequest) UserDetails(com.agiletec.aps.system.services.user.UserDetails) PageModelFrameReq(org.entando.entando.web.pagemodel.model.PageModelFrameReq) ResultActions(org.springframework.test.web.servlet.ResultActions) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) AbstractControllerTest(org.entando.entando.web.AbstractControllerTest) Test(org.junit.Test)

Example 5 with PageModelFrameReq

use of org.entando.entando.web.pagemodel.model.PageModelFrameReq in project entando-core by entando.

the class PageModelControllerIntegrationTest method update_page_model_with_errors.

@Test
public void update_page_model_with_errors() throws Exception {
    try {
        PageModelRequest pageModelRequest = PageModelTestUtil.validPageModelRequest();
        pageModelRequest.setCode(PAGE_MODEL_CODE);
        ResultActions result = mockMvc.perform(post("/pageModels").content(createJson(pageModelRequest)).contentType(MediaType.APPLICATION_JSON_VALUE).header("Authorization", "Bearer " + accessToken));
        result.andDo(print()).andExpect(status().isOk());
        PageModel pageModel = this.pageModelManager.getPageModel(PAGE_MODEL_CODE);
        Assert.assertNotNull(pageModel);
        Assert.assertEquals(2, pageModel.getFrames().length);
        PageModelFrameReq newFrames = new PageModelFrameReq(2, "Position 1");
        newFrames.getDefaultWidget().setCode("invalid_widget");
        pageModelRequest.getConfiguration().getFrames().add(newFrames);
        result = mockMvc.perform(post("/pageModels").content(createJson(pageModelRequest)).contentType(MediaType.APPLICATION_JSON_VALUE).header("Authorization", "Bearer " + accessToken));
        result.andExpect(status().isConflict());
        result.andExpect(jsonPath("$.payload.size()", is(0)));
        result.andExpect(jsonPath("$.errors.size()", is(1)));
        result.andExpect(jsonPath("$.errors[0].code", is("2")));
        result.andExpect(jsonPath("$.metaData.size()", is(0)));
        pageModel = this.pageModelManager.getPageModel(PAGE_MODEL_CODE);
        Assert.assertNotNull(pageModel);
        Assert.assertEquals(2, pageModel.getFrames().length);
        result = mockMvc.perform(put("/pageModels/{code}", PAGE_MODEL_CODE).content(createJson(pageModelRequest)).contentType(MediaType.APPLICATION_JSON_VALUE).header("Authorization", "Bearer " + accessToken));
        result.andExpect(status().isBadRequest());
        result.andExpect(jsonPath("$.payload.size()", is(0)));
        result.andExpect(jsonPath("$.errors.size()", is(1)));
        result.andExpect(jsonPath("$.errors[0].code", is("6")));
        result.andExpect(jsonPath("$.metaData.size()", is(0)));
        pageModel = this.pageModelManager.getPageModel(PAGE_MODEL_CODE);
        Assert.assertNotNull(pageModel);
        Assert.assertEquals(2, pageModel.getFrames().length);
        pageModelRequest.setCode(NONEXISTENT_PAGE_MODEL);
        result = mockMvc.perform(put("/pageModels/{code}", NONEXISTENT_PAGE_MODEL).content(createJson(pageModelRequest)).contentType(MediaType.APPLICATION_JSON_VALUE).header("Authorization", "Bearer " + accessToken));
        result.andExpect(status().isNotFound());
        result.andExpect(jsonPath("$.payload.size()", is(0)));
        result.andExpect(jsonPath("$.errors.size()", is(1)));
        result.andExpect(jsonPath("$.errors[0].code", is("1")));
        result.andExpect(jsonPath("$.metaData.size()", is(0)));
        pageModel = this.pageModelManager.getPageModel(PAGE_MODEL_CODE);
        Assert.assertNotNull(pageModel);
        Assert.assertEquals(2, pageModel.getFrames().length);
    } catch (Exception e) {
        throw e;
    } finally {
        this.pageModelManager.deletePageModel(PAGE_MODEL_CODE);
    }
}
Also used : PageModelRequest(org.entando.entando.web.pagemodel.model.PageModelRequest) PageModelTestUtil.validPageModelRequest(org.entando.entando.aps.system.services.pagemodel.PageModelTestUtil.validPageModelRequest) PageModelFrameReq(org.entando.entando.web.pagemodel.model.PageModelFrameReq) ResultActions(org.springframework.test.web.servlet.ResultActions) PageModel(com.agiletec.aps.system.services.pagemodel.PageModel) ApsSystemException(com.agiletec.aps.system.exception.ApsSystemException) JsonProcessingException(com.fasterxml.jackson.core.JsonProcessingException) Test(org.junit.Test) AbstractControllerIntegrationTest(org.entando.entando.web.AbstractControllerIntegrationTest)

Aggregations

PageModelFrameReq (org.entando.entando.web.pagemodel.model.PageModelFrameReq)8 PageModelRequest (org.entando.entando.web.pagemodel.model.PageModelRequest)6 Test (org.junit.Test)6 ResultActions (org.springframework.test.web.servlet.ResultActions)6 UserDetails (com.agiletec.aps.system.services.user.UserDetails)4 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)4 AbstractControllerTest (org.entando.entando.web.AbstractControllerTest)4 ApsSystemException (com.agiletec.aps.system.exception.ApsSystemException)2 PageModel (com.agiletec.aps.system.services.pagemodel.PageModel)2 JsonProcessingException (com.fasterxml.jackson.core.JsonProcessingException)2 PageModelTestUtil.validPageModelRequest (org.entando.entando.aps.system.services.pagemodel.PageModelTestUtil.validPageModelRequest)2 AbstractControllerIntegrationTest (org.entando.entando.web.AbstractControllerIntegrationTest)2 ArrayList (java.util.ArrayList)1 PageModelConfigurationRequest (org.entando.entando.web.pagemodel.model.PageModelConfigurationRequest)1