Skip to content

Commit

Permalink
Show Preview Mode when we use 'Show Preview' button (#25244)
Browse files Browse the repository at this point in the history
* Show Preview Mode when we use 'Show Preview' button

* fixing test
  • Loading branch information
freddyDOTCMS committed Jun 20, 2023
1 parent 875c4ca commit 7026943
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 13 deletions.
Expand Up @@ -416,7 +416,7 @@ public void backendUserRefererEmpty() throws Exception {
when(response.getOutputStream()).thenReturn(outputStream);

final HTMLPageAssetRenderedAPI pageAssetRenderedAPI = createHtmlPageAssetRenderedAPIMock(
loginUser, "<html>lol</html>", PageMode.LIVE);
loginUser, "<html>lol</html>", PageMode.PREVIEW_MODE);

final VelocityServlet velocityServlet = new VelocityServlet(WebAPILocator.getUserWebAPI(),
pageAssetRenderedAPI);
Expand Down Expand Up @@ -466,7 +466,7 @@ public void backendUserRefererNotDotAdmin() throws Exception {
when(response.getOutputStream()).thenReturn(outputStream);

final HTMLPageAssetRenderedAPI pageAssetRenderedAPI = createHtmlPageAssetRenderedAPIMock(
loginUser, "<html>lol</html>", PageMode.LIVE);
loginUser, "<html>lol</html>", PageMode.PREVIEW_MODE);

final VelocityServlet velocityServlet = new VelocityServlet(WebAPILocator.getUserWebAPI(),
pageAssetRenderedAPI);
Expand Down Expand Up @@ -537,7 +537,7 @@ public void backendUserDisabledNavigateModeSet() throws Exception {
when(response.getOutputStream()).thenReturn(outputStream);

final HTMLPageAssetRenderedAPI pageAssetRenderedAPI = createHtmlPageAssetRenderedAPIMock(
loginUser, "<html>lol</html>", PageMode.LIVE);
loginUser, "<html>lol</html>", PageMode.PREVIEW_MODE);

final VelocityServlet velocityServlet = new VelocityServlet(WebAPILocator.getUserWebAPI(),
pageAssetRenderedAPI);
Expand Down Expand Up @@ -574,8 +574,9 @@ private void testServerPageFor(final User user, final LoginMode mode)
final ServletOutputStream outputStream = mock(ServletOutputStream.class);
when(response.getOutputStream()).thenReturn(outputStream);

final HTMLPageAssetRenderedAPI pageAssetRenderedAPI = createHtmlPageAssetRenderedAPIMock(user, pageContent,
PageMode.LIVE);
final HTMLPageAssetRenderedAPI pageAssetRenderedAPI = createHtmlPageAssetRenderedAPIMock(user,
pageContent,
mode == LoginMode.BE ? PageMode.PREVIEW_MODE : PageMode.LIVE);

final VelocityServlet velocityServlet = new VelocityServlet(WebAPILocator.getUserWebAPI(),
pageAssetRenderedAPI);
Expand Down
Expand Up @@ -70,11 +70,11 @@ private HttpServletRequest frontBackEndRequest() {
/**
* Method to test: Test for {@link VelocityServlet#processPageMode(User, HttpServletRequest)}
* Given Scenario: Be user logged in but the referer is empty
* ExpectedResult: Page mode should be LIVE
* ExpectedResult: Page mode should be PREVIEW
*
*/
@Test
public void test_be_page_mode_should_be_NAVIGATE_EDIT_MODE() {
public void test_be_page_mode_should_be_PREVIEW() {

final HttpSession session = new MockSession(UUIDGenerator.uuid());
final MockSessionRequest requestSession = new MockSessionRequest(backEndRequest());
Expand All @@ -86,7 +86,7 @@ public void test_be_page_mode_should_be_NAVIGATE_EDIT_MODE() {
HttpServletRequestThreadLocal.INSTANCE.setRequest(request);
final PageMode pageMode = VelocityServlet.processPageMode(backEndUser, request);
Assert.assertEquals(LoginMode.BE, LoginMode.get(request));
Assert.assertEquals(PageMode.LIVE, pageMode);
Assert.assertEquals(PageMode.PREVIEW_MODE, pageMode);
}

/**
Expand Down Expand Up @@ -118,12 +118,12 @@ public void backendUserDotAdminReferer() {

/**
* Method to test: Test for {@link VelocityServlet#processPageMode(User, HttpServletRequest)}
* Given Scenario: Be user (fe_be) logged in should be LIVE
* Given Scenario: Be user (fe_be) logged in as BE should be PREVIEW
* ExpectedResult: Page mode should be LIVE
*
*/
@Test
public void test_befe_logged_in_be_page_mode_should_be_NAVIGATE_EDIT_MODE() {
public void test_befe_logged_in_be_page_mode_should_be_PREVIEW() {

final HttpSession session = new MockSession(UUIDGenerator.uuid());
final MockSessionRequest requestSession = new MockSessionRequest(frontBackEndRequest());
Expand All @@ -135,7 +135,7 @@ public void test_befe_logged_in_be_page_mode_should_be_NAVIGATE_EDIT_MODE() {
HttpServletRequestThreadLocal.INSTANCE.setRequest(request);
final PageMode pageMode = VelocityServlet.processPageMode(frontBackEndUser, request);
Assert.assertEquals(LoginMode.BE, LoginMode.get(request));
Assert.assertEquals(PageMode.LIVE, pageMode);
Assert.assertEquals(PageMode.PREVIEW_MODE, pageMode);
}

/**
Expand Down
Expand Up @@ -72,8 +72,12 @@ public static PageMode processPageMode (final User user, final HttpServletReques
: PageMode.setPageMode(request, PageMode.LIVE);
}

return useNavigateMode(request, loginMode) ?
PageMode.setPageMode(request, PageMode.NAVIGATE_EDIT_MODE) : PageMode.setPageMode(request, PageMode.LIVE);
if ( LoginMode.FE == loginMode) {
return PageMode.setPageMode(request, PageMode.LIVE);
}

return useNavigateMode(request, loginMode) ?
PageMode.setPageMode(request, PageMode.NAVIGATE_EDIT_MODE) : PageMode.setPageMode(request, PageMode.PREVIEW_MODE);
}

private static boolean useNavigateMode(final HttpServletRequest request, LoginMode loginMode) {
Expand Down

0 comments on commit 7026943

Please sign in to comment.