Class FeaturesBBox
java.lang.Object
org.opengis.cite.ogcapifeatures10.conformance.CommonFixture
org.opengis.cite.ogcapifeatures10.conformance.CommonDataFixture
org.opengis.cite.ogcapifeatures10.conformance.core.collections.AbstractFeatures
org.opengis.cite.ogcapifeatures10.conformance.core.collections.FeaturesBBox
A.2.7. Features {root}/collections/{collectionId}/items - BoundingBox
- Author:
- Lyn Goltz
-
Nested Class Summary
Nested classes/interfaces inherited from class org.opengis.cite.ogcapifeatures10.conformance.core.collections.AbstractFeatures
AbstractFeatures.CollectionResponseKey, AbstractFeatures.ResponseData -
Field Summary
Fields inherited from class org.opengis.cite.ogcapifeatures10.conformance.core.collections.AbstractFeatures
collectionIdAndResponse, collections, iutFields inherited from class org.opengis.cite.ogcapifeatures10.conformance.CommonDataFixture
noOfCollectionsFields inherited from class org.opengis.cite.ogcapifeatures10.conformance.CommonFixture
requestLoggingFilter, responseLoggingFilter, rootUri -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidboundingBoxParameterDefinition(TestPoint testPoint) Abstract Test 14: /ats/core/fc-bbox-definition Test Purpose: Validate that the bounding box query parameters are constructed correctly.collectionItemUrisWithBboxes(org.testng.ITestContext testContext) collectionItemUrisWithBboxes.voidvalidateFeaturesResponse_GeometryInCRS84(Map<String, Object> collection, BBox bbox) Abstract Test 2, Test Method 1voidvalidateFeaturesResponse_NumberReturned(Map<String, Object> collection, BBox bbox) Abstract Test 22, Test Method 7 (Abstract Test 26)voidvalidateFeaturesWithBoundingBoxOperation(Map<String, Object> collection, BBox bbox) Abstract Test 13: /ats/core/fc-op Test Purpose: Validate that features can be identified and extracted from a Collection using query parameters.voidvalidateFeaturesWithBoundingBoxResponse(Map<String, Object> collection, BBox bbox) Abstract Test 15: /ats/core/fc-bbox-response Test Purpose: Validate that the bounding box query parameters are processed correctly.voidvalidateFeaturesWithBoundingBoxResponse_FeaturesProperty(Map<String, Object> collection, BBox bbox) Abstract Test 22, Test Method 2voidvalidateFeaturesWithBoundingBoxResponse_Links(Map<String, Object> collection, BBox bbox) Abstract Test 22, Test Method 4 (Abstract Test 23)voidvalidateFeaturesWithBoundingBoxResponse_NumberMatched(Map<String, Object> collection, BBox bbox) Abstract Test 22, Test Method 6 (Abstract Test 25)voidvalidateFeaturesWithBoundingBoxResponse_TimeStamp(Map<String, Object> collection, BBox bbox) Abstract Test 22, Test Method 5 (Abstract Test 24)voidvalidateFeaturesWithBoundingBoxResponse_TypeProperty(Map<String, Object> collection, BBox bbox) Abstract Test 22, Test Method 1Methods inherited from class org.opengis.cite.ogcapifeatures10.conformance.core.collections.AbstractFeatures
collectionPaths, isExplode, isRequired, retrieveRequiredInformationFromTestContext, validateFeaturesProperty, validateGeometriesInBBox, validateGeometriesInCrs84, validateLinks, validateNumberMatched, validateNumberReturned, validateTimeStamp, validateTypePropertyMethods inherited from class org.opengis.cite.ogcapifeatures10.conformance.CommonDataFixture
createListOfMediaTypesToSupportForFeatureCollectionsAndFeatures, createListOfMediaTypesToSupportForFeatureCollectionsAndFeatures, createListOfMediaTypesToSupportForOtherResources, getApiModel, noOfCollections, requirementClasses, retrieveApiModelMethods inherited from class org.opengis.cite.ogcapifeatures10.conformance.CommonFixture
clearMessages, getRequest, getResponse, init, initCommonFixture
-
Constructor Details
-
FeaturesBBox
public FeaturesBBox()
-
-
Method Details
-
collectionItemUrisWithBboxes
@DataProvider(name="collectionItemUrisWithBboxes") public Iterator<Object[]> collectionItemUrisWithBboxes(org.testng.ITestContext testContext) collectionItemUrisWithBboxes.
- Parameters:
testContext- aITestContextobject- Returns:
- a
Iteratorobject
-
boundingBoxParameterDefinition
Abstract Test 14: /ats/core/fc-bbox-definition Test Purpose: Validate that the bounding box query parameters are constructed correctly. Requirement: /req/core/fc-bbox-definition Test Method: Verify that the bbox query parameter complies with the following definition (using an OpenAPI Specification 3.0 fragment): name: bbox in: query required: false schema: type: array minItems: 4 maxItems: 6 items: type: number style: form explode: false Use a bounding box with four numbers in all requests: * Lower left corner, WGS 84 longitude * Lower left corner, WGS 84 latitude * Upper right corner, WGS 84 longitude * Upper right corner, WGS 84 latitude- Parameters:
testPoint- the testPoint under test, nevernull
-
validateFeaturesWithBoundingBoxOperation
Abstract Test 13: /ats/core/fc-op Test Purpose: Validate that features can be identified and extracted from a Collection using query parameters. Requirement: /req/core/fc-op Test Method 1. For every feature collection identified in Collections, issue an HTTP GET request to the URL /collections/{collectionId}/items where {collectionId} is the id property for a Collection described in the Collections content. 2. Validate that a document was returned with a status code 200. 3. Validate the contents of the returned document using test /ats/core/fc-response. Repeat these tests using the following parameter tests: Bounding Box: * Parameter /ats/core/fc-bbox-definition * Response /ats/core/fc-bbox-response- Parameters:
collection- the collection under test, nevernullbbox- bbox parameter to request, nevernull
-
validateFeaturesWithBoundingBoxResponse
public void validateFeaturesWithBoundingBoxResponse(Map<String, Object> collection, BBox bbox) throws org.locationtech.jts.io.ParseExceptionAbstract Test 15: /ats/core/fc-bbox-response Test Purpose: Validate that the bounding box query parameters are processed correctly. Requirement: /req/core/fc-bbox-response Test Method 1. Verify that only features that have a spatial geometry that intersects the bounding box are returned as part of the result set. 2. Verify that the bbox parameter matched all features in the collection that were not associated with a spatial geometry (this is only applicable for datasets that include features without a spatial geometry). 3. Verify that the coordinate reference system of the geometries is WGS 84 longitude/latitude ("http://www.opengis.net/def/crs/OGC/1.3/CRS84" or "http://www.opengis.net/def/crs/OGC/0/CRS84h") since no parameter bbox-crs was specified in the request.- Parameters:
collection- the collection under test, nevernullbbox- bbox parameter to request, nevernull- Throws:
org.locationtech.jts.io.ParseException- If the JSON cannot be parsed
-
validateFeaturesResponse_GeometryInCRS84
public void validateFeaturesResponse_GeometryInCRS84(Map<String, Object> collection, BBox bbox) throws org.locationtech.jts.io.ParseExceptionAbstract Test 2, Test Method 1Abstract Test 2: /ats/core/crs84 Test Purpose: Validate that all spatial geometries provided through the API are in the CRS84 spatial reference system unless otherwise requested by the client. Requirement: /req/core/crs84 Test Method 1. Do not specify a coordinate reference system in any request. All spatial data should be in the CRS84 reference system. 2. Validate retrieved spatial data using the CRS84 reference system.
- Parameters:
collection- the collection under test, nevernullbbox- bbox parameter to request, nevernull- Throws:
org.locationtech.jts.io.ParseException- if the geometry could not be parsed
-
validateFeaturesWithBoundingBoxResponse_TypeProperty
public void validateFeaturesWithBoundingBoxResponse_TypeProperty(Map<String, Object> collection, BBox bbox) Abstract Test 22, Test Method 1Abstract Test 22: /ats/core/fc-response Test Purpose: Validate that the Feature Collections complies with the require structure and contents. Requirement: /req/core/fc-response Test Method 1. Validate that the type property is present and has a value of FeatureCollection
- Parameters:
collection- the collection under test, nevernullbbox- bbox parameter to request, nevernull
-
validateFeaturesWithBoundingBoxResponse_FeaturesProperty
public void validateFeaturesWithBoundingBoxResponse_FeaturesProperty(Map<String, Object> collection, BBox bbox) Abstract Test 22, Test Method 2Abstract Test 22: /ats/core/fc-response Test Purpose: Validate that the Feature Collections complies with the require structure and contents. Requirement: /req/core/fc-response Test Method 2. Validate the features property is present and that it is populated with an array of feature items.
- Parameters:
collection- the collection under test, nevernullbbox- bbox parameter to request, nevernull
-
validateFeaturesWithBoundingBoxResponse_Links
Abstract Test 22, Test Method 4 (Abstract Test 23)Abstract Test 22: /ats/core/fc-response Test Purpose: Validate that the Feature Collections complies with the require structure and contents. Requirement: /req/core/fc-response Test Method 4. If the links property is present, validate that all entries comply with /ats/core/fc-links
Abstract Test 23: /ats/core/fc-links Test Purpose: Validate that the required links are included in the Collections document. Requirement: /req/core/fc-links, /req/core/fc-rel-type Test Method: Verify that the response document includes: 1. a link to this response document (relation: self), 2. a link to the response document in every other media type supported by the server (relation: alternate). Verify that all links include the rel and type link parameters.
- Parameters:
collection- the collection under test, nevernullbbox- bbox parameter to request, nevernull
-
validateFeaturesWithBoundingBoxResponse_TimeStamp
public void validateFeaturesWithBoundingBoxResponse_TimeStamp(Map<String, Object> collection, BBox bbox) Abstract Test 22, Test Method 5 (Abstract Test 24)Abstract Test 22: /ats/core/fc-response Test Purpose: Validate that the Feature Collections complies with the require structure and contents. Requirement: /req/core/fc-response Test Method 5. If the timeStamp property is present, validate that it complies with /ats/core/fc-timeStamp
Abstract Test 24: /ats/core/fc-timeStamp Test Purpose: Validate the timeStamp parameter returned with a Features response Requirement: /req/core/fc-timeStamp Test Method: Validate that the timeStamp value is set to the time when the response was generated.
- Parameters:
collection- the collection under test, nevernullbbox- bbox parameter to request, nevernull
-
validateFeaturesWithBoundingBoxResponse_NumberMatched
public void validateFeaturesWithBoundingBoxResponse_NumberMatched(Map<String, Object> collection, BBox bbox) throws URISyntaxExceptionAbstract Test 22, Test Method 6 (Abstract Test 25)Abstract Test 22: /ats/core/fc-response Test Purpose: Validate that the Feature Collections complies with the require structure and contents. Requirement: /req/core/fc-response Test Method 6. If the numberMatched property is present, validate that it complies with /ats/core/fc-numberMatched
Abstract Test 25: /ats/core/fc-numberMatched Test Purpose: Validate the numberMatched parameter returned with a Features response Requirement: /req/core/fc-numberMatched Test Method: Validate that the value of the numberMatched parameter is identical to the number of features in the feature collections that match the selection parameters like bbox, datetime or additional filter parameters.
- Parameters:
collection- the collection under test, nevernullbbox- bbox parameter to request, nevernull- Throws:
URISyntaxException- if the creation of a uri fails
-
validateFeaturesResponse_NumberReturned
Abstract Test 22, Test Method 7 (Abstract Test 26)Abstract Test 22: /ats/core/fc-response Test Purpose: Validate that the Feature Collections complies with the require structure and contents. Requirement: /req/core/fc-response Test Method 7. If the numberReturned property is present, validate that it complies with /ats/core/fc-numberReturned
Abstract Test 26: /ats/core/fc-numberReturned Test Purpose: Validate the numberReturned parameter returned with a Features response Requirement: /req/core/fc-numberReturned Test Method: Validate that the numberReturned value is identical to the number of features in the response.
- Parameters:
collection- the collection under test, nevernullbbox- bbox parameter to request, nevernull
-