Merge branch 'TAS-1766' into 'master'

Tas 1766

See merge request !76
This commit is contained in:
Bogdan Bocancea
2016-10-31 12:14:09 +00:00
3 changed files with 108 additions and 1 deletions
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--CMIS Queries: passing the search query as first param and results expected -->
<testData>
<queries>
<query value="SELECT * FROM cmis:document where IN_TREE('%s')" expectedResults="6" />
<query value="SELECT * FROM cmis:folder where IN_TREE('%s')" expectedResults="4" />
<query value="SELECT * FROM cmis:document where IN_TREE('%s') AND cmis:name = 'fourthFile'" expectedResults="1" />
<query value="SELECT * FROM cmis:folder where IN_TREE('%s') AND cmis:name = 'subFolder-3'" expectedResults="1" />
<query value="SELECT * FROM cmis:document where IN_TREE('%s') ORDER BY cmis:name ASC" expectedResults="6" />
<query value="SELECT * FROM cmis:document where IN_TREE('%s') ORDER BY cmis:name DESC" expectedResults="6" />
<query value="SELECT * FROM cmis:folder where IN_TREE('%s') ORDER BY cmis:lastModificationDate ASC" expectedResults="4" />
<query value="SELECT * FROM cmis:folder where IN_TREE('%s') ORDER BY cmis:lastModificationDate DESC" expectedResults="4" />
<query value="SELECT * FROM cmis:document where IN_TREE('%s') ORDER BY cmis:createdBy DESC" expectedResults="6" />
<query value="SELECT * FROM cmis:document where IN_TREE('%s') AND cmis:name IS NOT NULL" expectedResults="6" />
<query value="SELECT * FROM cmis:folder where IN_TREE('%s') AND cmis:name IS NOT NULL" expectedResults="4" />
<query value="SELECT * FROM cmis:document where IN_TREE('%s') AND CONTAINS('fifthFile content')" expectedResults="1" />
<query value="SELECT * FROM cmis:document where IN_TREE('%s') AND cmis:name LIKE 'fourthFile'" expectedResults="1" />
<query value="SELECT * FROM cmis:folder where IN_TREE('%s') AND NOT(cmis:name NOT IN ('subFolder-3'))" expectedResults="1" />
<query value="SELECT * FROM cmis:document where IN_TREE('%s') AND cmis:name IN ('fourthFile', 'fifthFile.txt')" expectedResults="2" />
<query value="SELECT * FROM cmis:document where IN_TREE('%s') AND cmis:name NOT IN ('fourthFile', 'fifthFile.txt')" expectedResults="4" />
<query value="SELECT * FROM cmis:folder where IN_TREE('%s') AND cmis:name &lt;&gt; 'subFolder-3'" expectedResults="3" />
</queries>
</testData>
@@ -11,6 +11,7 @@ import org.alfresco.utility.model.QueryModel;
import org.alfresco.utility.model.SiteModel;
import org.alfresco.utility.model.TestGroup;
import org.alfresco.utility.model.UserModel;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
@@ -24,7 +25,7 @@ public class SolrSearchInFolder extends CmisTest
XMLTestData testData;
@BeforeClass(alwaysRun = true)
public void deployCustomContentModel() throws Exception
public void createTestData() throws Exception
{
XMLTestDataProvider.setXmlImputFile("src/main/resources/shared-resources/testdata/search-in-folder.xml");
@@ -51,9 +52,16 @@ public class SolrSearchInFolder extends CmisTest
.createFile(subFile2).and().assertThat().existsInRepo()
.createFile(subFile3).and().assertThat().existsInRepo()
.createFile(subFile4).and().assertThat().existsInRepo();
// wait for solr index
Utility.waitToLoopTime(10);
}
@AfterClass(alwaysRun = true)
public void cleanupEnvironment() throws Exception
{
dataContent.deleteSite(testSite);
}
@Test(dataProviderClass = XMLTestDataProvider.class, dataProvider = "getQueriesData")
public void executeCMISQuery(QueryModel query)
{
@@ -0,0 +1,76 @@
package org.alfresco.cmis.search;
import org.alfresco.cmis.CmisTest;
import org.alfresco.utility.Utility;
import org.alfresco.utility.data.provider.XMLTestData;
import org.alfresco.utility.data.provider.XMLTestDataProvider;
import org.alfresco.utility.model.FileModel;
import org.alfresco.utility.model.FileType;
import org.alfresco.utility.model.FolderModel;
import org.alfresco.utility.model.QueryModel;
import org.alfresco.utility.model.SiteModel;
import org.alfresco.utility.model.TestGroup;
import org.alfresco.utility.model.UserModel;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
@Test(groups = { TestGroup.CMIS, TestGroup.QUERIES })
public class SolrSearchInTree extends CmisTest
{
UserModel testUser;
SiteModel testSite;
FolderModel parentFolder, subFolder1, subFolder2, subFolder3;
FileModel subFile1, subFile2, subFile3, subFile4, subFile5, subFile6;
XMLTestData testData;
@BeforeClass(alwaysRun = true)
public void createTestData() throws Exception
{
XMLTestDataProvider.setXmlImputFile("src/main/resources/shared-resources/testdata/search-in-tree.xml");
// create input data
parentFolder = FolderModel.getRandomFolderModel();
subFolder1 = FolderModel.getRandomFolderModel();
subFolder2 = FolderModel.getRandomFolderModel();
subFolder3 = new FolderModel("subFolder-3");
subFile5 = new FileModel("fifthFile.txt",FileType.TEXT_PLAIN, "fifthFile content");
subFile1 = new FileModel("firstFile", FileType.MSEXCEL);
subFile2 = FileModel.getRandomFileModel(FileType.MSPOWERPOINT2007);
subFile3 = FileModel.getRandomFileModel(FileType.TEXT_PLAIN);
subFile4 = new FileModel("fourthFile", "fourthFileTitle", "fourthFileDescription", FileType.MSWORD2007);
subFile6 = FileModel.getRandomFileModel(FileType.TEXT_PLAIN);
testUser = dataUser.createRandomTestUser();
testSite = dataSite.usingUser(testUser).createPublicRandomSite();
cmisApi.authenticateUser(testUser).usingSite(testSite).createFolder(parentFolder)
.then().usingResource(parentFolder)
.createFile(subFile5).and().assertThat().existsInRepo().and().assertThat().contentIs("fifthFile content")
.createFolder(subFolder1).and().assertThat().existsInRepo()
.createFolder(subFolder2).and().assertThat().existsInRepo()
.createFolder(subFolder3).and().assertThat().existsInRepo()
.createFile(subFile1).and().assertThat().existsInRepo()
.createFile(subFile2).and().assertThat().existsInRepo()
.createFile(subFile3).and().assertThat().existsInRepo()
.createFile(subFile4).and().assertThat().existsInRepo()
.then().usingResource(subFolder1)
.createFile(subFile6).assertThat().existsInRepo()
.createFolder(FolderModel.getRandomFolderModel()).assertThat().existsInRepo();
// wait for solr index
Utility.waitToLoopTime(13);
}
@AfterClass(alwaysRun = true)
public void cleanupEnvironment() throws Exception
{
dataContent.deleteSite(testSite);
}
@Test(dataProviderClass = XMLTestDataProvider.class, dataProvider = "getQueriesData")
public void executeCMISQuery(QueryModel query)
{
String currentQuery = String.format(query.getValue(), parentFolder.getNodeRef());
cmisApi.withQuery(currentQuery)
.assertResultsCountIs(query.getResults());
}
}