org.opengis.cite.ogcapifeatures10.collections

## Class FeaturesErrorConditions

- java.lang.Object
- - org.opengis.cite.ogcapifeatures10.CommonFixture
  - - org.opengis.cite.ogcapifeatures10.CommonDataFixture
    - - org.opengis.cite.ogcapifeatures10.collections.AbstractFeatures
      - - org.opengis.cite.ogcapifeatures10.collections.FeaturesErrorConditions

-     public class FeaturesErrorConditions
      extends AbstractFeatures

  A.2.7. Features {root}/collections/{collectionId}/items - Error Conditions
  Author:
    Lyn Goltz

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.opengis.cite.ogcapifeatures10.collections.AbstractFeatures

      `AbstractFeatures.CollectionResponseKey, AbstractFeatures.ResponseData`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `INVALID_QUERY_PARAM_VALUE`
    `static String` | `UNKNOWN_QUERY_PARAM`

    - ### Fields inherited from class org.opengis.cite.ogcapifeatures10.collections.AbstractFeatures

      `collectionIdAndResponse, collections, iut`

    - ### Fields inherited from class org.opengis.cite.ogcapifeatures10.CommonDataFixture

      `noOfCollections`

    - ### Fields inherited from class org.opengis.cite.ogcapifeatures10.CommonFixture

      `requestLoggingFilter, responseLoggingFilter, rootUri`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `FeaturesErrorConditions()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Iterator<Object[]>` | `collectionItemUris(org.testng.ITestContext testContext)`
    `void` | `validateFeaturesOperation_QueryParamInvalid(Map<String,Object> collection)` Abstract Test 13: /ats/core/fc-op Test Purpose: Validate that features can be identified and extracted from a Collection using query parameters.
    `void` | `validateFeaturesOperation_QueryParamUnkown(Map<String,Object> collection)` Abstract Test 13: /ats/core/fc-op Test Purpose: Validate that features can be identified and extracted from a Collection using query parameters.

    - ### Methods inherited from class org.opengis.cite.ogcapifeatures10.collections.AbstractFeatures

      `collectionPaths, findFeaturesUrlForGeoJson, isExplode, isRequired, retrieveRequiredInformationFromTestContext, validateFeaturesProperty, validateLinks, validateNumberMatched, validateNumberReturned, validateTimeStamp, validateTypeProperty`

    - ### Methods inherited from class org.opengis.cite.ogcapifeatures10.CommonDataFixture

      `createListOfMediaTypesToSupportForFeatureCollectionsAndFeatures, createListOfMediaTypesToSupportForFeatureCollectionsAndFeatures, createListOfMediaTypesToSupportForOtherResources, getApiModel, noOfCollections, requirementClasses, retrieveApiModel`

    - ### Methods inherited from class org.opengis.cite.ogcapifeatures10.CommonFixture

      `clearMessages, getRequest, getResponse, init, initCommonFixture`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### INVALID_QUERY_PARAM_VALUE

          public static final String INVALID_QUERY_PARAM_VALUE

      See Also:
        Constant Field Values

    - #### UNKNOWN_QUERY_PARAM

          public static final String UNKNOWN_QUERY_PARAM

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### FeaturesErrorConditions

          public FeaturesErrorConditions()

  - ### Method Detail

    - #### collectionItemUris

          public Iterator<Object[]> collectionItemUris(org.testng.ITestContext testContext)

    - #### validateFeaturesOperation_QueryParamInvalid

          public void validateFeaturesOperation_QueryParamInvalid(Map<String,Object> collection)

           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:
           Error conditions:
            * Query Invalid /ats/core/query-param-invalid
            * Query Unknown /ats/core/query-param-unknown

           Abstract Test 20: /ats/core/query-param-invalid
           Test Purpose: Validate that the API correctly deals with invalid query parameters.
           Requirement: /req/core/query-param-invalid

           Test Method
             1. Enter an HTTP request with an invalid query parameter.
             2. Verify that the API returns the status code 400.

      Parameters:
        `collection` - the collection under test, never `null`

    - #### validateFeaturesOperation_QueryParamUnkown

          public void validateFeaturesOperation_QueryParamUnkown(Map<String,Object> collection)

           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:
           Error conditions:
            * Query Invalid /ats/core/query-param-invalid
            * Query Unknown /ats/core/query-param-unknown

           Abstract Test 21: /ats/core/query-param-unknown
           Test Purpose: Validate that the API correctly deals with unknown query parameters.
           Requirement: /req/core/query-param-unknown

           Test Method
             1. Enter an HTTP request with an query parameter that is not specified in the API definition.
             2. Verify that the API returns the status code 400.

      Parameters:
        `collection` - the collection under test, never `null`

Copyright © 2020 Open Geospatial Consortium. All rights reserved.