mirror of
https://github.com/Alfresco/SearchServices.git
synced 2026-09-16 18:12:56 +00:00
@@ -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 <> '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());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user