diff --git a/e2e-test/java/org/alfresco/rest/renditions/CreateRenditionTests.java b/e2e-test/java/org/alfresco/rest/renditions/CreateRenditionTests.java index 441008d64..d5b58b4e0 100644 --- a/e2e-test/java/org/alfresco/rest/renditions/CreateRenditionTests.java +++ b/e2e-test/java/org/alfresco/rest/renditions/CreateRenditionTests.java @@ -11,6 +11,7 @@ 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; @@ -43,7 +44,7 @@ public class CreateRenditionTests extends RestTest document = dataContent.usingUser(user).usingSite(site).createContent(DocumentType.TEXT_PLAIN); } - @Bug(id = "REPO-2042", description = "Should fail only on MAC OS System and Linux" ) + @Bug(id = "REPO-2042", description = "Should fail only on MAC OS System and Linux", status = Status.FIXED ) @TestRail(section = { TestGroup.REST_API, TestGroup.RENDITIONS }, executionType = ExecutionType.SANITY, description = "Verify admin user creates rendition with Rest API and status code is 202") @Test(groups = { TestGroup.REST_API, TestGroup.RENDITIONS, TestGroup.SANITY }) @@ -52,11 +53,11 @@ public class CreateRenditionTests extends RestTest restClient.authenticateUser(adminUser).withCoreAPI().usingNode(document).createNodeRendition("pdf"); restClient.assertStatusCodeIs(HttpStatus.ACCEPTED); - restClient.withCoreAPI().usingNode(document).getNodeRendition("pdf") + restClient.withCoreAPI().usingNode(document).getNodeRenditionUntilIsCreated("pdf") .assertThat().field("status").is("CREATED"); } - @Bug(id = "REPO-2042", description = "Should fail only on MAC OS System and Linux" ) + @Bug(id = "REPO-2042", description = "Should fail only on MAC OS System and Linux", status = Status.FIXED ) @TestRail(section = { TestGroup.REST_API, TestGroup.RENDITIONS }, executionType = ExecutionType.SANITY, description = "Verify user that created the document can also creates 'pdf' rendition for it with Rest API and status code is 202") @Test(groups = { TestGroup.REST_API, TestGroup.RENDITIONS, TestGroup.SANITY }) @@ -65,11 +66,11 @@ public class CreateRenditionTests extends RestTest restClient.authenticateUser(user).withCoreAPI().usingNode(document).createNodeRendition("pdf"); restClient.assertStatusCodeIs(HttpStatus.ACCEPTED); - restClient.withCoreAPI().usingNode(document).getNodeRendition("pdf") + restClient.withCoreAPI().usingNode(document).getNodeRenditionUntilIsCreated("pdf") .assertThat().field("status").is("CREATED"); } - @Bug(id = "REPO-2042", description = "Should fail only on MAC OS System and Linux" ) + @Bug(id = "REPO-2042", description = "Should fail only on MAC OS System and Linux", status = Status.FIXED ) @TestRail(section = { TestGroup.REST_API, TestGroup.RENDITIONS }, executionType = ExecutionType.SANITY, description = "Verify user that created the document can also creates 'doclib' rendition for it with Rest API and status code is 202") @Test(groups = { TestGroup.REST_API, TestGroup.RENDITIONS, TestGroup.SANITY }) @@ -89,7 +90,7 @@ public class CreateRenditionTests extends RestTest restClient.authenticateUser(user).withCoreAPI().usingNode(document).createNodeRendition("doclib"); restClient.assertStatusCodeIs(HttpStatus.ACCEPTED); - restClient.withCoreAPI().usingNode(document).getNodeRendition("doclib") + restClient.withCoreAPI().usingNode(document).getNodeRenditionUntilIsCreated("doclib") .assertThat().field("status").is("CREATED"); } } diff --git a/e2e-test/java/org/alfresco/rest/search/AbstractSearchTest.java b/e2e-test/java/org/alfresco/rest/search/AbstractSearchTest.java index 2bb43effc..d4a4896b6 100644 --- a/e2e-test/java/org/alfresco/rest/search/AbstractSearchTest.java +++ b/e2e-test/java/org/alfresco/rest/search/AbstractSearchTest.java @@ -111,13 +111,16 @@ public class AbstractSearchTest extends RestTest { return restClient.authenticateUser(dataUser.getAdminUser()).withSearchAPI().search(query); } - - protected SearchRequest carsQuery() + protected SearchRequest createQuery(String term) { SearchRequest query = new SearchRequest(); RestRequestQueryModel queryReq = new RestRequestQueryModel(); - queryReq.setQuery("cars"); + queryReq.setQuery(term); query.setQuery(queryReq); return query; } + protected SearchRequest carsQuery() + { + return createQuery("cars"); + } } diff --git a/e2e-test/java/org/alfresco/rest/search/FacetRangeSearchTest.java b/e2e-test/java/org/alfresco/rest/search/FacetRangeSearchTest.java new file mode 100644 index 000000000..691b1c786 --- /dev/null +++ b/e2e-test/java/org/alfresco/rest/search/FacetRangeSearchTest.java @@ -0,0 +1,269 @@ +/* + * Copyright (C) 2017 Alfresco Software Limited. + * + * This file is part of Alfresco + * + * Alfresco is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Alfresco is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with Alfresco. If not, see . + */ +package org.alfresco.rest.search; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import org.alfresco.rest.model.RestErrorModel; +import org.alfresco.rest.model.RestRequestRangesModel; +import org.alfresco.utility.model.TestGroup; +import org.alfresco.utility.testrail.ExecutionType; +import org.alfresco.utility.testrail.annotation.TestRail; +import org.springframework.http.HttpStatus; +import org.testng.Assert; +import org.testng.annotations.Test; + +/** + * Faceted Range Search Query for numeric range + * { + * "query": { + * "query": "name:A*" + * }, + * "range": { + * "field": "content.size", + * "start": "0", + * "end": "400", + * "gap": "100" + * } + * } + * Date range query: + * { + * "query": { + * "query": "name:A*" + * }, + * "range": { + * "field": "created", + * "start": "2015-09-29T10:45:15.729Z", + * "end": "2016-09-29T10:45:15.729Z", + * "gap": "+100DAY" + * } + * } + * @author Michael Suzuki + * + */ +public class FacetRangeSearchTest extends AbstractSearchTest +{ + @Override + public void dataPreparation() throws Exception + { + //Skip setup + } + @Test(groups = { TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 }) + @TestRail(section = {TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 }, executionType = ExecutionType.REGRESSION, + description = "Check facet intervals mandatory fields") + public void checkingFacetsMandatoryErrorMessages()throws Exception + { + SearchRequest query = carsQuery(); + List ranges = new ArrayList(); + RestRequestRangesModel facetRangeModel = new RestRequestRangesModel(); + ranges.add(facetRangeModel); + query.setRanges(ranges); + SearchResponse response = query(query); + + restClient.assertStatusCodeIs(HttpStatus.BAD_REQUEST).assertLastError() + .containsSummary(String.format(RestErrorModel.MANDATORY_PARAM, "field")); + ranges.clear(); + facetRangeModel.setField("content.size"); + ranges.add(facetRangeModel); + query.setRanges(ranges); + response = query(query); + restClient.assertStatusCodeIs(HttpStatus.BAD_REQUEST).assertLastError() + .containsSummary(String.format(RestErrorModel.MANDATORY_PARAM, "start")); + facetRangeModel.setStart("0"); + ranges.clear(); + ranges.add(facetRangeModel); + query.setRanges(ranges); + response = query(query); + restClient.assertStatusCodeIs(HttpStatus.BAD_REQUEST).assertLastError() + .containsSummary(String.format(RestErrorModel.MANDATORY_PARAM, "end")); + facetRangeModel.setEnd("400"); + query.setRanges(ranges); + ranges.clear(); + ranges.add(facetRangeModel); + response = query(query); + restClient.assertStatusCodeIs(HttpStatus.BAD_REQUEST).assertLastError() + .containsSummary(String.format(RestErrorModel.MANDATORY_PARAM, "gap")); + + facetRangeModel.setGap("100"); + } + + @Test(groups = { TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 }) + @TestRail(section = {TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 }, executionType = ExecutionType.REGRESSION, + description = "Check basic facet range search api") + public void searchWithRange()throws Exception + { + SearchRequest query = createQuery("A*"); + + RestRequestRangesModel facetRangeModel = new RestRequestRangesModel(); + facetRangeModel.setField("content.size"); + facetRangeModel.setStart("0"); + facetRangeModel.setEnd("500"); + facetRangeModel.setGap("200"); + List ranges = new ArrayList(); + ranges.add(facetRangeModel); + query.setRanges(ranges); + SearchResponse response = query(query); + response.assertThat().entriesListIsNotEmpty(); + response.getContext().assertThat().field("facets").isNotEmpty(); + RestGenericFacetResponseModel facetResponseModel = response.getContext().getFacets().get(0); + + RestGenericBucketModel bucket = facetResponseModel.getBuckets().get(0); + bucket.assertThat().field("label").is("0 - 200"); + bucket.assertThat().field("filterQuery").is("content.size:(0 TO 200)"); + Map metric = (Map) bucket.getMetrics().get(0).getValue(); + Assert.assertTrue(new Integer(metric.get("count")) > 4); + Map info = (Map) bucket.getBucketInfo(); + Assert.assertEquals(info.get("start"),"0"); + Assert.assertEquals(info.get("end"),"200"); + Assert.assertTrue(!info.get("count").isEmpty()); + + bucket = facetResponseModel.getBuckets().get(1); + bucket.assertThat().field("label").is("200 - 400"); + bucket.assertThat().field("filterQuery").is("content.size:(200 TO 400)"); + metric = (Map) bucket.getMetrics().get(0).getValue(); + Integer count = new Integer(metric.get("count")); + Assert.assertTrue(count >= 4); + info = (Map) bucket.getBucketInfo(); + Assert.assertEquals(info.get("start"),"200"); + Assert.assertEquals(info.get("end"),"400"); + + bucket = facetResponseModel.getBuckets().get(2); + bucket.assertThat().field("label").is("400 - 600"); + bucket.assertThat().field("filterQuery").is("content.size:(400 TO 600)"); + metric = (Map) bucket.getMetrics().get(0).getValue(); + Assert.assertTrue(new Integer(metric.get("count")) >= 7); + info = (Map) bucket.getBucketInfo(); + Assert.assertEquals(info.get("start"),"400"); + Assert.assertEquals(info.get("end"),"600"); + } + + @Test(groups = { TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 }) + @TestRail(section = {TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 }, executionType = ExecutionType.REGRESSION, + description = "Check date facet intervals search api") + public void searchWithRangeHardend()throws Exception + { + SearchRequest query = createQuery("A*"); + + RestRequestRangesModel facetRangeModel = new RestRequestRangesModel(); + facetRangeModel.setField("content.size"); + facetRangeModel.setStart("0"); + facetRangeModel.setEnd("500"); + facetRangeModel.setGap("200"); + facetRangeModel.setHardend(true); + List ranges = new ArrayList(); + ranges.add(facetRangeModel); + query.setRanges(ranges); + SearchResponse response = query(query); + response.assertThat().entriesListIsNotEmpty(); + response.getContext().assertThat().field("facets").isNotEmpty(); + RestGenericFacetResponseModel facetResponseModel = response.getContext().getFacets().get(0); + + RestGenericBucketModel bucket = facetResponseModel.getBuckets().get(0); + bucket.assertThat().field("label").is("0 - 200"); + bucket.assertThat().field("filterQuery").is("content.size:(0 TO 200)"); + Map metric = (Map) bucket.getMetrics().get(0).getValue(); + Assert.assertTrue(new Integer(metric.get("count")) >= 4); + Map info = (Map) bucket.getBucketInfo(); + Assert.assertEquals(info.get("start"),"0"); + Assert.assertEquals(info.get("end"),"200"); + Assert.assertTrue(!info.get("count").isEmpty()); + + bucket = facetResponseModel.getBuckets().get(1); + bucket.assertThat().field("label").is("200 - 400"); + bucket.assertThat().field("filterQuery").is("content.size:(200 TO 400)"); + info = (Map) bucket.getBucketInfo(); + Assert.assertEquals(info.get("start"),"200"); + Assert.assertEquals(info.get("end"),"400"); + metric = (Map) bucket.getMetrics().get(0).getValue(); + Assert.assertTrue(new Integer(metric.get("count")) >= 4); + Assert.assertTrue(!info.get("count").isEmpty()); + + bucket = facetResponseModel.getBuckets().get(2); + bucket.assertThat().field("label").is("400 - 500"); + bucket.assertThat().field("filterQuery").is("content.size:(400 TO 500)"); + metric = (Map) bucket.getMetrics().get(0).getValue(); + Assert.assertTrue(new Integer(metric.get("count")) >= 3); + info = (Map) bucket.getBucketInfo(); + Assert.assertEquals(info.get("start"),"400"); + Assert.assertEquals(info.get("end"),"500"); + Assert.assertTrue(!info.get("count").isEmpty()); + } + @Test(groups = { TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 }) + @TestRail(section = {TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 }, executionType = ExecutionType.REGRESSION, + description = "Check date facet intervals search api") + public void searchDateRange()throws Exception + { + SearchRequest query = createQuery("name:A*"); + + RestRequestRangesModel facetRangeModel = new RestRequestRangesModel(); + facetRangeModel.setField("created"); + facetRangeModel.setStart("2015-09-29T10:45:15.729Z"); + facetRangeModel.setEnd("2016-09-29T10:45:15.729Z"); + facetRangeModel.setGap("+280DAY"); + List ranges = new ArrayList(); + ranges.add(facetRangeModel); + query.setRanges(ranges); + SearchResponse response = query(query); + response.assertThat().entriesListIsNotEmpty(); + response.getContext().assertThat().field("facets").isNotEmpty(); + RestGenericFacetResponseModel facetResponseModel = response.getContext().getFacets().get(0); + + RestGenericBucketModel bucket = facetResponseModel.getBuckets().get(0); + bucket.assertThat().field("label").is("2015-09-29T10:45:15.729Z - 2016-07-05T10:45:15.729Z"); + bucket.assertThat().field("filterQuery").is("created:(2015-09-29T10:45:15.729Z TO 2016-07-05T10:45:15.729Z)"); + bucket.getMetrics().get(0).assertThat().field("value").is("{count=1}"); + Map info = (Map) bucket.getBucketInfo(); + Assert.assertEquals(info.get("start"),"2015-09-29T10:45:15.729Z"); + Assert.assertEquals(info.get("end"),"2016-07-05T10:45:15.729Z"); + Assert.assertEquals(info.get("count"),"1"); + + bucket = facetResponseModel.getBuckets().get(1); + bucket.assertThat().field("label").is("2016-07-05T10:45:15.729Z - 2017-04-11T10:45:15.729Z"); + bucket.assertThat().field("filterQuery").is("created:(2016-07-05T10:45:15.729Z TO 2017-04-11T10:45:15.729Z)"); + bucket.getMetrics().get(0).assertThat().field("value").is("{count=0}"); + info = (Map) bucket.getBucketInfo(); + Assert.assertEquals(info.get("start"),"2016-07-05T10:45:15.729Z"); + Assert.assertEquals(info.get("end"),"2017-04-11T10:45:15.729Z"); + Assert.assertEquals(info.get("count"),"0"); + } + + @Test(groups = { TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 }) + @TestRail(section = {TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 }, executionType = ExecutionType.REGRESSION, + description = "Check date facet intervals search api") + public void searchDateAndSizeRanges()throws Exception + { + SearchRequest query = createQuery("name:A*"); + List ranges = new ArrayList(); + RestRequestRangesModel facetRangeModel = new RestRequestRangesModel(); + facetRangeModel.setField("created"); + facetRangeModel.setStart("2015-09-29T10:45:15.729Z"); + facetRangeModel.setEnd("2016-09-29T10:45:15.729Z"); + facetRangeModel.setGap("+280DAY"); + ranges.add(facetRangeModel); + RestRequestRangesModel facetCountRangeModel = new RestRequestRangesModel(); + facetCountRangeModel.setField("content.size"); + facetCountRangeModel.setStart("0"); + facetCountRangeModel.setEnd("500"); + facetCountRangeModel.setGap("200"); + ranges.add(facetCountRangeModel); + query.setRanges(ranges); + } +} diff --git a/e2e-test/java/org/alfresco/rest/search/FacetedSearchTest.java b/e2e-test/java/org/alfresco/rest/search/FacetedSearchTest.java index ae8a7fcbd..c1770dc61 100644 --- a/e2e-test/java/org/alfresco/rest/search/FacetedSearchTest.java +++ b/e2e-test/java/org/alfresco/rest/search/FacetedSearchTest.java @@ -64,30 +64,32 @@ public class FacetedSearchTest extends AbstractSearchTest * "count": 61, * "skipCount": 0 * }, - * "context": { - * "consistency": {"lastTxId": 512}, - * "facetQueries": [ + * "facetsFields": [ + * { + * "type": "query", + * "label": "foo", + * "buckets": [ * { - * "count": 61, - * "label": "small", - * "filterQuery": "content.size:[o TO 102400]" + * "label": "small", + * "filterQuery": "content.size:[0 TO 102400]", + * "display": 1 * }, * { - * "count": 0, - * "label": "large", - * "filterQuery": "content.size:[o TO 102400]" + * "label": "large", + * "filterQuery": "content.size:[1048576 TO 16777216]", + * "metrics": [ + * { + * "type": "count", + * "value": { + * "count": 0 + * } + * } + * ] * }, - * { - * "count": 0, - * "label": "medium", - * "filterQuery": "content.size:[o TO 102400]" - * } - * ] - * } * }} * @throws Exception */ - public void searchWithFaceting() throws Exception + public void searchWithQueryFaceting() throws Exception { SearchRequest query = new SearchRequest(); RestRequestQueryModel queryReq = new RestRequestQueryModel(); @@ -154,7 +156,7 @@ public class FacetedSearchTest extends AbstractSearchTest * "context": { * "consistency": {"lastTxId": 512}, * //Added below as part of SEARCH-374 - * "facetsFields": [ + * "facets": [ * { "label": "foo", * "buckets": [ * { "label": "small", "count": 61, "filterQuery": "content.size:[o TO 102400]"}, @@ -168,7 +170,7 @@ public class FacetedSearchTest extends AbstractSearchTest * * @throws Exception */ - public void searchFacetGroup() throws Exception + public void searchQueryFacetingWithGroup() throws Exception { SearchRequest query = new SearchRequest(); RestRequestQueryModel queryReq = new RestRequestQueryModel(); @@ -191,13 +193,15 @@ public class FacetedSearchTest extends AbstractSearchTest //We don't expect to see the FacetQueries if group is being used. Assert.assertTrue(response.getContext().getFacetQueries() == null); //Validate the facet field structure is correct. - Assert.assertFalse(response.getContext().getFacetsFields().isEmpty()); - Assert.assertEquals(response.getContext().getFacetsFields().get(0).getLabel(), "foo"); - FacetFieldBucket bucket = response.getContext().getFacetsFields().get(0).getBuckets().get(0); + Assert.assertFalse(response.getContext().getFacets().isEmpty()); + Assert.assertEquals(response.getContext().getFacets().get(0).getLabel(), "foo"); + + RestGenericBucketModel bucket = response.getContext().getFacets().get(0).getBuckets().get(0); bucket.assertThat().field("label").isNotEmpty(); - bucket.assertThat().field("count").isNotEmpty(); + Assert.assertEquals( bucket.getMetrics().get(0).getType(), "count"); + Assert.assertNotEquals( bucket.getMetrics().get(0).getValue(), ""); bucket.assertThat().field("filterQuery").isNotEmpty(); - response.getContext().getFacetsFields().get(0).getBuckets().forEach(action -> { + response.getContext().getFacets().get(0).getBuckets().forEach(action -> { switch (action.getLabel()) { case "small": @@ -217,4 +221,43 @@ public class FacetedSearchTest extends AbstractSearchTest } + @Test + /** + * { + * "query": { + * "query": "*" + * }, + * "facetFields": { + * "facets": [{"field": "cm:mimetype"},{"field": "modifier"}] + * } + * } + */ + public void searchWithFactedFields() throws Exception + { + SearchRequest query = new SearchRequest(); + RestRequestQueryModel queryReq = new RestRequestQueryModel(); + queryReq.setQuery("*"); + query.setQuery(queryReq); + RestRequestFacetFieldsModel facetFields = new RestRequestFacetFieldsModel(); + Listfacets = new ArrayList(); + facets.add(new RestRequestFacetFieldModel("cm:mimetype")); + facets.add(new RestRequestFacetFieldModel("modifier")); + facetFields.setFacets(facets); + query.setFacetFields(facetFields); + SearchResponse response = query(query); + Assert.assertFalse(response.getContext().getFacetsFields().isEmpty()); + Assert.assertNull(response.getContext().getFacetQueries()); + Assert.assertNull(response.getContext().getFacets()); + RestResultBucketsModel model = response.getContext().getFacetsFields().get(0); + Assert.assertEquals(model.getLabel(), "modifier"); + + model.assertThat().field("label").is("modifier"); + FacetFieldBucket bucket1 = model.getBuckets().get(0); + bucket1.assertThat().field("label").is("System"); + bucket1.assertThat().field("display").is("System"); + bucket1.assertThat().field("filterQuery").is("modifier:System"); + bucket1.assertThat().field("count").is(684); + } + + } diff --git a/e2e-test/java/org/alfresco/rest/search/PivotFacetedSearchTest.java b/e2e-test/java/org/alfresco/rest/search/PivotFacetedSearchTest.java index 87f3f6e64..4f1a8ad09 100644 --- a/e2e-test/java/org/alfresco/rest/search/PivotFacetedSearchTest.java +++ b/e2e-test/java/org/alfresco/rest/search/PivotFacetedSearchTest.java @@ -18,18 +18,17 @@ */ package org.alfresco.rest.search; +import java.util.ArrayList; +import java.util.List; + import org.alfresco.rest.model.RestErrorModel; import org.alfresco.utility.model.TestGroup; import org.alfresco.utility.testrail.ExecutionType; import org.alfresco.utility.testrail.annotation.TestRail; import org.springframework.http.HttpStatus; import org.testng.Assert; -import org.testng.TestException; import org.testng.annotations.Test; -import java.util.ArrayList; -import java.util.List; - /** * Faceted search test. * @author Gethin James diff --git a/e2e-test/java/org/alfresco/rest/search/SearchTest.java b/e2e-test/java/org/alfresco/rest/search/SearchTest.java index 58f5a4199..5f038dfc6 100644 --- a/e2e-test/java/org/alfresco/rest/search/SearchTest.java +++ b/e2e-test/java/org/alfresco/rest/search/SearchTest.java @@ -24,6 +24,8 @@ import org.alfresco.utility.testrail.annotation.TestRail; import org.springframework.http.HttpStatus; import org.testng.annotations.Test; +import junit.framework.Assert; + /** * Search end point Public API test. * @author Michael Suzuki @@ -34,23 +36,14 @@ public class SearchTest extends AbstractSearchTest @Test(groups={TestGroup.SEARCH, TestGroup.REST_API}) public void searchOnIndexedData() throws Exception { - SearchResponse nodes = query("fox"); + SearchResponse nodes = query("ipsum"); restClient.assertStatusCodeIs(HttpStatus.OK); nodes.assertThat().entriesListIsNotEmpty(); SearchNodeModel entity = nodes.getEntryByIndex(0); entity.assertThat().field("search").contains("score"); entity.getSearch().assertThat().field("score").isNotEmpty(); - entity.assertThat().field("name").contains("pangram.txt"); - - nodes = query("car"); - restClient.assertStatusCodeIs(HttpStatus.OK); - entity = nodes.getEntryByIndex(0); - - nodes.assertThat().entriesListIsNotEmpty(); - entity.assertThat().field("search").contains("score"); - entity.getSearch().assertThat().field("score").isNotEmpty(); - entity.assertThat().field("name").contains("cars.txt"); + Assert.assertEquals("Project Overview.ppt",entity.getName()); } @Test(groups={TestGroup.SEARCH,TestGroup.REST_API})