Files
SearchServices/e2e-test/java/org/alfresco/rest/renditions/GetRenditionTests.java
T

98 lines
4.6 KiB
Java

package org.alfresco.rest.renditions;
import static org.alfresco.utility.report.log.Step.STEP;
import org.alfresco.rest.RestTest;
import org.alfresco.rest.model.RestNodeModel;
import org.alfresco.rest.model.RestRenditionInfoModel;
import org.alfresco.utility.Utility;
import org.alfresco.utility.model.FileModel;
import org.alfresco.utility.model.FolderModel;
import org.alfresco.utility.model.SiteModel;
import org.alfresco.utility.model.TestGroup;
import org.alfresco.utility.model.UserModel;
import org.alfresco.utility.report.Bug;
import org.alfresco.utility.report.Bug.Status;
import org.alfresco.utility.testrail.ExecutionType;
import org.alfresco.utility.testrail.annotation.TestRail;
import org.springframework.http.HttpStatus;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
/**
* Handles tests related to GET api-explorer/#!/renditions
* @author Cristina Axinte
*
*/
public class GetRenditionTests extends RestTest
{
private UserModel user;
private SiteModel site;
@BeforeClass(alwaysRun = true)
public void dataPreparation() throws Exception
{
user = dataUser.createRandomTestUser();
site = dataSite.usingUser(user).createPublicRandomSite();
}
@Bug(id = "REPO-2449", status = Status.FIXED)
@Test(groups = { TestGroup.REST_API, TestGroup.RENDITIONS, TestGroup.SANITY })
@TestRail(section = { TestGroup.REST_API, TestGroup.RENDITIONS }, executionType = ExecutionType.SANITY,
description = "Verify that ZIP document preview is rendered")
public void verifyPreviewOfZipFile() throws Exception
{
STEP("1. Create a folder in existing site");
FolderModel folder = FolderModel.getRandomFolderModel();
folder = dataContent.usingUser(user).usingSite(site).createFolder(folder);
STEP("2. Upload a local ZIP file using RESTAPI");
restClient.authenticateUser(user).configureRequestSpec().addMultiPart("filedata", Utility.getResourceTestDataFile("content-zip-test.zip"));
RestNodeModel fileNode = restClient.authenticateUser(user).withCoreAPI().usingNode(folder).createNode();
restClient.assertStatusCodeIs(HttpStatus.CREATED);
FileModel file = new FileModel("content-zip-test.zip");
file.setCmisLocation(folder.getCmisLocation() + "/content-zip-test.zip");
file.setNodeRef(fileNode.getId());
STEP("3. Create preview of ZIP file using RESTAPI");
restClient.withCoreAPI().usingNode(file).createNodeRendition("pdf");
restClient.assertStatusCodeIs(HttpStatus.ACCEPTED);
STEP("4. Verify preview of ZIP file is created using RESTAPI");
RestRenditionInfoModel renditionInfo = restClient.withCoreAPI().usingNode(file).getNodeRenditionUntilIsCreated("pdf");
restClient.assertStatusCodeIs(HttpStatus.OK);
renditionInfo.assertThat().field("status").is("CREATED");
}
@Bug(id = "REPO-2485", status = Status.FIXED)
@Test(groups = { TestGroup.REST_API, TestGroup.RENDITIONS, TestGroup.SANITY })
@TestRail(section = { TestGroup.REST_API, TestGroup.RENDITIONS }, executionType = ExecutionType.SANITY,
description = "Verify that ZIP document thumbnail is rendered")
public void verifyThumbnailOfZipFile() throws Exception
{
STEP("1. Create a folder in existing site");
FolderModel folder = FolderModel.getRandomFolderModel();
folder = dataContent.usingUser(user).usingSite(site).createFolder(folder);
STEP("2. Upload a local ZIP file using RESTAPI");
restClient.authenticateUser(user).configureRequestSpec().addMultiPart("filedata", Utility.getResourceTestDataFile("content-zip-test.zip"));
RestNodeModel fileNode = restClient.authenticateUser(user).withCoreAPI().usingNode(folder).createNode();
restClient.assertStatusCodeIs(HttpStatus.CREATED);
FileModel file = new FileModel("content-zip-test.zip");
file.setCmisLocation(folder.getCmisLocation() + "/content-zip-test.zip");
file.setNodeRef(fileNode.getId());
STEP("3. Create thumbnail of ZIP file using RESTAPI");
restClient.withCoreAPI().usingNode(file).createNodeRendition("doclib");
restClient.assertStatusCodeIs(HttpStatus.ACCEPTED);
STEP("4. Verify thumbnail of ZIP file is created and has content using RESTAPI");
RestRenditionInfoModel renditionInfo = restClient.withCoreAPI().usingNode(file).getNodeRenditionUntilIsCreated("doclib");
restClient.assertStatusCodeIs(HttpStatus.OK);
renditionInfo.assertThat().field("status").is("CREATED");
renditionInfo.assertThat().field("content.sizeInBytes").isGreaterThan(120);
}
}