new tests for RM Site

This commit is contained in:
Rodica Sutu
2016-10-27 19:03:33 +03:00
parent 2289696e0f
commit f896963188
2 changed files with 89 additions and 18 deletions

View File

@@ -0,0 +1,21 @@
package org.alfresco.rest;
/**
* Test data used in tests
*
* @author Rodica Sutu
*/
public interface TestData
{
/**
* A user with ALFRESCO_ADMINISTRATORS role.
* <p>"GROUP_ANOTHER_ADMIN_EXISTS" The ANOTHER_ADMIN user has been created.
*/
public static final String ANOTHER_ADMIN = "another_admin";
/**
* The default password used when creating test users.
*/
public static final String DEFAULT_PASSWORD = "password";
public static final String DEFAULT_EMAIL = "default@alfresco.com";
}

View File

@@ -11,10 +11,14 @@
*/ */
package org.alfresco.rest.fileplancomponents; package org.alfresco.rest.fileplancomponents;
import static org.alfresco.com.site.RMSiteCompliance.DOD5015;
import static org.alfresco.com.site.RMSiteCompliance.STANDARD; import static org.alfresco.com.site.RMSiteCompliance.STANDARD;
import static org.alfresco.com.site.RMSiteFields.COMPLIANCE; import static org.alfresco.com.site.RMSiteFields.COMPLIANCE;
import static org.alfresco.com.site.RMSiteFields.DESCRIPTION; import static org.alfresco.com.site.RMSiteFields.DESCRIPTION;
import static org.alfresco.com.site.RMSiteFields.TITLE; import static org.alfresco.com.site.RMSiteFields.TITLE;
import static org.alfresco.rest.TestData.ANOTHER_ADMIN;
import static org.alfresco.rest.TestData.DEFAULT_EMAIL;
import static org.alfresco.rest.TestData.DEFAULT_PASSWORD;
import static org.jglue.fluentjson.JsonBuilderFactory.buildObject; import static org.jglue.fluentjson.JsonBuilderFactory.buildObject;
import static org.springframework.http.HttpStatus.CONFLICT; import static org.springframework.http.HttpStatus.CONFLICT;
import static org.springframework.http.HttpStatus.CREATED; import static org.springframework.http.HttpStatus.CREATED;
@@ -26,9 +30,12 @@ import static org.testng.Assert.assertEquals;
import com.google.gson.JsonObject; import com.google.gson.JsonObject;
import org.alfresco.dataprep.UserService;
import org.alfresco.rest.BaseRestTest; import org.alfresco.rest.BaseRestTest;
import org.alfresco.rest.core.RestWrapper; import org.alfresco.rest.core.RestWrapper;
import org.alfresco.rest.model.site.RMSite; import org.alfresco.rest.model.site.RMSite;
import org.alfresco.utility.model.UserModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.testng.annotations.Test; import org.testng.annotations.Test;
/** /**
@@ -48,25 +55,27 @@ public class RMSiteTests extends BaseRestTest
private static final String RM_ID = "rm"; private static final String RM_ID = "rm";
private static final String RM_TITLE = "Records Management"; private static final String RM_TITLE = "Records Management";
private static final String RM_DESCRIPTION = "Records Management Site"; private static final String RM_DESCRIPTION = "Records Management Site";
@Autowired
private UserService userService;
@Test @Test
( (
description = "Create RM site as admin user with standard Compliance" description = "Create RM site as admin user with Standard Compliance"
) )
public void createRMSiteAsAdminUser() throws Exception public void createRMSiteAsAdminUser() throws Exception
{ {
RestWrapper restWrapper = rmSiteAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); rmSiteAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser());
if (siteRMExist()) if (siteRMExist())
{ {
//Delete the RM site //Delete the RM site
rmSiteAPI.deleteRMSite(); rmSiteAPI.deleteRMSite();
} }
// Build the RM site properties // Build the RM site properties
JsonObject rmSiteProperties = buildObject(). JsonObject rmSiteProperties = buildObject()
add(TITLE, RM_TITLE). .add(TITLE, RM_TITLE)
add(DESCRIPTION, RM_DESCRIPTION). .add(DESCRIPTION, RM_DESCRIPTION)
add(COMPLIANCE, STANDARD.toString()). .add(COMPLIANCE, STANDARD.toString())
getJson(); .getJson();
// Create the RM site // Create the RM site
RMSite rmSite = rmSiteAPI.createRMSite(rmSiteProperties); RMSite rmSite = rmSiteAPI.createRMSite(rmSiteProperties);
@@ -97,11 +106,11 @@ public class RMSiteTests extends BaseRestTest
String newDescription = RM_DESCRIPTION + "createRMSiteWhenSiteExists"; String newDescription = RM_DESCRIPTION + "createRMSiteWhenSiteExists";
// Build the RM site properties // Build the RM site properties
JsonObject rmSiteProperties = buildObject(). JsonObject rmSiteProperties = buildObject()
add(TITLE, newTitle). .add(TITLE, newTitle)
add(DESCRIPTION, newDescription). .add(DESCRIPTION, newDescription)
add(COMPLIANCE, STANDARD.toString()). .add(COMPLIANCE, STANDARD.toString())
getJson(); .getJson();
// Create the RM site // Create the RM site
rmSiteAPI.createRMSite(rmSiteProperties); rmSiteAPI.createRMSite(rmSiteProperties);
@@ -135,7 +144,6 @@ public class RMSiteTests extends BaseRestTest
// Get the RM site // Get the RM site
RMSite rmSite=rmSiteAPI.getSite(); RMSite rmSite=rmSiteAPI.getSite();
if (!siteRMExist()) if (!siteRMExist())
{ {
// Verify the status code // Verify the status code
@@ -150,6 +158,48 @@ public class RMSiteTests extends BaseRestTest
assertEquals(rmSite.getCompliance(), STANDARD); assertEquals(rmSite.getCompliance(), STANDARD);
assertEquals(rmSite.getVisibility(), PUBLIC); assertEquals(rmSite.getVisibility(), PUBLIC);
} }
} }
}
@Test
(
description = "Create RM site as an admin user created with DOD compliance"
)
public void createRMSiteAsAnotherAdminUser() throws Exception
{
rmSiteAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser());
if (siteRMExist())
{
//Delete the RM site
rmSiteAPI.deleteRMSite();
}
rmSiteAPI.usingRestWrapper().disconnect();
userService.create(dataUser.getAdminUser().getUsername(),
dataUser.getAdminUser().getPassword(),
ANOTHER_ADMIN,
DEFAULT_PASSWORD,
DEFAULT_EMAIL,
ANOTHER_ADMIN,
ANOTHER_ADMIN);
UserModel userModel=new UserModel(ANOTHER_ADMIN,DEFAULT_PASSWORD);
rmSiteAPI.usingRestWrapper().authenticateUser(userModel);
// Build the RM site properties
JsonObject rmSiteProperties = buildObject()
.add(TITLE, RM_TITLE)
.add(DESCRIPTION, RM_DESCRIPTION)
.add(COMPLIANCE, DOD5015.toString())
.getJson();
// Create the RM site
RMSite rmSite = rmSiteAPI.createRMSite(rmSiteProperties);
// Verify the status code
rmSiteAPI.usingRestWrapper().assertStatusCodeIs(CREATED);
// Verify the returned file plan component
assertEquals(rmSite.getId(), RM_ID);
assertEquals(rmSite.getTitle(), RM_TITLE);
assertEquals(rmSite.getDescription(), RM_DESCRIPTION);
assertEquals(rmSite.getCompliance(), DOD5015);
assertEquals(rmSite.getVisibility(), PUBLIC);
}
}