Files
SearchServices/e2e-test/java/org/alfresco/rest/demo/SampleSitesTest.java
2016-09-26 12:12:32 +03:00

117 lines
4.8 KiB
Java

package org.alfresco.rest.demo;
import org.alfresco.rest.RestTest;
import org.alfresco.rest.body.SiteMember;
import org.alfresco.rest.exception.JsonToModelConversionException;
import org.alfresco.rest.requests.RestSitesApi;
import org.alfresco.utility.data.DataSite;
import org.alfresco.utility.data.DataUser;
import org.alfresco.utility.exception.DataPreparationException;
import org.alfresco.utility.model.SiteModel;
import org.alfresco.utility.model.UserModel;
import org.alfresco.utility.testrail.ExecutionType;
import org.alfresco.utility.testrail.annotation.TestRail;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.social.alfresco.api.entities.Role;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
@Test(groups = { "rest-api", "people", "sanity" })
public class SampleSitesTest extends RestTest
{
@Autowired
RestSitesApi siteAPI;
@Autowired
DataUser dataUser;
@Autowired
DataSite dataSite;
private UserModel userModel;
private SiteModel siteModel;
@BeforeClass
public void initTest() throws DataPreparationException
{
userModel = dataUser.getAdminUser();
restClient.authenticateUser(userModel);
siteModel = dataSite.usingUser(userModel).createPublicRandomSite();
siteAPI.useRestClient(restClient);
}
@TestRail(section={"rest-api", "sites"}, executionType= ExecutionType.SANITY,
description = "Verify admin user gets site details with Rest API and response is not empty")
public void adminShouldGetSiteDetails() throws JsonToModelConversionException, Exception
{
siteAPI.getSite(siteModel.getId())
.assertResponseIsNotEmpty();
}
@TestRail(section={"rest-api", "sites"}, executionType= ExecutionType.SANITY,
description = "Verify admin user gets site information and gets status code OK (200)")
public void adminShouldGetSites() throws JsonToModelConversionException, Exception
{
siteAPI.getSite(siteModel.getId());
siteAPI.usingRestWrapper()
.assertStatusCodeIs(HttpStatus.OK.toString());
}
@TestRail(section={"rest-api", "sites"}, executionType= ExecutionType.SANITY,
description = "Verify admin user gets sites with Rest API and the response is not empty")
public void adminShouldAccessSites() throws JsonToModelConversionException, Exception
{
siteAPI.getSites()
.assertThatResponseIsNotEmpty();
}
@TestRail(section={"rest-api", "sites"}, executionType= ExecutionType.SANITY,
description = "Verify admin user gets sites with Rest API and status code is 200")
public void adminShouldRetrieveSites() throws JsonToModelConversionException, Exception
{
siteAPI.getSites();
siteAPI.usingRestWrapper()
.assertStatusCodeIs(HttpStatus.OK.toString());
}
@TestRail(section={"rest-api", "sites"}, executionType= ExecutionType.SANITY,
description = "Verify admin user gets sites with Rest API and status code is 200")
public void adminShouldAccessResponsePagination() throws JsonToModelConversionException, Exception
{
siteAPI.getSites()
.assertResponseHasPagination();
}
@TestRail(section={"rest-api", "sites"}, executionType= ExecutionType.SANITY,
description = "Verify admin user adds site member with Rest API and status code is 201")
public void adminShouldAddNewSiteMember() throws JsonToModelConversionException, DataPreparationException, Exception
{
UserModel newMember = dataUser.createRandomTestUser();
SiteMember siteMember = new SiteMember(Role.SiteCollaborator.toString(), newMember.getUsername());
siteAPI.addPerson(siteModel.getId(), siteMember);
siteAPI.usingRestWrapper()
.assertStatusCodeIs(HttpStatus.CREATED.toString());
}
@TestRail(section={"rest-api", "sites"}, executionType= ExecutionType.SANITY,
description = "Verify that site exists from get all sites request")
public void adminShouldGetSiteFromSitesList() throws JsonToModelConversionException, Exception
{
siteAPI.getAllSites()
.assertThatResponseHasSite(siteModel.getId());
}
@TestRail(section={"rest-api", "sites"}, executionType= ExecutionType.SANITY,
description = "Verify site details: response not empty, description, title, visibility")
public void adminShouldAccessSiteDetails() throws JsonToModelConversionException, Exception
{
siteAPI.getSite(siteModel.getId())
.assertResponseIsNotEmpty()
.assertSiteHasDescription(siteModel.getDescription())
.assertSiteHasTitle(siteModel.getTitle())
.assertSiteHasVisibility(siteModel.getVisibility());
}
}