Added createTenant method to use it in dataPreparation of tests and updated dataPreparation accordingly

This commit is contained in:
Cristina Axinte
2016-09-28 16:32:29 +03:00
parent 313f23a29d
commit 28d29d9225
3 changed files with 58 additions and 63 deletions

View File

@@ -2,8 +2,8 @@ package org.alfresco.rest.networks;
import org.alfresco.rest.RestTest;
import org.alfresco.rest.requests.RestNetworksApi;
import org.alfresco.utility.data.UserRole;
import org.alfresco.utility.exception.DataPreparationException;
import org.alfresco.rest.requests.RestTenantApi;
import org.alfresco.utility.constants.UserRole;
import org.alfresco.utility.model.SiteModel;
import org.alfresco.utility.model.UserModel;
import org.alfresco.utility.testrail.ExecutionType;
@@ -16,81 +16,85 @@ import org.testng.annotations.Test;
/**
* Created by Cristina Axinte on 9/26/2016.
*/
@Test(groups = { "rest-api", "networks", "sanity" })
@Test(groups = { "rest-api", "networks" })
public class RestGetNetworkTest extends RestTest
{
@Autowired
RestNetworksApi networkApi;
@Autowired
RestTenantApi tenantApi;
UserModel adminTenantUser;
UserModel tenantUser;
UserModel managerTenantUser;
UserModel collaboratorTenantUser;
UserModel consumerTenantUser;
UserModel contributorTenantUser;
String tenantName;
String anotherTenantName;
@BeforeClass
public void setup() throws DataPreparationException
@BeforeClass(alwaysRun = true)
public void dataPreparation() throws Exception
{
// input data should be created for handle tenants:
// create tenant "tenant1" with password "password"
UserModel adminuser = dataUser.getAdminUser();
adminTenantUser = UserModel.getAdminTenantUser();
tenantName = adminTenantUser.getDomain();
// with admin "admin@tenant1" create user "test1@tenant1" with password "password"
adminTenantUser = new UserModel("admin@tenant1", "password");
tenantUser = new UserModel("test1@tenant1", "password");
// managerTenantUser = dataUser.usingUser(adminTenantUser).createUser("manTenant2@tenant1");
// collaboratorTenantUser = dataUser.usingUser(adminTenantUser).createUser("manTenant2@tenant1");
// consumerTenantUser = dataUser.usingUser(adminTenantUser).createUser("manTenant2@tenant1");
// contributorTenantUser = dataUser.usingUser(adminTenantUser).createUser("manTenant2@tenant1");
managerTenantUser = new UserModel("manTenant@tenant1", "password");
collaboratorTenantUser = new UserModel("colTenant@tenant1", "password");
consumerTenantUser = new UserModel("consTenant@tenant1", "password");
contributorTenantUser = new UserModel("contTenant@tenant1", "password");
SiteModel site=dataSite.usingUser(adminTenantUser).createPublicRandomSite();
restClient.authenticateUser(adminuser);
tenantApi.useRestClient(restClient);
tenantApi.createTenant(adminTenantUser.getDomain());
UserModel adminAnotherTenantUser = UserModel.getAdminTenantUser();
anotherTenantName = adminAnotherTenantUser.getDomain();
tenantApi.createTenant(anotherTenantName);
tenantUser = dataUser.usingUser(adminTenantUser).createRandomTestUser("uTenant");
managerTenantUser = dataUser.usingUser(adminTenantUser).createRandomTestUser("manTenant");
collaboratorTenantUser = dataUser.usingUser(adminTenantUser).createRandomTestUser("colTenant");
consumerTenantUser = dataUser.usingUser(adminTenantUser).createRandomTestUser("consTenant");
contributorTenantUser = dataUser.usingUser(adminTenantUser).createRandomTestUser("contTenant");
SiteModel site = dataSite.usingUser(adminTenantUser).createPublicRandomSite();
dataUser.usingUser(adminTenantUser).addUserToSite(managerTenantUser, site, UserRole.SiteManager);
dataUser.usingUser(adminTenantUser).addUserToSite(collaboratorTenantUser, site, UserRole.SiteCollaborator);
dataUser.usingUser(adminTenantUser).addUserToSite(consumerTenantUser, site, UserRole.SiteConsumer);
dataUser.usingUser(adminTenantUser).addUserToSite(contributorTenantUser, site, UserRole.SiteConsumer);
networkApi.useRestClient(restClient);
}
@Test(groups = "sanity")
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify non existing user gets another exisiting network with Rest API and checks the forbidden status")
public void nonExistingTenantUserIsNotAuthorizedToRequest() throws Exception
{
String tenantName = "tenant1";
UserModel tenantUser = new UserModel("nonexisting@tenant1", "password");
UserModel tenantUser = new UserModel("nonexisting", "password");
tenantUser.setDomain(tenantName);
restClient.authenticateUser(tenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.UNAUTHORIZED.toString());
}
@Test(groups = "sanity")
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify tenant admin user gets specific network with Rest API and response is not empty")
public void adminTenantChecksIfNetworkIsPresent() throws Exception
{
String tenantName = "tenant1";
restClient.authenticateUser(adminTenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.getNetwork(adminTenantUser.getDomain());
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.OK.toString());
}
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify tenant admin user gets specific network with Rest API and checks response parameters are correct")
public void adminTenantChecksNetworkParamsAreCorrect() throws Exception
{
String tenantName = "tenant1";
restClient.authenticateUser(adminTenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName).assertNetworkHasName(tenantName).assertNetworkIsEnabled(true);
}
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify tenant admin user gets non exisiting network with Rest API and checks the not found status")
public void adminTenantChecksIfNonExistingNetworkIsNotFound() throws Exception
{
String tenantName = "netenant";
String tenantName = "notenant";
restClient.authenticateUser(adminTenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.NOT_FOUND.toString());
}
@@ -98,19 +102,15 @@ public class RestGetNetworkTest extends RestTest
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify tenant admin user gets another exisiting network with Rest API and checks the forbidden status")
public void adminTenantChecksIfAnotherExistingNetworkIsForbidden() throws Exception
{
String tenantName = "tenant2";
restClient.authenticateUser(adminTenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.getNetwork(anotherTenantName);
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.FORBIDDEN.toString());
}
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify any tenant user gets its network with Rest API and response is not empty")
public void userTenantChecksIfNetworkIsPresent() throws Exception
{
String tenantName = "tenant1";
restClient.authenticateUser(tenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.OK.toString());
}
@@ -118,18 +118,15 @@ public class RestGetNetworkTest extends RestTest
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify any tenant user gets specific network with Rest API and checks response parameters are correct")
public void userTenantChecksNetworkParamsAreCorrect() throws Exception
{
String tenantName = "tenant1";
restClient.authenticateUser(tenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName).assertNetworkHasName(tenantName).assertNetworkIsEnabled(true);
}
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify any tenant user gets non exisiting network with Rest API and checks the not found status")
public void userTenantChecksIfNonExistingNetworkIsNotFound() throws Exception
{
String tenantName = "netenant";
String tenantName = "nontenant";
restClient.authenticateUser(tenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.NOT_FOUND.toString());
}
@@ -137,49 +134,43 @@ public class RestGetNetworkTest extends RestTest
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify any tenant user gets another exisiting network with Rest API and checks the forbidden status")
public void userTenantChecksIfAnotherExistingNetworkIsForbidden() throws Exception
{
String tenantName = "tenant2";
restClient.authenticateUser(tenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.getNetwork(anotherTenantName);
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.FORBIDDEN.toString());
}
@Test(groups = "sanity")
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify manager tenant user gets its network with Rest API and response is not empty")
public void tenantManagerUserChecksIfNetworkIsPresent() throws Exception
{
String tenantName = "tenant1";
restClient.authenticateUser(managerTenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.OK.toString());
}
@Test(groups = "sanity")
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify collaborator tenant user gets its network with Rest API and response is not empty")
public void tenantCollaboratorUserChecksIfNetworkIsPresent() throws Exception
{
String tenantName = "tenant1";
restClient.authenticateUser(collaboratorTenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.OK.toString());
}
@Test(groups = "sanity")
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify consumer tenant user gets its network with Rest API and response is not empty")
public void tenantConsumerUserChecksIfNetworkIsPresent() throws Exception
{
String tenantName = "tenant1";
restClient.authenticateUser(consumerTenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.OK.toString());
}
@Test(groups = "sanity")
@TestRail(section = { "rest-api", "networks" }, executionType = ExecutionType.SANITY, description = "Verify contributor tenant user gets its network with Rest API and response is not empty")
public void tenantContributorUserChecksIfNetworkIsPresent() throws Exception
{
String tenantName = "tenant1";
restClient.authenticateUser(contributorTenantUser);
networkApi.useRestClient(restClient);
networkApi.getNetwork(tenantName);
networkApi.usingRestWrapper().assertStatusCodeIs(HttpStatus.OK.toString());
}

View File

@@ -8,7 +8,7 @@ admin.user=admin
admin.password=admin
# rest related
rest.basePath=alfresco/api/tenant1/public/alfresco/versions/1
rest.basePath=alfresco/api/-default-/public/alfresco/versions/1
# TEST MANAGEMENT SECTION - Test Rail

View File

@@ -3,15 +3,19 @@
<suite name="REST API DEMO TESTS" parallel="classes">
<listeners>
<listener class-name="org.alfresco.utility.report.ReportListenerAdapter"></listener>
<listener class-name="org.alfresco.utility.testrail.TestRailExecutorListener"></listener>
<!-- <listener class-name="org.alfresco.utility.testrail.TestRailExecutorListener"></listener> -->
<listener class-name="org.alfresco.utility.report.log.LogsListener"></listener>
</listeners>
<test name="Test">
<classes>
<class name="org.alfresco.rest.demo.SamplePeopleTest"></class>
<class name="org.alfresco.rest.demo.SampleSitesTest"></class>
<class name="org.alfresco.rest.demo.SampleCommentsTest"></class>
</classes>
<test name="Rest API Tests">
<groups>
<run>
<include name="sanity" />
</run>
</groups>
<packages>
<package name="org.alfresco.rest.demo"></package>
<package name="org.alfresco.rest.networks"></package>
</packages>
</test> <!-- Test -->
</suite> <!-- Suite -->