From b7018b4313d604c54188f08e69de688944f53f54 Mon Sep 17 00:00:00 2001 From: Panagiotis Vretanos Date: Tue, 18 Jul 2023 13:12:21 -0400 Subject: [PATCH 1/2] Editorial changes to fix metanorma errors. --- core/abstract_tests/ATS_class_job-list.adoc | 9 +-- .../ATS_process-execute-callback.adoc | 32 ++++------- .../core/ATS_api-definition-op.adoc | 28 ++++----- .../core/ATS_api-definition-success.adoc | 22 +++---- .../core/ATS_conformance-op.adoc | 27 ++++----- .../core/ATS_conformance-success.adoc | 32 ++++------- core/abstract_tests/core/ATS_http.adoc | 21 +++---- .../core/ATS_job-exception-no-such-job.adoc | 35 +++++------- core/abstract_tests/core/ATS_job-op.adoc | 27 ++++----- .../core/ATS_job-result-op.adoc | 22 +++---- ...ATS_job-results-exception-no-such-job.adoc | 37 +++++------- ...b-results-exception-results-not-ready.adoc | 43 +++++--------- .../core/ATS_job-results-failed.adoc | 47 +++++---------- .../core/ATS_job-results-op.adoc | 32 ++++------- .../ATS_job-results-param-outputs-empty.adoc | 12 ++-- .../ATS_job-results-param-outputs-omit.adoc | 15 +++-- ...TS_job-results-param-outputs-response.adoc | 15 +++-- .../core/ATS_job-results-param-outputs.adoc | 20 +++---- .../ATS_job-results-success-async-many.adoc | 28 ++++----- .../ATS_job-results-success-async-one.adoc | 33 ++++------- .../core/ATS_job-results-success-sync.adoc | 37 ++++-------- core/abstract_tests/core/ATS_job-success.adoc | 26 ++++----- .../core/ATS_landingpage-op.adoc | 22 +++---- .../core/ATS_landingpage-success.adoc | 46 +++++---------- .../core/ATS_process-description-op.adoc | 19 +++---- .../core/ATS_process-description-success.adoc | 22 +++---- ...ATS_process-exception-no-such-process.adoc | 35 +++++------- ...S_process-execute-auto-execution-mode.adoc | 39 ++++--------- ...rocess-execute-default-execution-mode.adoc | 34 ++++------- .../ATS_process-execute-default-outputs.adoc | 34 ++++------- .../core/ATS_process-execute-input-array.adoc | 29 +++------- ...ATS_process-execute-input-inline-bbox.adoc | 29 +++------- ...S_process-execute-input-inline-binary.adoc | 29 +++------- ...TS_process-execute-input-inline-mixed.adoc | 29 +++------- ...S_process-execute-input-inline-object.adoc | 29 +++------- .../ATS_process-execute-input-validation.adoc | 40 ++++--------- .../core/ATS_process-execute-inputs.adoc | 27 ++++----- .../core/ATS_process-execute-op.adoc | 25 +++----- .../core/ATS_process-execute-request.adoc | 12 ++-- .../ATS_process-execute-success-async.adoc | 25 +++----- ...rocess-execute-success-sync-many-json.adoc | 28 ++++----- ...cute-success-sync-one-default-content.adoc | 33 ++++------- .../ATS_process-execute-success-sync-one.adoc | 33 ++++------- .../core/ATS_process-list-limit-def.adoc | 19 +++---- .../core/ATS_process-list-limit-response.adoc | 32 ++++------- .../core/ATS_process-list-links.adoc | 27 ++++----- .../core/ATS_process-list-op.adoc | 22 +++---- .../core/ATS_process-list-success.adoc | 26 ++++----- .../abstract_tests/core/ATS_test-process.adoc | 13 ++++- .../dismiss/ATS_job-dismiss-op.adoc | 28 ++++----- .../dismiss/ATS_job-dismiss-success.adoc | 26 +++------ core/abstract_tests/html/ATS_content.adoc | 32 ++++------- core/abstract_tests/html/ATS_definition.adoc | 15 +++-- .../job-list/ATS_datetime-def.adoc | 15 +++-- .../job-list/ATS_datetime-response.adoc | 28 ++++----- .../job-list/ATS_duration-def.adoc | 23 +++----- .../job-list/ATS_duration-response.adoc | 57 ++++++------------- ...S_jl-limit-def.adoc => ATS_limit-def.adoc} | 0 ...-response.adoc => ATS_limit-response.adoc} | 0 .../{ATS_jl-links.adoc => ATS_links.adoc} | 0 core/abstract_tests/job-list/ATS_op.adoc | 23 +++----- .../job-list/ATS_processid-def.adoc | 15 +++-- .../job-list/ATS_processid-mandatory.adoc | 23 +++----- .../job-list/ATS_processid-response.adoc | 28 ++++----- .../job-list/ATS_status-def.adoc | 15 +++-- .../job-list/ATS_status-response.adoc | 28 ++++----- core/abstract_tests/job-list/ATS_success.adoc | 20 +++---- .../abstract_tests/job-list/ATS_type-def.adoc | 15 +++-- .../job-list/ATS_type-response.adoc | 27 ++++----- core/abstract_tests/json/ATS_definition.adoc | 19 +++---- .../oas30/ATS_completeness.adoc | 15 +++-- .../oas30/ATS_definition-1.adoc | 23 +++----- .../oas30/ATS_definition-2.adoc | 15 +++-- .../oas30/ATS_exception-codes.adoc | 15 +++-- core/abstract_tests/oas30/ATS_oas-impl.adoc | 23 +++----- core/abstract_tests/oas30/ATS_security.adoc | 23 +++----- .../ATS_input-def.adoc | 15 +++-- .../ATS_input-mixed-type.adoc | 28 ++++----- .../ATS_inputs-def.adoc | 23 +++----- .../ATS_json-encoding.adoc | 23 +++----- .../ATS_output-def.adoc | 11 ++-- .../ATS_output-mixed-type.adoc | 28 ++++----- .../ATS_outputs-def.adoc | 23 +++----- 83 files changed, 755 insertions(+), 1305 deletions(-) rename core/abstract_tests/job-list/{ATS_jl-limit-def.adoc => ATS_limit-def.adoc} (100%) rename core/abstract_tests/job-list/{ATS_jl-limit-response.adoc => ATS_limit-response.adoc} (100%) rename core/abstract_tests/job-list/{ATS_jl-links.adoc => ATS_links.adoc} (100%) diff --git a/core/abstract_tests/ATS_class_job-list.adoc b/core/abstract_tests/ATS_class_job-list.adoc index 7f79fa16..813f466c 100644 --- a/core/abstract_tests/ATS_class_job-list.adoc +++ b/core/abstract_tests/ATS_class_job-list.adoc @@ -30,11 +30,12 @@ include::job-list/ATS_duration-def.adoc[] include::job-list/ATS_duration-response.adoc[] -include::job-list/ATS_jl-limit-def.adoc[] +include::job-list/ATS_limit-def.adoc[] -include::job-list/ATS_jl-limit-response.adoc[] +include::job-list/ATS_limit-response.adoc[] + +include::job-list/ATS_links.adoc[] -include::job-list/ATS_success.adoc[] NOTE: A job list may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the against that schema. All supported formats should be exercised. @@ -47,4 +48,4 @@ NOTE: A job list may be retrieved in a number of different formats. The followin |JSON |link:http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/jobList.yaml[jobList.yaml] |<> |=== -include::job-list/ATS_jl-links.adoc[] +include::job-list/ATS_success.adoc[] diff --git a/core/abstract_tests/callback/ATS_process-execute-callback.adoc b/core/abstract_tests/callback/ATS_process-execute-callback.adoc index fa16ce7a..cf035509 100644 --- a/core/abstract_tests/callback/ATS_process-execute-callback.adoc +++ b/core/abstract_tests/callback/ATS_process-execute-callback.adoc @@ -1,30 +1,20 @@ -[[ats_callback_job-callback]][abstract_test] +[[ats_callback_job-callback]] + +[abstract_test] ==== [%metadata] -label:: /conf/callback/job-callback -subject:: <> +identifier:: /conf/callback/job-callback +target:: <> test-purpose:: Validate the passing of a subscriber-URL in an execute request. - -[.component,class=test method] -===== -[.component,class=step] --- -Configure a URL endpoint to accept message body from the server. +test-method:: ++ -- +1. Configure a URL endpoint to accept message body from the server. -[.component,class=step] --- -Create an asynchronous execute request that includes the optional `subscriber` key (see https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/execute.yaml[execute.yaml]. --- +2. Create an asynchronous execute request that includes the optional `subscriber` key (see https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/execute.yaml[execute.yaml]. -[.component,class=step] --- -Execute the asynchronous job using test <>. --- +3. Execute the asynchronous job using test <>. -[.component,class=step] --- -Validate the job results are received by the specified callback URL. +4. Validate the job results are received by the specified callback URL. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_api-definition-op.adoc b/core/abstract_tests/core/ATS_api-definition-op.adoc index 4b98e7b1..1663ed02 100644 --- a/core/abstract_tests/core/ATS_api-definition-op.adoc +++ b/core/abstract_tests/core/ATS_api-definition-op.adoc @@ -1,25 +1,17 @@ -[[ats_core_api-definition-op]][abstract_test] +[[ats_core_api-definition-op]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/api-definition-op -subject:: <> +identifier:: /conf/core/api-definition-op +target:: <> test-purpose:: Validate that the API Definition document can be retrieved from the expected location. +test-method:: ++ +1. Construct a path for the API Definition document that ends with `/api`. -[.component,class=test method] -===== -[.component,class=step] --- -Construct a path for the API Definition document that ends with `/api`. --- +2. Issue a HTTP GET request on that path -[.component,class=step] --- -Issue a HTTP GET request on that path --- - -[.component,class=step] --- -Validate the contents of the returned document using test <>. +3. Validate the contents of the returned document using test <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_api-definition-success.adoc b/core/abstract_tests/core/ATS_api-definition-success.adoc index 693644c0..e320fef4 100644 --- a/core/abstract_tests/core/ATS_api-definition-success.adoc +++ b/core/abstract_tests/core/ATS_api-definition-success.adoc @@ -1,20 +1,16 @@ -[[ats_core_api-definition-success]][abstract_test] +[[ats_core_api-definition-success]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/api-definition-success -subject:: <> +identifier:: /conf/core/api-definition-success +target:: <> test-purpose:: Validate that the API Definition complies with the required structure and contents. - -[.component,class=test method] -===== -[.component,class=step] --- -Validate that a document was returned with a status code 200 +test-method:: ++ -- +1. Validate that a document was returned with a status code 200 -[.component,class=step] --- -Validate the API Definition document against an appropriate schema document. +2. Validate the API Definition document against an appropriate schema document. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_conformance-op.adoc b/core/abstract_tests/core/ATS_conformance-op.adoc index db923d28..bcb351d3 100644 --- a/core/abstract_tests/core/ATS_conformance-op.adoc +++ b/core/abstract_tests/core/ATS_conformance-op.adoc @@ -1,25 +1,18 @@ -[[ats_core_conformance-op]][abstract_test] +[[ats_core_conformance-op]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/conformance-op -subject:: <> +identifier:: /conf/core/conformance-op +target:: <> test-purpose:: Validate that a Conformance Declaration can be retrieved from the expected location. - -[.component,class=test method] -===== -[.component,class=step] --- -Construct a path for each "rel=http://www.opengis.net/def/rel/ogc/1.0/conformance" link on the landing page as well as for the {root}/conformance path. +test-method:: ++ -- +1. Construct a path for each "rel=http://www.opengis.net/def/rel/ogc/1.0/conformance" link on the landing page as well as for the {root}/conformance path. -[.component,class=step] --- -Issue an HTTP GET request on each path --- +2. Issue an HTTP GET request on each path -[.component,class=step] --- -Validate the contents of the returned document using test <>. +3. Validate the contents of the returned document using test <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_conformance-success.adoc b/core/abstract_tests/core/ATS_conformance-success.adoc index 1f40390e..d2133274 100644 --- a/core/abstract_tests/core/ATS_conformance-success.adoc +++ b/core/abstract_tests/core/ATS_conformance-success.adoc @@ -1,30 +1,20 @@ -[[ats_core_conformance-success]][abstract_test] +[[ats_core_conformance-success]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/conformance-success -subject:: <> +identifier:: /conf/core/conformance-success +target:: <> test-purpose:: Validate that the Conformance Declaration response complies with the required structure and contents. - -[.component,class=test method] -===== -[.component,class=step] --- -Validate that a document was returned with an HTTP status code of 200. +test-method:: ++ -- +1.Validate that a document was returned with an HTTP status code of 200. -[.component,class=step] --- -Validate the response document against OpenAPI 3.0 schema link: http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/confClasses.yaml[confClasses.yaml] --- +2. Validate the response document against OpenAPI 3.0 schema link: http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/confClasses.yaml[confClasses.yaml] -[.component,class=step] --- -Validate that the document includes the conformance class "http://www.opengis.net/spec/ogcapi-processes-1/1.0/conf/core" --- +3. Validate that the document includes the conformance class "http://www.opengis.net/spec/ogcapi-processes-1/1.0/conf/core" -[.component,class=step] --- -Validate that the document list all OGC API conformance classes that the API implements. +4. Validate that the document list all OGC API conformance classes that the API implements. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_http.adoc b/core/abstract_tests/core/ATS_http.adoc index 061dbcf5..1a8a2c94 100644 --- a/core/abstract_tests/core/ATS_http.adoc +++ b/core/abstract_tests/core/ATS_http.adoc @@ -1,20 +1,15 @@ -[[ats_core_http]][abstract_test] +[[ats_core_http]] +[abstract_test] ==== [%metadata] -label:: /conf/core/http -subject:: <> +identifier:: /conf/core/http +target:: <> test-purpose:: Validate that the resource paths advertised through the API conform with HTTP 1.1 and, where appropriate, TLS. - -[.component,class=test method] -===== -[.component,class=step] --- -All compliance tests SHALL be configured to use the HTTP 1.1 protocol exclusively. +test-method:: ++ -- +1. All compliance tests SHALL be configured to use the HTTP 1.1 protocol exclusively. -[.component,class=step] --- -For APIs which support HTTPS, all compliance tests SHALL be configured to use <> (RFC 2818) with their HTTP 1.1 protocol. +2. For APIs which support HTTPS, all compliance tests SHALL be configured to use <> (RFC 2818) with their HTTP 1.1 protocol. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_job-exception-no-such-job.adoc b/core/abstract_tests/core/ATS_job-exception-no-such-job.adoc index eec483de..38042962 100644 --- a/core/abstract_tests/core/ATS_job-exception-no-such-job.adoc +++ b/core/abstract_tests/core/ATS_job-exception-no-such-job.adoc @@ -1,35 +1,26 @@ -[[ats_core_job-exception-no-such-job]][abstract_test] +[[ats_core_job-exception-no-such-job]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-exception-no-such-job -subject:: <> +identifier:: /conf/core/job-exception-no-such-job +target:: <> test-purpose:: Validate that an invalid job identifier is handled correctly. - -[.component,class=test method] -===== -[.component,class=step] --- -Issue an HTTP GET request to the URL that includes the `{jobID}` as a path element using a non-existent job identifier. +test-method:: ++ -- +1. Issue an HTTP GET request to the URL that includes the `{jobID}` as a path element using a non-existent job identifier. -[.component,class=step] --- -Validate that the document was returned with a 404. --- +2. Validate that the document was returned with a 404. -[.component,class=step] --- -Validate that the document contains the exception type "http://www.opengis.net/def/exceptions/ogcapi-processes-1/1.0/no-such-job". --- +3. Validate that the document contains the exception type "http://www.opengis.net/def/exceptions/ogcapi-processes-1/1.0/no-such-job". -[.component,class=step] +4. Validate the document for all supported media types using the resources and tests identified in <> -- -Validate the document for all supported media types using the resources and tests identified in <> --- -===== -An exception response caused by the use of an invalid job identifier may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the response. All supported formats should be exercised. ==== +NOTE: An exception response caused by the use of an invalid job identifier may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the response. All supported formats should be exercised. + [[job-exception-no-such-job]] .Schema and Tests for the Job Result for Non-existent Job [cols="3",options="header"] diff --git a/core/abstract_tests/core/ATS_job-op.adoc b/core/abstract_tests/core/ATS_job-op.adoc index d055adc4..405f70cd 100644 --- a/core/abstract_tests/core/ATS_job-op.adoc +++ b/core/abstract_tests/core/ATS_job-op.adoc @@ -1,25 +1,18 @@ -[[ats_core_job-op]][abstract_test] +[[ats_core_job-op]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-op -subject:: <> +identifier:: /conf/core/job-op +target:: <> test-purpose:: Validate that the status info of a job can be retrieved. - -[.component,class=test method] -===== -[.component,class=step] --- -Create a job as per <> and note the {jobID} assigned to the job. +test-method:: ++ -- +1. Create a job as per <> and note the {jobID} assigned to the job. -[.component,class=step] --- -Issue an HTTP GET request to the URL '/jobs/{jobID}'. --- +2. Issue an HTTP GET request to the URL '/jobs/{jobID}'. -[.component,class=step] --- -Validate the contents of the returned document using the test <>. +3. Validate the contents of the returned document using the test <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_job-result-op.adoc b/core/abstract_tests/core/ATS_job-result-op.adoc index 413c9f43..88cc4404 100644 --- a/core/abstract_tests/core/ATS_job-result-op.adoc +++ b/core/abstract_tests/core/ATS_job-result-op.adoc @@ -1,20 +1,16 @@ -[[ats_core_job-result]][abstract_test] +[[ats_core_job-result]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-result -subject:: <> +identifier:: /conf/core/job-result +target:: <> test-purpose:: Validate that each process output with identifier `{outputID}` can be retrived from the `/jobs/{jobID}/results/{outputID}` endpoint. - -[.component,class=test method] -===== -[.component,class=step] --- -Negotiate asynchronous process execution as per test <>. +test-method:: ++ -- +1. Negotiate asynchronous process execution as per test <>. -[.component,class=step] --- -Validate that each process output can be retrived as per requirement <>. +2. Validate that each process output can be retrived as per requirement <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_job-results-exception-no-such-job.adoc b/core/abstract_tests/core/ATS_job-results-exception-no-such-job.adoc index fbee475e..3911dddf 100644 --- a/core/abstract_tests/core/ATS_job-results-exception-no-such-job.adoc +++ b/core/abstract_tests/core/ATS_job-results-exception-no-such-job.adoc @@ -1,34 +1,25 @@ -[[ats_core_job-results-exception-no-such-job]][abstract_test] +[[ats_core_job-results-exception-no-such-job]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-results-failed -subject:: <> +identifier:: /conf/core/job-results-failed +target:: <> test-purpose:: Validate that the job results retrieved using an invalid job identifier complies with the require structure and contents. - -[.component,class=test method] -===== -[.component,class=step] --- -Issue an HTTP GET request to the URL '/jobs/{jobID}/results' using an invalid {jobID}. +test-method:: ++ -- +1. Issue an HTTP GET request to the URL '/jobs/{jobID}/results' using an invalid {jobID}. -[.component,class=step] --- -Validate that the document was returned with a 404. --- +2. Validate that the document was returned with a 404. -[.component,class=step] --- -Validate that the document contains the exception type "http://www.opengis.net/def/exceptions/ogcapi-processes-1/1.0/no-such-job". --- +3. Validate that the document contains the exception type "http://www.opengis.net/def/exceptions/ogcapi-processes-1/1.0/no-such-job". -[.component,class=step] --- -Validate the document for all supported media types using the resources and tests identified in <> +4. Validate the document for all supported media types using the resources and tests identified in <> -- -===== +==== -The job results page for a job may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the job results for a non-existent job against that schema. All supported formats should be exercised. +NOTE: The job results page for a job may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the job results for a non-existent job against that schema. All supported formats should be exercised. [[job-results-exception-no-such-job]] .Schema and Tests for the Job Result for Non-existent Job @@ -38,5 +29,3 @@ The job results page for a job may be retrieved in a number of different formats |HTML |link:http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/exception.yaml[exception.yaml] |<> |JSON |link:http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/exception.yaml[exception.yaml] |<> |=== - -==== diff --git a/core/abstract_tests/core/ATS_job-results-exception-results-not-ready.adoc b/core/abstract_tests/core/ATS_job-results-exception-results-not-ready.adoc index f7799aa9..e0f77d32 100644 --- a/core/abstract_tests/core/ATS_job-results-exception-results-not-ready.adoc +++ b/core/abstract_tests/core/ATS_job-results-exception-results-not-ready.adoc @@ -1,40 +1,27 @@ -[[ats_core_job-results-exception-results-not-ready]][abstract_test] +[[ats_core_job-results-exception-results-not-ready]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-results-exception-results-not-ready -subject:: <> +identifier:: /conf/core/job-results-exception-results-not-ready +target:: <> test-purpose:: Validate that the job results retrieved for an incomplete job complies with the require structure and contents. - -[.component,class=test method] -===== - -[.component,class=step] --- -Create a job as per <> and note the {jobID} assigned to the job; ensure that the job is long-running. +test-method:: ++ -- +1. Create a job as per <> and note the {jobID} assigned to the job; ensure that the job is long-running. -[.component,class=step] --- -Issue an HTTP GET request to the URL '/jobs/{jobID}/results' before the job completes execution. --- +2. Issue an HTTP GET request to the URL '/jobs/{jobID}/results' before the job completes execution. -[.component,class=step] --- -Validate that the document was returned with a 404. --- +3. Validate that the document was returned with a 404. -[.component,class=step] --- -Validate that the document contains the exception `type` "http://www.opengis.net/def/exceptions/ogcapi-processes-1/1.0/result-not-ready". --- +4. Validate that the document contains the exception `type` "http://www.opengis.net/def/exceptions/ogcapi-processes-1/1.0/result-not-ready". -[.component,class=step] --- -Validate the document for all supported media types using the resources and tests identified in <> +5. Validate the document for all supported media types using the resources and tests identified in <> -- -===== +==== -The job results page for a job may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the job results for an incomplete job against that schema. All supported formats should be exercised. +NOTE: The job results page for a job may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the job results for an incomplete job against that schema. All supported formats should be exercised. [[job-results-exception-results-not-ready]] .Schema and Tests for the Job Result for an Incomplete Job @@ -44,5 +31,3 @@ The job results page for a job may be retrieved in a number of different formats |HTML |link:http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/exception.yaml[exception.yaml] |<> |JSON |link:http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/exception.yaml[exception.yaml] |<> |=== - -==== diff --git a/core/abstract_tests/core/ATS_job-results-failed.adoc b/core/abstract_tests/core/ATS_job-results-failed.adoc index a42a0537..1b1671dd 100644 --- a/core/abstract_tests/core/ATS_job-results-failed.adoc +++ b/core/abstract_tests/core/ATS_job-results-failed.adoc @@ -1,44 +1,29 @@ -[[ats_core_job-results-failed]][abstract_test] +[[ats_core_job-results-failed]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-results-failed -subject:: <> +identifier:: /conf/core/job-results-failed +target:: <> test-purpose:: Validate that the job results for a failed job complies with the require structure and contents. - -[.component,class=test method] -===== -[.component,class=step] --- -Create a job as per <> but arrange a priori that the job will fail; note the {jobID} assigned to the job. +test-method:: ++ -- +1. Create a job as per <> but arrange a priori that the job will fail; note the {jobID} assigned to the job. -[.component,class=step] --- -Ensure that the failed job will not result in an HTTP error code of 404. --- +2. Ensure that the failed job will not result in an HTTP error code of 404. -[.component,class=step] --- -Issue an HTTP GET request to the URL '/jobs/{jobID}/results'. --- +3. Issue an HTTP GET request to the URL '/jobs/{jobID}/results'. -[.component,class=step] --- -Validate that the document was returned with a HTTP error code (4XX or 5XX). --- +4. Validate that the document was returned with a HTTP error code (4XX or 5XX). -[.component,class=step] --- -Validate that the document contains an exception `type` that corresponds to the reason the job failed (e.g. InvalidParameterValue for invalid input data). --- +5. Validate that the document contains an exception `type` that corresponds to the reason the job failed (e.g. InvalidParameterValue for invalid input data). -[.component,class=step] --- -Validate the document for all supported media types using the resources and tests identified in <> +6. Validate the document for all supported media types using the resources and tests identified in <> -- -===== +==== -The job results page for a job may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the job results for a failed job against that schema. All supported formats should be exercised. +NOTE: The job results page for a job may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the job results for a failed job against that schema. All supported formats should be exercised. [[job-results-failed-schema]] .Schema and Tests for the Job Result for a Failed Job @@ -47,6 +32,4 @@ The job results page for a job may be retrieved in a number of different formats |Format |Schema Document |Test ID |HTML |link:http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/exception.yaml[exception.yaml] |<> |JSON |link:http://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/exception.yaml[exception.yaml] |<> -==== - |=== diff --git a/core/abstract_tests/core/ATS_job-results-op.adoc b/core/abstract_tests/core/ATS_job-results-op.adoc index e25c0a0f..10276b52 100644 --- a/core/abstract_tests/core/ATS_job-results-op.adoc +++ b/core/abstract_tests/core/ATS_job-results-op.adoc @@ -1,30 +1,20 @@ -[[ats_core_job-results-op]][abstract_test] +[[ats_core_job-results-op]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-results -subject:: <> +identifier:: /conf/core/job-results +target:: <> test-purpose:: Validate that the results of a job can be retrieved. - -[.component,class=test method] -===== -[.component,class=step] --- -Create a job as per <> and note the {jobID} assigned to the job. +test-method:: ++ -- +1. Create a job as per <> and note the {jobID} assigned to the job. -[.component,class=step] --- -Issue an HTTP GET request to the URL '/jobs/{jobID}/results'. --- +2. Issue an HTTP GET request to the URL '/jobs/{jobID}/results'. -[.component,class=step] --- -Validate that the document was returned with a status code 200. --- +3. Validate that the document was returned with a status code 200. -[.component,class=step] --- -Depending on the number of outputs requested, the negotiated content type of the response and any client preferences, validate the contents of the returned document using the tests <>, <> or <>. +4. Depending on the number of outputs requested, the negotiated content type of the response and any client preferences, validate the contents of the returned document using the tests <>, <> or <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_job-results-param-outputs-empty.adoc b/core/abstract_tests/core/ATS_job-results-param-outputs-empty.adoc index 06635957..ac1ab97a 100644 --- a/core/abstract_tests/core/ATS_job-results-param-outputs-empty.adoc +++ b/core/abstract_tests/core/ATS_job-results-param-outputs-empty.adoc @@ -1,16 +1,14 @@ [[ats_core_job-results-param-outputs-empty]] + [abstract_test] ==== [%metadata] -label:: /conf/core/job-results-param-outputs-empty -subject:: <> +identifier:: /conf/core/job-results-param-outputs-empty +target:: <> test-purpose:: Validate that no processing results are available when the `outputs` parameter is present in an execution request but is empty. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that the server responds with a 204 HTTP status code and an empty response body when an output is requested. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_job-results-param-outputs-omit.adoc b/core/abstract_tests/core/ATS_job-results-param-outputs-omit.adoc index c6cc4577..c9abef9a 100644 --- a/core/abstract_tests/core/ATS_job-results-param-outputs-omit.adoc +++ b/core/abstract_tests/core/ATS_job-results-param-outputs-omit.adoc @@ -1,15 +1,14 @@ -[[ats_core_job-results-param-outputs-omit]][abstract_test] +[[ats_core_job-results-param-outputs-omit]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-results-param-outputs-omit -subject:: <> +identifier:: /conf/core/job-results-param-outputs-omit +target:: <> test-purpose:: Validate that all processing results are included in the response when the `outputs` parameter is omitted from an execution request. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Omit the `outputs` parameter from a process execution request and verify that all processing results are included in the response. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_job-results-param-outputs-response.adoc b/core/abstract_tests/core/ATS_job-results-param-outputs-response.adoc index 6fd5e947..06966365 100644 --- a/core/abstract_tests/core/ATS_job-results-param-outputs-response.adoc +++ b/core/abstract_tests/core/ATS_job-results-param-outputs-response.adoc @@ -1,15 +1,14 @@ -[[ats_core_job-results-param-outputs-response]][abstract_test] +[[ats_core_job-results-param-outputs-response]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-results-param-outputs-response -subject:: <> +identifier:: /conf/core/job-results-param-outputs-response +target:: <> test-purpose:: Validate that only the requested processing results are included in the response when the `outputs` parameter is specified on an execution request. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Include the `outputs` parameter on a process execution request that enumerates a list of process outputs to include the response. Verify that the response includes the requested process outputs. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_job-results-param-outputs.adoc b/core/abstract_tests/core/ATS_job-results-param-outputs.adoc index 84e6f6bd..4284f25a 100644 --- a/core/abstract_tests/core/ATS_job-results-param-outputs.adoc +++ b/core/abstract_tests/core/ATS_job-results-param-outputs.adoc @@ -1,16 +1,16 @@ -[[ats_core_job-results-param-outputs]][abstract_test] +[[ats_core_job-results-param-outputs]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-results-param-outputs -subject:: <> +identifier:: /conf/core/job-results-param-outputs +target:: <> test-purpose:: Validate that the `outputs` parameter is constructed correctly. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- -Verify that the `outputs` parameter complies with its definition in requirement <>. +1. Verify that the `outputs` parameter complies with its definition in requirement <>. -- +==== -Note that the API can define different values for "minimum", "maximum" and "default". -===== +NOTE: The API can define different values for "minimum", "maximum" and "default". diff --git a/core/abstract_tests/core/ATS_job-results-success-async-many.adoc b/core/abstract_tests/core/ATS_job-results-success-async-many.adoc index 77bafe40..94851418 100644 --- a/core/abstract_tests/core/ATS_job-results-success-async-many.adoc +++ b/core/abstract_tests/core/ATS_job-results-success-async-many.adoc @@ -1,25 +1,19 @@ -[[ats_core_job-results-async-many]][abstract_test] +[[ats_core_job-results-async-many]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-results-async-many -subject:: <> +identifier:: /conf/core/job-results-async-many +target:: <> test-purpose:: Validate that only the requested processing results are included in the response when the `outputs` parameter is specified on an execution request. - -[.component,class=test method] -===== -[.component,class=step] --- -Negotiate asynchronous process execution as per test <>. --- -[.component,class=step] --- -Request at least 2 process outputs as per test <>. +test-method:: ++ -- +1. Negotiate asynchronous process execution as per test <>. -[.component,class=step] --- -Validate that the processing results retrieved from the `/jobs/{jobID}/results` endpoint conform to requirement <>. +2. Request at least 2 process outputs as per test <>. + +3. Validate that the processing results retrieved from the `/jobs/{jobID}/results` endpoint conform to requirement <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_job-results-success-async-one.adoc b/core/abstract_tests/core/ATS_job-results-success-async-one.adoc index 0ae70302..fce5c6fa 100644 --- a/core/abstract_tests/core/ATS_job-results-success-async-one.adoc +++ b/core/abstract_tests/core/ATS_job-results-success-async-one.adoc @@ -1,29 +1,20 @@ -[[ats_core_job-results-async-one]][abstract_test] +[[ats_core_job-results-async-one]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-results-async-one -subject:: <> +identifier:: /conf/core/job-results-async-one +target:: <> test-purpose:: Validate that only the requested processing result is included in the response when the `outputs` parameter requesting output with identifier `{outputID}` is specified on an execution request. - -[.component,class=test method] -===== -[.component,class=step] --- -Negotiate asynchronous process execution as per test <>. --- -[.component,class=step] --- -Request a single process output with output identifier `{outputID}` as per test <>. +test-method:: ++ -- +1. Negotiate asynchronous process execution as per test <>. -[.component,class=step] --- -Retrieve the processing response from the `/jobs/{jobID}/results/{outputID}` endpoint. --- +2. Request a single process output with output identifier `{outputID}` as per test <>. -[.component,class=step] --- -Validate that the response conforms to the requirement <>. +3. Retrieve the processing response from the `/jobs/{jobID}/results/{outputID}` endpoint. + +4. Validate that the response conforms to the requirement <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_job-results-success-sync.adoc b/core/abstract_tests/core/ATS_job-results-success-sync.adoc index f4bdc4e5..13f84424 100644 --- a/core/abstract_tests/core/ATS_job-results-success-sync.adoc +++ b/core/abstract_tests/core/ATS_job-results-success-sync.adoc @@ -1,35 +1,22 @@ -[[ats_core_job-results-success-sync]][abstract_test] +[[ats_core_job-results-success-sync]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-results-success-sync -subject:: <> +identifier:: /conf/core/job-results-success-sync +target:: <> test-purpose:: Validate that the server responds as expected when getting results from a job for a process that has been executed synchronously. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a description of each process offered by the server using test <>. +test-method:: ++ -- +1. Get a description of each process offered by the server using test <>. -[.component,class=step] --- -Inspect the description of each process and identify the subset of processes that support the `sync-execute` job control option. --- +2. Inspect the description of each process and identify the subset of processes that support the `sync-execute` job control option. -[.component,class=step] --- -For each identified process construct an execute request according to test <> ensuring that synchronous execution is <> according to test <>. --- +3. For each identified process construct an execute request according to test <> ensuring that synchronous execution is <> according to test <>. -[.component,class=step] --- -Inspect the headers of the response and see if a `Link` header is included with `rel=monitor`. --- +4. Inspect the headers of the response and see if a `Link` header is included with `rel=monitor`. -[.component,class=step] --- -If the link exists, get the job status as per test <> and ensure that the job status is set to `successful`. +5. If the link exists, get the job status as per test <> and ensure that the job status is set to `successful`. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_job-success.adoc b/core/abstract_tests/core/ATS_job-success.adoc index 1ec4f742..8edd22ea 100644 --- a/core/abstract_tests/core/ATS_job-success.adoc +++ b/core/abstract_tests/core/ATS_job-success.adoc @@ -1,26 +1,22 @@ -[[ats_core_job-success]][abstract_test] +[[ats_core_job-success]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/job-success -subject:: <> +identifier:: /conf/core/job-success +target:: <> test-purpose:: Validate that the job status info complies with the require structure and contents. - -[.component,class=test method] -===== -[.component,class=step] --- -Validate that the document was returned with an HTTP status code of 200. +test-method:: ++ -- +1. Validate that the document was returned with an HTTP status code of 200. -[.component,class=step] +2. Validate the job status info for all supported media types using the resources and tests identified in <> -- -Validate the job status info for all supported media types using the resources and tests identified in <> --- -===== +==== -The status info page for a job may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the status info against that schema. All supported formats should be exercised. +NOTE: The status info page for a job may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the status info against that schema. All supported formats should be exercised. -==== [[job-status-info-schema]] .Schema and Tests for the Job Status Info [cols="3",options="header"] diff --git a/core/abstract_tests/core/ATS_landingpage-op.adoc b/core/abstract_tests/core/ATS_landingpage-op.adoc index 139bcde2..d1950db1 100644 --- a/core/abstract_tests/core/ATS_landingpage-op.adoc +++ b/core/abstract_tests/core/ATS_landingpage-op.adoc @@ -1,20 +1,16 @@ -[[ats_core_landingpage-op]][abstract_test] +[[ats_core_landingpage-op]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/landingpage-op -subject:: <> +identifier:: /conf/core/landingpage-op +target:: <> test-purpose:: Validate that a landing page can be retrieved from the expected location. - -[.component,class=test method] -===== -[.component,class=step] --- -Issue an HTTP GET request to the root URL `/`. +test-method:: ++ -- +1. Issue an HTTP GET request to the root URL `/`. -[.component,class=step] --- -Validate the contents of the returned document using test <>. +2. Validate the contents of the returned document using test <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_landingpage-success.adoc b/core/abstract_tests/core/ATS_landingpage-success.adoc index 14c7e968..aea2a8b5 100644 --- a/core/abstract_tests/core/ATS_landingpage-success.adoc +++ b/core/abstract_tests/core/ATS_landingpage-success.adoc @@ -1,46 +1,30 @@ -[[ats_core_landingpage-success]][abstract_test] +[[ats_core_landingpage-success]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/landingpage-success -subject:: <> +identifier:: /conf/core/landingpage-success +target:: <> test-purpose:: Validate that the landing page complies with the require structure and contents. - -[.component,class=test method] -===== -[.component,class=step] --- -Validate that a document was returned with an HTTP status code or 200. +test-method:: ++ -- +1. Validate that a document was returned with an HTTP status code or 200. -[.component,class=step] --- -Validate the landing page for all supported media types using the resources and tests identified in <> --- +2. Validate the landing page for all supported media types using the resources and tests identified in <> -[.component,class=step] -====== -For formats that require manual inspection, perform the following: +3. For formats that require manual inspection, perform the following: -[.component,class=step] --- -Validate that the landing page includes a "service-desc" and/or "service-doc" link to an API Definition. --- + a. Validate that the landing page includes a "service-desc" and/or "service-doc" link to an API Definition. -[.component,class=step] --- -Validate that the landing page includes a "http://www.opengis.net/def/rel/ogc/1.0/conformance" link to the conformance class declaration. --- + b. Validate that the landing page includes a "http://www.opengis.net/def/rel/ogc/1.0/conformance" link to the conformance class declaration. -[.component,class=step] + c. Validate that the landing page includes a "http://www.opengis.net/def/rel/ogc/1.0/processes" link to the list of processes. -- -Validate that the landing page includes a "http://www.opengis.net/def/rel/ogc/1.0/processes" link to the list of processes. --- -====== -===== - -The landing page may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the landing page against that schema. All supported formats should be exercised. ==== +NOTE: The landing page may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the landing page against that schema. All supported formats should be exercised. + [[landing-page-schema]] .Schema and Tests for Landing Pages [cols="3",options="header"] diff --git a/core/abstract_tests/core/ATS_process-description-op.adoc b/core/abstract_tests/core/ATS_process-description-op.adoc index 785f8cee..59794dde 100644 --- a/core/abstract_tests/core/ATS_process-description-op.adoc +++ b/core/abstract_tests/core/ATS_process-description-op.adoc @@ -1,21 +1,16 @@ [[ats_core_process-description]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-description -subject:: <> +identifier:: /conf/core/process-description +target:: <> test-purpose:: Validate that a process description can be retrieved from the expected location. - -[.component,class=test method] -===== -[.component,class=step] --- -For every Process described in the process list content, issue an HTTP GET request to the URL `/processes/{processID}` where `{processID}` is the `id` property for the process. +test-method:: ++ -- +1. For every Process described in the process list content, issue an HTTP GET request to the URL `/processes/{processID}` where `{processID}` is the `id` property for the process. -[.component,class=step] --- -Validate the response using the test <>. +2. Validate the response using the test <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-description-success.adoc b/core/abstract_tests/core/ATS_process-description-success.adoc index 404a129e..6505efff 100644 --- a/core/abstract_tests/core/ATS_process-description-success.adoc +++ b/core/abstract_tests/core/ATS_process-description-success.adoc @@ -1,26 +1,22 @@ [[ats_core_process-description-success]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-description-success -subject:: <> +identifier:: /conf/core/process-description-success +target:: <> test-purpose:: Validate that the content complies with the required structure and contents. - -[.component,class=test method] -===== -[.component,class=step] --- -Validate that a document was returned with an HTTP status code of 200. +test-method:: ++ -- +1. Validate that a document was returned with an HTTP status code of 200. -[.component,class=step] +2. Verify that the content of the response is valid description of the interface of the process for all supported process description models. -- -Verify that the content of the response is valid description of the interface of the process for all supported process description models. --- -===== -The interface of a process may be describing using a number of different models or process description languages. The following table identifies the applicable schema document for each process description model described in this standard. ==== +NOTE: The interface of a process may be describing using a number of different models or process description languages. The following table identifies the applicable schema document for each process description model described in this standard. + [[process-description-model]] .Schema and Tests for Process Description Models [cols="3",options="header"] diff --git a/core/abstract_tests/core/ATS_process-exception-no-such-process.adoc b/core/abstract_tests/core/ATS_process-exception-no-such-process.adoc index 7d85b10f..960c6620 100644 --- a/core/abstract_tests/core/ATS_process-exception-no-such-process.adoc +++ b/core/abstract_tests/core/ATS_process-exception-no-such-process.adoc @@ -1,35 +1,26 @@ -[[ats_core_process-exception-no-such-process]][abstract_test] +[[ats_core_process-exception-no-such-process]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/process-exception-no-such-process -subject:: <> +identifier:: /conf/core/process-exception-no-such-process +target:: <> test-purpose:: Validate that an invalid process identifier is handled correctly. - -[.component,class=test method] -===== -[.component,class=step] --- -Issue an HTTP GET request to a URL that includes the `{processID}` as a path element using a non-existent process identifier. +test-method:: ++ -- +1. Issue an HTTP GET request to a URL that includes the `{processID}` as a path element using a non-existent process identifier. -[.component,class=step] --- -Validate that the document was returned with a 404. --- +2.Validate that the document was returned with a 404. -[.component,class=step] --- -Validate that the document contains the exception `type` "http://www.opengis.net/def/exceptions/ogcapi-processes-1/1.0/no-such-process". --- +3. Validate that the document contains the exception `type` "http://www.opengis.net/def/exceptions/ogcapi-processes-1/1.0/no-such-process". -[.component,class=step] +4. Validate the document for all supported media types using the resources and tests identified in <> -- -Validate the document for all supported media types using the resources and tests identified in <> --- -===== -An exception response caused by the use of an invalid process identifier may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the response. All supported formats should be exercised. ==== +NOTE: An exception response caused by the use of an invalid process identifier may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the response. All supported formats should be exercised. + [[no-such-process]] .Schema and Tests for Non-existent Process [cols="3",options="header"] diff --git a/core/abstract_tests/core/ATS_process-execute-auto-execution-mode.adoc b/core/abstract_tests/core/ATS_process-execute-auto-execution-mode.adoc index 2de4e6ad..3aa2949e 100644 --- a/core/abstract_tests/core/ATS_process-execute-auto-execution-mode.adoc +++ b/core/abstract_tests/core/ATS_process-execute-auto-execution-mode.adoc @@ -1,41 +1,24 @@ [[ats_core_process-execute-auto-execution-mode]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-auto-execution-mode -subject:: <> +identifier:: /conf/core/process-execute-auto-execution-mode +target:: <> test-purpose:: Validate that the server correctly handles the execution mode for a process. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a description of each process offered by the server using test <>. +test-method:: ++ -- +1. Get a description of each process offered by the server using test <>. -[.component,class=step] --- -Inspect the description of each process and take note of the job control options for the process. --- +2. Inspect the description of each process and take note of the job control options for the process. -[.component,class=step] --- -Setting the HTTP `Prefer` header to include the `respond-sync` preference, construct an execute request according to test <>. --- +3. Setting the HTTP `Prefer` header to include the `respond-sync` preference, construct an execute request according to test <>. -[.component,class=step] --- -For processes that are supposed to execute asynchronously according to the <> requirement, verify the successful execution according to the <> test. --- +4. For processes that are supposed to execute asynchronously according to the <> requirement, verify the successful execution according to the <> test. -[.component,class=step] --- -For processes that are supposed to execute synchronously according to the <> requirement, verify the successful execution according to the relevant requirement (one of: <>, <>, <>) based on the combination of execute parameters. --- +5. For processes that are supposed to execute synchronously according to the <> requirement, verify the successful execution according to the relevant requirement (one of: <>, <>, <>) based on the combination of execute parameters. -[.component,class=step] --- -For processes that may execute either synchronously or asynchronously according to the <> requirement, verify the successful execution according to the relevant requirement (one of: <>, <>, <>, <>) based on the combination of execute parameters. +6. For processes that may execute either synchronously or asynchronously according to the <> requirement, verify the successful execution according to the relevant requirement (one of: <>, <>, <>, <>) based on the combination of execute parameters. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-default-execution-mode.adoc b/core/abstract_tests/core/ATS_process-execute-default-execution-mode.adoc index 40fc9a3f..0c7aa9a4 100644 --- a/core/abstract_tests/core/ATS_process-execute-default-execution-mode.adoc +++ b/core/abstract_tests/core/ATS_process-execute-default-execution-mode.adoc @@ -1,36 +1,22 @@ [[ats_core_process-execute-default-execution-mode]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-default-execution-mode -subject:: <> +identifier:: /conf/core/process-execute-default-execution-mode +target:: <> test-purpose:: Validate that the server correctly handles the default execution mode for a process. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a description of each process offered by the server using test <>. +test-method:: ++ -- +1. Get a description of each process offered by the server using test <>. -[.component,class=step] --- -Inspect the description of each process and take note of the job control options for the process. --- +2. Inspect the description of each process and take note of the job control options for the process. -[.component,class=step] --- -Without setting the HTTP `Prefer` header, construct an execute request according to test <>. --- +3. Without setting the HTTP `Prefer` header, construct an execute request according to test <>. -[.component,class=step] --- -For processes that are supposed to execute asynchronously according to the <> requirement, verify the successful execution according to the <> test. --- +4. For processes that are supposed to execute asynchronously according to the <> requirement, verify the successful execution according to the <> test. -[.component,class=step] --- -For processes that are supposed to execute synchronously according to the <> requirement, verify the successful synchronous execution according to the relevant requirement (one of: <>, <>, <>) base on the combination of execute parameters. +5. For processes that are supposed to execute synchronously according to the <> requirement, verify the successful synchronous execution according to the relevant requirement (one of: <>, <>, <>) base on the combination of execute parameters. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-default-outputs.adoc b/core/abstract_tests/core/ATS_process-execute-default-outputs.adoc index 473703e7..046eaa8e 100644 --- a/core/abstract_tests/core/ATS_process-execute-default-outputs.adoc +++ b/core/abstract_tests/core/ATS_process-execute-default-outputs.adoc @@ -1,36 +1,22 @@ [[ats_core_process-execute-default-outputs]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-default-outputs -subject:: <> +identifier:: /conf/core/process-execute-default-outputs +target:: <> test-purpose:: Validate that the server correctly handles the case where no `outputs` parameter is specified on an execute request. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a description of each process offered by the server using test <>. +test-method:: ++ -- +1. Get a description of each process offered by the server using test <>. -[.component,class=step] --- -Inspect the description of each process taking note of the definition of each process output. --- +2. Inspect the description of each process taking note of the definition of each process output. -[.component,class=step] --- -For each process construct an execute request according to test <> taking care to omit the `outputs` parameter. --- +3. For each process construct an execute request according to test <> taking care to omit the `outputs` parameter. -[.component,class=step] --- -Verify that each process executes successfully according to the relevant requirement (one of: <>, <>, <>, <>) based on the combination of execute parameters. --- +4. Verify that each process executes successfully according to the relevant requirement (one of: <>, <>, <>, <>) based on the combination of execute parameters. -[.component,class=step] --- -Verify that each process includes all the outputs, as defined in the <>, in the response. +5. Verify that each process includes all the outputs, as defined in the <>, in the response. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-input-array.adoc b/core/abstract_tests/core/ATS_process-execute-input-array.adoc index fa861245..79f7fd7c 100644 --- a/core/abstract_tests/core/ATS_process-execute-input-array.adoc +++ b/core/abstract_tests/core/ATS_process-execute-input-array.adoc @@ -1,31 +1,20 @@ [[ats_core_process-execute-input-array]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-input-array -subject:: <> +identifier:: /conf/core/process-execute-input-array +target:: <> test-purpose:: Verify that the server correctly recognizes the encoding of parameter values for input parameters with a maximum cardinality greater than one. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a description of each process offered by the server using test <>. +test-method:: ++ -- +1. Get a description of each process offered by the server using test <>. -[.component,class=step] --- -Inspect the description of each process and identify the list of processes that have inputs with a maximum cardinality greater that one. --- +2. Inspect the description of each process and identify the list of processes that have inputs with a maximum cardinality greater that one. -[.component,class=step] --- -For each identified process construct an execute request according to test <> taking care to encode the inputs with maximum cardinality > 1 according to the requirement <>. --- +3. For each identified process construct an execute request according to test <> taking care to encode the inputs with maximum cardinality > 1 according to the requirement <>. -[.component,class=step] --- -Verify that each process executes successfully according to the relevant requirement (one of: <>, <>, <>, <>) based on the combination of execute parameters. +4. Verify that each process executes successfully according to the relevant requirement (one of: <>, <>, <>, <>) based on the combination of execute parameters. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-input-inline-bbox.adoc b/core/abstract_tests/core/ATS_process-execute-input-inline-bbox.adoc index 111e2d35..04de86e1 100644 --- a/core/abstract_tests/core/ATS_process-execute-input-inline-bbox.adoc +++ b/core/abstract_tests/core/ATS_process-execute-input-inline-bbox.adoc @@ -1,31 +1,20 @@ [[ats_core_process-execute-input-inline-bbox]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-input-inline-bbox -subject:: <> +identifier:: /conf/core/process-execute-input-inline-bbox +target:: <> test-purpose:: Validate that inputs with a bounding box schema encoded in-line in an execute request are correctly processed. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a description of each process offered by the server using test <>. +test-method:: ++ -- +1. Get a description of each process offered by the server using test <>. -[.component,class=step] --- -Inspect the description of each process and identify the subset of processes that have bounding box inputs that are supposed to conform to the https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/bbox.yaml[bbox.yaml] schema. --- +2. Inspect the description of each process and identify the subset of processes that have bounding box inputs that are supposed to conform to the https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/bbox.yaml[bbox.yaml] schema. -[.component,class=step] --- -For each identified process construct an execute request according to test <> taking care to encode values for the identified bounding box inputs in-line in the execute request. --- +3. For each identified process construct an execute request according to test <> taking care to encode values for the identified bounding box inputs in-line in the execute request. -[.component,class=step] --- -Verify that each process execute successfulle according to the relevant requirement (one of: <>, <>, <>, <>) based on the combination of execute parameters. +4. Verify that each process execute successfulle according to the relevant requirement (one of: <>, <>, <>, <>) based on the combination of execute parameters. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-input-inline-binary.adoc b/core/abstract_tests/core/ATS_process-execute-input-inline-binary.adoc index c105d8c2..a7e6595e 100644 --- a/core/abstract_tests/core/ATS_process-execute-input-inline-binary.adoc +++ b/core/abstract_tests/core/ATS_process-execute-input-inline-binary.adoc @@ -1,31 +1,20 @@ [[ats_core_process-execute-input-inline-binary]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-input-inline-binary -subject:: <> +identifier:: /conf/core/process-execute-input-inline-binary +target:: <> test-purpose:: Validate that binary input values encoded as base-64 string in-line in an execute request are correctly processes. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a description of each process offered by the server using test <>. +test-method:: ++ -- +1. Get a description of each process offered by the server using test <>. -[.component,class=step] --- -Inspect the description of each process and identify the subset of processes that have binary inputs. --- +2. Inspect the description of each process and identify the subset of processes that have binary inputs. -[.component,class=step] --- -For each identified process construct an execute request according to test <> taking care to encode binary input values in-line in the execute request according to requirement <>. --- +3. For each identified process construct an execute request according to test <> taking care to encode binary input values in-line in the execute request according to requirement <>. -[.component,class=step] --- -Verify that each process execute successfully according to the relevant requirement (one of: <>, <>, <>, <>) base on the combination of execute parameters. +4. Verify that each process execute successfully according to the relevant requirement (one of: <>, <>, <>, <>) base on the combination of execute parameters. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-input-inline-mixed.adoc b/core/abstract_tests/core/ATS_process-execute-input-inline-mixed.adoc index 49345262..7a9017b8 100644 --- a/core/abstract_tests/core/ATS_process-execute-input-inline-mixed.adoc +++ b/core/abstract_tests/core/ATS_process-execute-input-inline-mixed.adoc @@ -1,31 +1,20 @@ [[ats_core_process-execute-input-inline-mixed]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-input-inline-mixed -subject:: <> +identifier:: /conf/core/process-execute-input-inline-mixed +target:: <> test-purpose:: Validate that inputs of mixed content encoded in-line in an execute request are correctly processed. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a description of each process offered by the server using test <>. +test-method:: ++ -- +1. Get a description of each process offered by the server using test <>. -[.component,class=step] --- -Inspect the description of each process and identify the subset of processes that have inputs of mixed content using the `oneOf[]` JSON Schema construct to define several alternate input value schemas. --- +2. Inspect the description of each process and identify the subset of processes that have inputs of mixed content using the `oneOf[]` JSON Schema construct to define several alternate input value schemas. -[.component,class=step] --- -For each identified process construct an execute request according to test <> taking care to encode the identified mix-content inputs in-line in the execute request according to requirement <>. --- +3. For each identified process construct an execute request according to test <> taking care to encode the identified mix-content inputs in-line in the execute request according to requirement <>. -[.component,class=step] --- -Verify that each process execute successfully according to the relevant requirement (one of: <>, <>, <>, <>) base on the combination of execute parameters. +4. Verify that each process execute successfully according to the relevant requirement (one of: <>, <>, <>, <>) base on the combination of execute parameters. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-input-inline-object.adoc b/core/abstract_tests/core/ATS_process-execute-input-inline-object.adoc index 7ee257d2..bf2eabba 100644 --- a/core/abstract_tests/core/ATS_process-execute-input-inline-object.adoc +++ b/core/abstract_tests/core/ATS_process-execute-input-inline-object.adoc @@ -1,31 +1,20 @@ [[ats_core_process-execute-input-inline-object]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-input-inline-object -subject:: <> +identifier:: /conf/core/process-execute-input-inline-object +target:: <> test-purpose:: Validate that inputs with a complex object schema encoded in-line in an execute request are correctly processed. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a description of each process offered by the server using test <>. +test-method:: ++ -- +1. Get a description of each process offered by the server using test <>. -[.component,class=step] --- -Inspect the description of each process and identify the subset of processes that have inputs with complex `object schemas (i.e. inputs of type `object`). --- +2. Inspect the description of each process and identify the subset of processes that have inputs with complex `object schemas (i.e. inputs of type `object`). -[.component,class=step] --- -For each identified process construct an execute request according to test <> taking care to encode the identified object inputs in-line in the execute request according to requirement <>. --- +3. For each identified process construct an execute request according to test <> taking care to encode the identified object inputs in-line in the execute request according to requirement <>. -[.component,class=step] --- -Verify that each process execute successfulle according to the relevant requirement (one of: <>, <>, <>, <>) based on the combination of execute parameters. +4. Verify that each process execute successfulle according to the relevant requirement (one of: <>, <>, <>, <>) based on the combination of execute parameters. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-input-validation.adoc b/core/abstract_tests/core/ATS_process-execute-input-validation.adoc index 352a19b7..f96644de 100644 --- a/core/abstract_tests/core/ATS_process-execute-input-validation.adoc +++ b/core/abstract_tests/core/ATS_process-execute-input-validation.adoc @@ -1,42 +1,24 @@ [[ats_core_process-execute-input-validation]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-input-validation -subject:: <> +identifier:: /conf/core/process-execute-input-validation +target:: <> test-purpose:: Verify that the server correctly validates process input values according to the definition obtained from the <>. - -[.component,class=test method] -===== - -[.component,class=step] --- -Get a description of each process offered by the server using test <>. +test-method:: ++ -- +1. Get a description of each process offered by the server using test <>. -[.component,class=step] --- -Inspect the description of each process taking note of the definition of each process input and specifically the schema of each process input. --- +2. Inspect the description of each process taking note of the definition of each process input and specifically the schema of each process input. -[.component,class=step] --- -For each process construct an execute request according to test <> taking care to encode the input values according to the schema from the definition of each input. --- +3. For each process construct an execute request according to test <> taking care to encode the input values according to the schema from the definition of each input. -[.component,class=step] --- -Verify that each process execute successfully according to the relevant requirement (one of: <>, <>, <>, <>) base on the combination of execute parameters. --- +4. Verify that each process execute successfully according to the relevant requirement (one of: <>, <>, <>, <>) base on the combination of execute parameters. -[.component,class=step] --- -For each process construct an execute request according to test <> taking care to encode some of the input values in violation of the schema from the definition of the selected input. --- +5. For each process construct an execute request according to test <> taking care to encode some of the input values in violation of the schema from the definition of the selected input. -[.component,class=step] --- -Verify that each process generates an exception report that identifies the improperly specified input value(s). +6. Verify that each process generates an exception report that identifies the improperly specified input value(s). -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-inputs.adoc b/core/abstract_tests/core/ATS_process-execute-inputs.adoc index ccedee1e..07f2aceb 100644 --- a/core/abstract_tests/core/ATS_process-execute-inputs.adoc +++ b/core/abstract_tests/core/ATS_process-execute-inputs.adoc @@ -1,25 +1,18 @@ -[[ats_core_process-execute-inputs]][abstract_test] +[[ats_core_process-execute-inputs]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-inputs -subject:: <> +identifier:: /conf/core/process-execute-inputs +target:: <> test-purpose:: Validate that servers can accept input values both inline and by reference. - -[.component,class=test method] -===== -[.component,class=step] --- -Verify that the server passes tests <>, <>, <>, <> . +test-method:: ++ -- +1. Verify that the server passes tests <>, <>, <>, <> . -[.component,class=step] --- -For each test, specify the input value in-line in the execute request. --- +2. For each test, specify the input value in-line in the execute request. -[.component,class=step] --- -For each test, specify the input value by reference using a https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/openapi/schemas/common-core/link.yaml[link] in the execute request. +3. For each test, specify the input value by reference using a https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/openapi/schemas/common-core/link.yaml[link] in the execute request. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-op.adoc b/core/abstract_tests/core/ATS_process-execute-op.adoc index 00807d7a..574f41f1 100644 --- a/core/abstract_tests/core/ATS_process-execute-op.adoc +++ b/core/abstract_tests/core/ATS_process-execute-op.adoc @@ -1,27 +1,18 @@ [[ats_core_process-execute-op]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-op -subject:: <> +identifier:: /conf/core/process-execute-op +target:: <> test-purpose:: Validate the execution of a process. - -[.component,class=test method] -===== - -[.component,class=step] --- -Issue an HTTP POST request to the URL '/processes/{processID}/execution' for each execution mode according to requirements <> or <>. +test-method:: ++ -- +1. Issue an HTTP POST request to the URL '/processes/{processID}/execution' for each execution mode according to requirements <> or <>. -[.component,class=step] --- -Validate that the server supports a POST request for that operation according to the test <>. --- +2. Validate that the server supports a POST request for that operation according to the test <>. -[.component,class=step] --- -Validate the execution of a process according to the requirements <>, <>. +3. Validate the execution of a process according to the requirements <>, <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-request.adoc b/core/abstract_tests/core/ATS_process-execute-request.adoc index 7b1b1aca..932e966d 100644 --- a/core/abstract_tests/core/ATS_process-execute-request.adoc +++ b/core/abstract_tests/core/ATS_process-execute-request.adoc @@ -1,16 +1,14 @@ [[ats_core_process-execute-request]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-request -subject:: <> +identifier:: /conf/core/process-execute-request +target:: <> test-purpose:: Validate that the server supports a process execution operation complying with the required structure and contents. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that the server supports a process execution request whose body conforms to the OpenAPI 3.0 schema https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/execute.yaml[execute.yaml]. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-success-async.adoc b/core/abstract_tests/core/ATS_process-execute-success-async.adoc index 91b7e562..75435631 100644 --- a/core/abstract_tests/core/ATS_process-execute-success-async.adoc +++ b/core/abstract_tests/core/ATS_process-execute-success-async.adoc @@ -1,27 +1,18 @@ [[ats_core_process-execute-success-async]] + [abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-success-async -subject:: <> +identifier:: /conf/core/process-execute-success-async +target:: <> test-purpose:: Validate the results of a job that has been created using the `async` execution mode. - -[.component,class=test method] -===== - -[.component,class=step] --- -Validate that the response returned with an HTTP status code of 201. +test-method:: ++ -- +1. Validate that the response returned with an HTTP status code of 201. -[.component,class=step] --- -Validate that the response includes the HTTP https://datatracker.ietf.org/doc/html/rfc7231#page-68[`Location`] header and that the link points to the newly created job. --- +2. Validate that the response includes the HTTP https://datatracker.ietf.org/doc/html/rfc7231#page-68[`Location`] header and that the link points to the newly created job. -[.component,class=step] --- -Validate that the response body conforms to the JSON Schema fragment https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/openapi/schemas/processes-core/statusInfo.yaml[statusInfo.yaml]. +3. Validate that the response body conforms to the JSON Schema fragment https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/openapi/schemas/processes-core/statusInfo.yaml[statusInfo.yaml]. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-success-sync-many-json.adoc b/core/abstract_tests/core/ATS_process-execute-success-sync-many-json.adoc index b9e5f829..f1bf6eeb 100644 --- a/core/abstract_tests/core/ATS_process-execute-success-sync-many-json.adoc +++ b/core/abstract_tests/core/ATS_process-execute-success-sync-many-json.adoc @@ -1,24 +1,18 @@ -[[ats_core_process-execute-sync-many-json]][abstract_test] +[[ats_core_process-execute-sync-many-json]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-sync-many-json -subject:: <> +identifier:: /conf/core/process-execute-sync-many-json +target:: <> test-purpose:: Validate that the correct output with the correct content type is generated when a process generating multiple responses is synchronously executed. - -[.component,class=test method] -===== -[.component,class=step] --- -Negotiate synchronous process execution as per test <>. --- -[.component,class=step] --- -Request at least 2 process outputs as per test <>. +test-method:: ++ -- +1. Negotiate synchronous process execution as per test <>. -[.component,class=step] --- -Validate that the response conforms to the requirements of <>. +2. Request at least 2 process outputs as per test <>. + +3. Validate that the response conforms to the requirements of <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-success-sync-one-default-content.adoc b/core/abstract_tests/core/ATS_process-execute-success-sync-one-default-content.adoc index a0c56ad5..752bf2a2 100644 --- a/core/abstract_tests/core/ATS_process-execute-success-sync-one-default-content.adoc +++ b/core/abstract_tests/core/ATS_process-execute-success-sync-one-default-content.adoc @@ -1,31 +1,20 @@ -[[ats_core_process-execute-sync-one-default-content]][abstract_test] +[[ats_core_process-execute-sync-one-default-content]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-sync-one-default-content -subject:: <> +identifier:: /conf/core/process-execute-sync-one-default-content +target:: <> test-purpose:: Validate that the default output format is generated upon process execution when a single output is requested but no specific supported format is negotiated. - -[.component,class=test method] -===== - -[.component,class=step] --- -Negotiate synchronous process execution as per test <>. +test-method:: ++ -- +1. Negotiate synchronous process execution as per test <>. -[.component,class=step] --- -Request a single output with identifier `{outputID}` as per test <>. --- +2. Request a single output with identifier `{outputID}` as per test <>. -[.component,class=step] --- -Do not negotiate a specific format for the requested output. --- +3. Do not negotiate a specific format for the requested output. -[.component,class=step] --- -Validate that the response conforms to the requirements of <>. +4. Validate that the response conforms to the requirements of <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-execute-success-sync-one.adoc b/core/abstract_tests/core/ATS_process-execute-success-sync-one.adoc index eb4f5003..f9248ab8 100644 --- a/core/abstract_tests/core/ATS_process-execute-success-sync-one.adoc +++ b/core/abstract_tests/core/ATS_process-execute-success-sync-one.adoc @@ -1,31 +1,20 @@ -[[ats_core_process-execute-sync-one]][abstract_test] +[[ats_core_process-execute-sync-one]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/process-execute-sync-one -subject:: <> +identifier:: /conf/core/process-execute-sync-one +target:: <> test-purpose:: Validate that the correct output is generated upon process execution when a single output is requested. - -[.component,class=test method] -===== - -[.component,class=step] --- -Negotiate synchronous process execution as per test <>. +test-method:: ++ -- +1. Negotiate synchronous process execution as per test <>. -[.component,class=step] --- -Request a single output with identifier `{outputID}` as per test <>. --- +2. Request a single output with identifier `{outputID}` as per test <>. -[.component,class=step] --- -Negotiate an output format that is supported for the requested output according to the process' description that has been retrieved as per test <>. --- +3. Negotiate an output format that is supported for the requested output according to the process' description that has been retrieved as per test <>. -[.component,class=step] --- -Validate that the response conforms to the requirements of <>. +4. Validate that the response conforms to the requirements of <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-list-limit-def.adoc b/core/abstract_tests/core/ATS_process-list-limit-def.adoc index ebbd526f..38925158 100644 --- a/core/abstract_tests/core/ATS_process-list-limit-def.adoc +++ b/core/abstract_tests/core/ATS_process-list-limit-def.adoc @@ -1,17 +1,16 @@ -[[ats_core_pl-limit-definition]][abstract_test] +[[ats_core_pl-limit-definition]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/pl-limit-definition -subject:: <> +identifier:: /conf/core/pl-limit-definition +target:: <> test-purpose:: Validate that the `limit` query parameter is constructed correctly. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that the `limit` query parameter complies with its definition in requirement <>. -- - -NOTE: that the API can define different values for "minimum", "maximum" and "default". -===== ==== + +NOTE: The API can define different values for "minimum", "maximum" and "default". diff --git a/core/abstract_tests/core/ATS_process-list-limit-response.adoc b/core/abstract_tests/core/ATS_process-list-limit-response.adoc index 03ded779..b17e59c7 100644 --- a/core/abstract_tests/core/ATS_process-list-limit-response.adoc +++ b/core/abstract_tests/core/ATS_process-list-limit-response.adoc @@ -1,30 +1,20 @@ -[[ats_core_pl-limit-response]][abstract_test] +[[ats_core_pl-limit-response]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/pl-limit-response -subject:: <> +identifier:: /conf/core/pl-limit-response +target:: <> test-purpose:: Validate that the `limit` query parameter is processed correctly. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a list of processes as per test <> and append the `limit` query parameter to the request. +test-method:: ++ -- +1. Get a list of processes as per test <> and append the `limit` query parameter to the request. -[.component,class=step] --- -Count the number of process summaries listed in the response. --- +2. Count the number of process summaries listed in the response. -[.component,class=step] --- -Verify that this count is not greater than the value specified by the `limit` parameter. --- +3. Verify that this count is not greater than the value specified by the `limit` parameter. -[.component,class=step] --- -If the API definition specifies a maximum value for `limit` parameter, verify that the count does not exceed this maximum value. +4. If the API definition specifies a maximum value for `limit` parameter, verify that the count does not exceed this maximum value. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-list-links.adoc b/core/abstract_tests/core/ATS_process-list-links.adoc index c638c0e8..58774735 100644 --- a/core/abstract_tests/core/ATS_process-list-links.adoc +++ b/core/abstract_tests/core/ATS_process-list-links.adoc @@ -1,25 +1,18 @@ -[[ats_core_pl-links]][abstract_test] +[[ats_core_pl-links]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/pl-links -subject:: <> +identifier:: /conf/core/pl-links +target:: <> test-purpose:: Validate that the proper links are included in a response. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a list of process summaries as per test <>. +test-method:: ++ -- +1. Get a list of process summaries as per test <>. -[.component,class=step] --- -Verify that the `links` section of the response contains a link with `rel=self`. --- +2. Verify that the `links` section of the response contains a link with `rel=self`. -[.component,class=step] --- -Verify that the `links` section of the response contains a link with `rel=alternate` for each response representation the service claims to support in its <>. +3. Verify that the `links` section of the response contains a link with `rel=alternate` for each response representation the service claims to support in its <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-list-op.adoc b/core/abstract_tests/core/ATS_process-list-op.adoc index 56653a76..4c3cbe9f 100644 --- a/core/abstract_tests/core/ATS_process-list-op.adoc +++ b/core/abstract_tests/core/ATS_process-list-op.adoc @@ -1,20 +1,16 @@ -[[ats_core_process-list-op]][abstract_test] +[[ats_core_process-list-op]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/process-list -subject:: <> +identifier:: /conf/core/process-list +target:: <> test-purpose:: Validate that information about the processes can be retrieved from the expected location. - -[.component,class=test method] -===== -[.component,class=step] --- -Issue an HTTP GET request to the URL {root}/processes +test-method:: ++ -- +1. Issue an HTTP GET request to the URL {root}/processes -[.component,class=step] --- -Validate the contents of the returned document using test <>. +2. Validate the contents of the returned document using test <>. -- -===== ==== diff --git a/core/abstract_tests/core/ATS_process-list-success.adoc b/core/abstract_tests/core/ATS_process-list-success.adoc index cb58a867..c2e77438 100644 --- a/core/abstract_tests/core/ATS_process-list-success.adoc +++ b/core/abstract_tests/core/ATS_process-list-success.adoc @@ -1,26 +1,22 @@ -[[ats_core_process-list-success]][abstract_test] +[[ats_core_process-list-success]] + +[abstract_test] ==== [%metadata] -label:: /conf/core/process-list-success -subject:: <> +identifier:: /conf/core/process-list-success +target:: <> test-purpose:: Validate that the process list content complies with the required structure and contents. - -[.component,class=test method] -===== -[.component,class=step] --- -Validate that a document was returned with an HTTP status code of 200. +test-method:: ++ -- +1. Validate that a document was returned with an HTTP status code of 200. -[.component,class=step] +2. Validate the process list content for all supported media types using the resources and tests identified in <> -- -Validate the process list content for all supported media types using the resources and tests identified in <> --- -===== - -The process list may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the against that schema. All supported formats should be exercised. ==== +NOTE: The process list may be retrieved in a number of different formats. The following table identifies the applicable schema document for each format and the test to be used to validate the against that schema. All supported formats should be exercised. + [[process-list-schema]] .Schema and Tests for Lists content [cols="3",options="header"] diff --git a/core/abstract_tests/core/ATS_test-process.adoc b/core/abstract_tests/core/ATS_test-process.adoc index c647b7c8..48163856 100644 --- a/core/abstract_tests/core/ATS_test-process.adoc +++ b/core/abstract_tests/core/ATS_test-process.adoc @@ -1,7 +1,14 @@ -[[ats_core_test-process]][requirement] +[[ats_core_test-process]] + +[requirement] ==== [%metadata] -label:: /req/core/test-process - +identifier:: /conf/core +target:: /req/core/test-process +test-purpose:: Ensure that a testable process is offered by the server being tested. +test-method:: ++ +-- If a server implementing the OGC API - Processes - Part 1: Core is tested using CITE tests, the server SHALL offer at least one testable process. Please refer to <> for further guidance. +-- ==== diff --git a/core/abstract_tests/dismiss/ATS_job-dismiss-op.adoc b/core/abstract_tests/dismiss/ATS_job-dismiss-op.adoc index c20e8ff1..7a2d61e7 100644 --- a/core/abstract_tests/dismiss/ATS_job-dismiss-op.adoc +++ b/core/abstract_tests/dismiss/ATS_job-dismiss-op.adoc @@ -1,26 +1,18 @@ -[[ats_dismiss_job-dismiss-op]][abstract_test] +[[ats_dismiss_job-dismiss-op]] + +[abstract_test] ==== [%metadata] -label:: /conf/dismiss/job-dismiss-op -subject:: <> +identifier:: /conf/dismiss/job-dismiss-op +target:: <> test-purpose:: Validate that a running job can be dismissed. - -[.component,class=test method] -===== - -[.component,class=step] --- -Create an asynchronous job as per test <>; not the job identifier, {jobID}, assigned to the job. +test-method:: ++ -- +1. Create an asynchronous job as per test <>; not the job identifier, {jobID}, assigned to the job. -[.component,class=step] --- -Issue an HTTP DELETE operation to the URL '/jobs/{jobID}'. --- +2. Issue an HTTP DELETE operation to the URL '/jobs/{jobID}'. -[.component,class=step] --- -Validate the contents of the returned document using test <>. +3. Validate the contents of the returned document using test <>. -- -===== ==== diff --git a/core/abstract_tests/dismiss/ATS_job-dismiss-success.adoc b/core/abstract_tests/dismiss/ATS_job-dismiss-success.adoc index e5445f23..e058260e 100644 --- a/core/abstract_tests/dismiss/ATS_job-dismiss-success.adoc +++ b/core/abstract_tests/dismiss/ATS_job-dismiss-success.adoc @@ -1,28 +1,18 @@ [[ats_dismiss_job-dismiss-success]] + [abstract_test] ==== [%metadata] -label:: /conf/dismiss/job-dismiss-success -subject:: <> +identifier:: /conf/dismiss/job-dismiss-success +target:: <> test-purpose:: Validate that the content returned when dismissing a job complies with the required structure and contents. - -[.component,class=test method] -===== - -[.component,class=step] --- -Validate that a document was returned with an HTTP status code of 200. +test-method:: ++ -- +1. Validate that a document was returned with an HTTP status code of 200. -[.component,class=step] --- -Validate that the status is the response is set to "dismissed". --- +2. Validate that the status is the response is set to "dismissed". -[.component,class=step] +3. Validate the process list content for all supported media types using the resources and tests identified in <>. -- -Validate the process list content for all supported media types using the resources and tests identified in <>. --- -===== - ==== diff --git a/core/abstract_tests/html/ATS_content.adoc b/core/abstract_tests/html/ATS_content.adoc index f6994d9b..08b62bf4 100644 --- a/core/abstract_tests/html/ATS_content.adoc +++ b/core/abstract_tests/html/ATS_content.adoc @@ -1,30 +1,20 @@ -[[ats_html_content]][abstract_test] +[[ats_html_content]] + +[abstract_test] ==== [%metadata] -label:: /conf/html/content -subject:: <> +identifier:: /conf/html/content +target:: <> test-purpose:: Verify the content of an HTML document given an input document and schema. - -[.component,class=test method] -===== -[.component,class=step] --- -Validate that the document is an <> document +test-method:: ++ -- +1. Validate that the document is an <> document -[.component,class=step] -====== -Manually inspect the document and verify that the HTML body contains: +2. Manually inspect the document and verify that the HTML body contains: -[.component,class=step] --- -all information in the schemas of the link:https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#responseObject[Response Object] in the HTML `` --- + a. all information in the schemas of the link:https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#responseObject[Response Object] in the HTML ``, -[.component,class=step] --- -all links in HTML `` elements in the HTML ``. + b. all links in HTML `` elements in the HTML ``. -- -====== -===== ==== diff --git a/core/abstract_tests/html/ATS_definition.adoc b/core/abstract_tests/html/ATS_definition.adoc index 7d10bc7d..5f94287e 100644 --- a/core/abstract_tests/html/ATS_definition.adoc +++ b/core/abstract_tests/html/ATS_definition.adoc @@ -1,15 +1,14 @@ -[[ats_html_definition]][abstract_test] +[[ats_html_definition]] + +[abstract_test] ==== [%metadata] -label:: /conf/html/definition -subject:: <> +identifier:: /conf/html/definition +target:: <> test-purpose:: Verify support for HTML - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that every `200` response of every operation of the API where HTML was requested is of media type `text/html`. -- -===== ==== diff --git a/core/abstract_tests/job-list/ATS_datetime-def.adoc b/core/abstract_tests/job-list/ATS_datetime-def.adoc index cc0f3b40..1c36bb51 100644 --- a/core/abstract_tests/job-list/ATS_datetime-def.adoc +++ b/core/abstract_tests/job-list/ATS_datetime-def.adoc @@ -1,15 +1,14 @@ -[[ats_job-list_datetime-definition]][abstract_test] +[[ats_job-list_datetime-definition]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/datetime-definition -subject:: <> +identifier:: /conf/job-list/datetime-definition +target:: <> test-purpose:: Validate that the `datetime` query parameter is constructed correctly. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that the `datetime` query parameter complies with its definition in requirement <>. -- -===== ==== diff --git a/core/abstract_tests/job-list/ATS_datetime-response.adoc b/core/abstract_tests/job-list/ATS_datetime-response.adoc index 7ce2c08d..52e9308d 100644 --- a/core/abstract_tests/job-list/ATS_datetime-response.adoc +++ b/core/abstract_tests/job-list/ATS_datetime-response.adoc @@ -1,26 +1,18 @@ -[[ats_job-list_datetime-response]][abstract_test] +[[ats_job-list_datetime-response]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/datetime-response -subject:: <> +identifier:: /conf/job-list/datetime-response +target:: <> test-purpose:: Validate that the `datetime` query parameter is processed correctly. - -[.component,class=test method] -===== - -[.component,class=step] --- -Get a list of jobs as per test <> and append the `datetime` query parameter to the request. +test-method:: ++ -- +1. Get a list of jobs as per test <> and append the `datetime` query parameter to the request. -[.component,class=step] --- -Inspect the value of the `created` (see: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/statusInfo.yaml[statusInfo.yaml]) property for each job listed in the response. --- +2. Inspect the value of the `created` (see: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/statusInfo.yaml[statusInfo.yaml]) property for each job listed in the response. -[.component,class=step] --- -Verify that the value of the `created` temporally intersects with the value specified for the `datetime` query parameter. +3. Verify that the value of the `created` temporally intersects with the value specified for the `datetime` query parameter. -- -===== ==== diff --git a/core/abstract_tests/job-list/ATS_duration-def.adoc b/core/abstract_tests/job-list/ATS_duration-def.adoc index 32107fcf..45360750 100644 --- a/core/abstract_tests/job-list/ATS_duration-def.adoc +++ b/core/abstract_tests/job-list/ATS_duration-def.adoc @@ -1,21 +1,16 @@ -[[ats_job-list_duration-definition]][abstract_test] +[[ats_job-list_duration-definition]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/duration-definition -subject:: <> +identifier:: /conf/job-list/duration-definition +target:: <> test-purpose:: Validate that the `minDuration` and `maxDuration` query parameter are constructed correctly. - -[.component,class=test method] -===== - -[.component,class=step] --- -Verify that the `minDuration` query parameter complies with its definition in requirement <>. +test-method:: ++ -- +1. Verify that the `minDuration` query parameter complies with its definition in requirement <>. -[.component,class=step] --- -Verify that the `maxDuration` query parameter complies with its definition in requirement <>. +2. Verify that the `maxDuration` query parameter complies with its definition in requirement <>. -- -===== ==== diff --git a/core/abstract_tests/job-list/ATS_duration-response.adoc b/core/abstract_tests/job-list/ATS_duration-response.adoc index 60313d2f..1498dcfb 100644 --- a/core/abstract_tests/job-list/ATS_duration-response.adoc +++ b/core/abstract_tests/job-list/ATS_duration-response.adoc @@ -1,55 +1,30 @@ -[[ats_job-list_duration-response]][abstract_test] +[[ats_job-list_duration-response]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/duration-response -subject:: <> +identifier:: /conf/job-list/duration-response +target:: <> test-purpose:: Validate that the `minDuration` and `maxDuration` query parameter are processed correctly. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a list of jobs as per test <> and append the `minDuration` query parameter to the request. +test-method:: ++ -- +1. Get a list of jobs as per test <> and append the `minDuration` query parameter to the request. -[.component,class=step] --- -Compute the duration of each job listed in the response document as per requirements <> depending on the current status of the job. --- +2. Compute the duration of each job listed in the response document as per requirements <> depending on the current status of the job. -[.component,class=step] --- -Verify that the computed duration of each job listed in the response is at least as long as the specified value of the `minDuration` query parameter. --- +3. Verify that the computed duration of each job listed in the response is at least as long as the specified value of the `minDuration` query parameter. -[.component,class=step] --- -Get a list of jobs as per test <> and append the `maxDuration` query parameter to the request. --- +4. Get a list of jobs as per test <> and append the `maxDuration` query parameter to the request. -[.component,class=step] --- -Compute the duration of each job listed in the response document as per requirements <> depending on the current status of the job. --- +5. Compute the duration of each job listed in the response document as per requirements <> depending on the current status of the job. -[.component,class=step] --- -Verify that the computed duration of each job listed in the response is no longer than the specified value of the `maxDuration` query parameter. --- +6. Verify that the computed duration of each job listed in the response is no longer than the specified value of the `maxDuration` query parameter. -[.component,class=step] --- -Get a list of jobs as per test <> and append the `minDuration` and `maxDuration` query parameters to the request. --- +7. Get a list of jobs as per test <> and append the `minDuration` and `maxDuration` query parameters to the request. -[.component,class=step] --- -Compute the duration of each job listed in the response document as per requirements <> depending on the current status of the job. --- +8. Compute the duration of each job listed in the response document as per requirements <> depending on the current status of the job. -[.component,class=step] --- -Verify that the computed duration of each job listed in the response is at least as long as the specified value of the `minDuration` query parameter AND no longer than the value of the `maxDuration` query parameter. +9. Verify that the computed duration of each job listed in the response is at least as long as the specified value of the `minDuration` query parameter AND no longer than the value of the `maxDuration` query parameter. -- -===== ==== diff --git a/core/abstract_tests/job-list/ATS_jl-limit-def.adoc b/core/abstract_tests/job-list/ATS_limit-def.adoc similarity index 100% rename from core/abstract_tests/job-list/ATS_jl-limit-def.adoc rename to core/abstract_tests/job-list/ATS_limit-def.adoc diff --git a/core/abstract_tests/job-list/ATS_jl-limit-response.adoc b/core/abstract_tests/job-list/ATS_limit-response.adoc similarity index 100% rename from core/abstract_tests/job-list/ATS_jl-limit-response.adoc rename to core/abstract_tests/job-list/ATS_limit-response.adoc diff --git a/core/abstract_tests/job-list/ATS_jl-links.adoc b/core/abstract_tests/job-list/ATS_links.adoc similarity index 100% rename from core/abstract_tests/job-list/ATS_jl-links.adoc rename to core/abstract_tests/job-list/ATS_links.adoc diff --git a/core/abstract_tests/job-list/ATS_op.adoc b/core/abstract_tests/job-list/ATS_op.adoc index 71e90837..4e8e47bc 100644 --- a/core/abstract_tests/job-list/ATS_op.adoc +++ b/core/abstract_tests/job-list/ATS_op.adoc @@ -1,21 +1,16 @@ -[[ats_job-list_job-list-op]][abstract_test] +[[ats_job-list_job-list-op]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/job-list-op -subject:: <> +identifier:: /conf/job-list/job-list-op +target:: <> test-purpose:: Validate that information about jobs can be retrieved from the expected location. - -[.component,class=test method] -===== - -[.component,class=step] --- -Issue an HTTP GET request to the URL /jobs. +test-method:: ++ -- +1. Issue an HTTP GET request to the URL /jobs. -[.component,class=step] --- -Validate the contents of the returned document using test <>. +2. Validate the contents of the returned document using test <>. -- -===== ==== diff --git a/core/abstract_tests/job-list/ATS_processid-def.adoc b/core/abstract_tests/job-list/ATS_processid-def.adoc index 99868683..bb3f7fd6 100644 --- a/core/abstract_tests/job-list/ATS_processid-def.adoc +++ b/core/abstract_tests/job-list/ATS_processid-def.adoc @@ -1,15 +1,14 @@ -[[ats_job-list_processID-definition]][abstract_test] +[[ats_job-list_processID-definition]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/processID-definition -subject:: <> +identifier:: /conf/job-list/processID-definition +target:: <> test-purpose:: Validate that the `processID` query parameter is constructed correctly. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that the `processID` query parameter complies with its definition in requirement <>. -- -===== ==== diff --git a/core/abstract_tests/job-list/ATS_processid-mandatory.adoc b/core/abstract_tests/job-list/ATS_processid-mandatory.adoc index 69fdc454..b039f5fc 100644 --- a/core/abstract_tests/job-list/ATS_processid-mandatory.adoc +++ b/core/abstract_tests/job-list/ATS_processid-mandatory.adoc @@ -1,20 +1,15 @@ -[[ats_job-list_processid-mandatory]][abstract_test] +[[ats_job-list_processid-mandatory]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/processID-mandatory -subject:: <> +identifier:: /conf/job-list/processID-mandatory +target:: <> test-purpose:: Validate that the `processID` property is present in every job. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a list of jobs as per test <>. +test-method:: ++ -- +1. Get a list of jobs as per test <>. -[.component,class=step] --- -Verify that each job includes a `processID` property. --- -===== +2. Verify that each job includes a `processID` property. ==== diff --git a/core/abstract_tests/job-list/ATS_processid-response.adoc b/core/abstract_tests/job-list/ATS_processid-response.adoc index 051cab5e..d233ee44 100644 --- a/core/abstract_tests/job-list/ATS_processid-response.adoc +++ b/core/abstract_tests/job-list/ATS_processid-response.adoc @@ -1,25 +1,17 @@ -[[ats_job-list_processid-response]][abstract_test] +[[ats_job-list_processid-response]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/processID-response -subject:: <> +identifier:: /conf/job-list/processID-response +target:: <> test-purpose:: Validate that the `processID` query parameter is processed correctly. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a list of jobs as per test <> and append the `processID` parameter to the request. +test-method:: ++ -- +1. Get a list of jobs as per test <> and append the `processID` parameter to the request. -[.component,class=step] --- -Inspect the value of the `processID` property for each job listed in the response. --- +2. Inspect the value of the `processID` property for each job listed in the response. -[.component,class=step] --- -Verify that that value of the `processID` property matches one of the values specified for the `processID` query parameter. --- -===== +3. Verify that that value of the `processID` property matches one of the values specified for the `processID` query parameter. ==== diff --git a/core/abstract_tests/job-list/ATS_status-def.adoc b/core/abstract_tests/job-list/ATS_status-def.adoc index 3f03c736..f182e479 100644 --- a/core/abstract_tests/job-list/ATS_status-def.adoc +++ b/core/abstract_tests/job-list/ATS_status-def.adoc @@ -1,15 +1,14 @@ -[[ats_job-list_status-definition]][abstract_test] +[[ats_job-list_status-definition]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/status-definition -subject:: <> +identifier:: /conf/job-list/status-definition +target:: <> test-purpose:: Validate that the `status` query parameter is constructed correctly. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that the `status` query parameter complies with its definition in requirement <>. -- -===== ==== diff --git a/core/abstract_tests/job-list/ATS_status-response.adoc b/core/abstract_tests/job-list/ATS_status-response.adoc index f40c86f3..29ca3459 100644 --- a/core/abstract_tests/job-list/ATS_status-response.adoc +++ b/core/abstract_tests/job-list/ATS_status-response.adoc @@ -1,26 +1,18 @@ -[[ats_job-list_status-response]][abstract_test] +[[ats_job-list_status-response]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/status-response -subject:: <> +identifier:: /conf/job-list/status-response +target:: <> test-purpose:: Validate that the `status` query parameter is processed correctly. - -[.component,class=test method] -===== - -[.component,class=step] --- -Get a list of jobs as per test <> and append the `status` query parameter to the request. +test-method:: ++ -- +1. Get a list of jobs as per test <> and append the `status` query parameter to the request. -[.component,class=step] --- -Inspect the value of the `status` property (see: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/statusInfo.yaml[statusInfo.yaml]) for each job listed in the response. --- +2. Inspect the value of the `status` property (see: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/statusInfo.yaml[statusInfo.yaml]) for each job listed in the response. -[.component,class=step] --- -Verify that the value of the `status` property matches one of the values specified for the `status` query parameter. +3. Verify that the value of the `status` property matches one of the values specified for the `status` query parameter. -- -===== ==== diff --git a/core/abstract_tests/job-list/ATS_success.adoc b/core/abstract_tests/job-list/ATS_success.adoc index 49e3b354..186cb701 100644 --- a/core/abstract_tests/job-list/ATS_success.adoc +++ b/core/abstract_tests/job-list/ATS_success.adoc @@ -1,22 +1,16 @@ [[ats_job-list_job-list-success]] + [abstract_test] ==== [%metadata] -label:: /conf/job-list/job-list-success -subject:: <> +identifier:: /conf/job-list/job-list-success +target:: <> test-purpose:: Validate that the job list content complies with the required structure and contents. - -[.component,class=test method] -===== -[.component,class=step] --- -Validate that a document was returned with an HTTP status code of 200. +test-method:: ++ -- +1. Validate that a document was returned with an HTTP status code of 200. -[.component,class=step] +2. Validate the job list content for all supported media types using the resources and tests identified in <> -- -Validate the job list content for all supported media types using the resources and tests identified in <> --- -===== - ==== diff --git a/core/abstract_tests/job-list/ATS_type-def.adoc b/core/abstract_tests/job-list/ATS_type-def.adoc index d8595bac..84c22b8d 100644 --- a/core/abstract_tests/job-list/ATS_type-def.adoc +++ b/core/abstract_tests/job-list/ATS_type-def.adoc @@ -1,15 +1,14 @@ -[[ats_job-list_type-definition]][abstract_test] +[[ats_job-list_type-definition]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/type-definition -subject:: <> +identifier:: /conf/job-list/type-definition +target:: <> test-purpose:: Validate that the `type` query parameter is constructed correctly. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that the `type` query parameter complies with its definition in requirement <>. -- -===== ==== diff --git a/core/abstract_tests/job-list/ATS_type-response.adoc b/core/abstract_tests/job-list/ATS_type-response.adoc index 292cef67..fc374368 100644 --- a/core/abstract_tests/job-list/ATS_type-response.adoc +++ b/core/abstract_tests/job-list/ATS_type-response.adoc @@ -1,25 +1,18 @@ -[[ats_job-list_type-response]][abstract_test] +[[ats_job-list_type-response]] + +[abstract_test] ==== [%metadata] -label:: /conf/job-list/type-response -subject:: <> +identifier:: /conf/job-list/type-response +target:: <> test-purpose:: Validate that the `type` query parameter is processed correctly. - -[.component,class=test method] -===== -[.component,class=step] --- -Get a list of jobs as per test <> and append the `type` query parameter to the request. +test-method:: ++ -- +1. Get a list of jobs as per test <> and append the `type` query parameter to the request. -[.component,class=step] --- -Inspect the value of the `type` property for each job listed in the response. --- +2. Inspect the value of the `type` property for each job listed in the response. -[.component,class=step] --- -Verify that that value of the `type` property matches one of the values specified for the `type` query parameter. +3. Verify that that value of the `type` property matches one of the values specified for the `type` query parameter. -- -===== ==== diff --git a/core/abstract_tests/json/ATS_definition.adoc b/core/abstract_tests/json/ATS_definition.adoc index 243c2382..ca6d72a6 100644 --- a/core/abstract_tests/json/ATS_definition.adoc +++ b/core/abstract_tests/json/ATS_definition.adoc @@ -1,21 +1,16 @@ [[ats_json_content]] + [abstract_test] ==== [%metadata] -label:: /conf/json/definition -subject:: <> +identifier:: /conf/json/definition +target:: <> test-purpose:: Verify support for JSON. - -[.component,class=test method] -===== -[.component,class=step] --- -A resource is requested with response media type of `application/json`. +test-method:: ++ -- +1. A resource is requested with response media type of `application/json`. -[.component,class=step] --- -All `200` responses SHALL support the following media types: `application/json` for all resources. +2. All `200` responses SHALL support the following media types: `application/json` for all resources. -- -===== ==== diff --git a/core/abstract_tests/oas30/ATS_completeness.adoc b/core/abstract_tests/oas30/ATS_completeness.adoc index 5f9e15b0..fd7c5d33 100644 --- a/core/abstract_tests/oas30/ATS_completeness.adoc +++ b/core/abstract_tests/oas30/ATS_completeness.adoc @@ -1,15 +1,14 @@ -[[ats_oas30_completeness]][abstract_test] +[[ats_oas30_completeness]] + +[abstract_test] ==== [%metadata] -label:: /conf/oas30/completeness -subject:: <> +identifier:: /conf/oas30/completeness +target:: <> test-purpose:: Verify the completeness of an OpenAPI document. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that for each operation, the OpenAPI document describes all link:https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#httpCodes[HTTP Status Codes] and link:https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#responseObject[Response Objects] that the API uses in responses. -- -===== ==== diff --git a/core/abstract_tests/oas30/ATS_definition-1.adoc b/core/abstract_tests/oas30/ATS_definition-1.adoc index 719b21de..518dd69b 100644 --- a/core/abstract_tests/oas30/ATS_definition-1.adoc +++ b/core/abstract_tests/oas30/ATS_definition-1.adoc @@ -1,21 +1,16 @@ -[[ats_oas30_oas-definition-1]][abstract_test] +[[ats_oas30_oas-definition-1]] + +[abstract_test] ==== [%metadata] -label:: /conf/oas30/oas-definition-1 -subject:: <> +identifier:: /conf/oas30/oas-definition-1 +target:: <> test-purpose:: Verify that JSON and HTML versions of the OpenAPI document are available. - -[.component,class=test method] -===== - -[.component,class=step] --- -Verify that an OpenAPI definition in JSON is available using the media type `application/vnd.oai.openapi+json;version=3.0` and link relation `service-desc` +test-method:: ++ -- +1. Verify that an OpenAPI definition in JSON is available using the media type `application/vnd.oai.openapi+json;version=3.0` and link relation `service-desc` -[.component,class=step] --- -Verify that an HTML version of the API definition is available using the media type `text/html` and link relation `service-doc`. +2. Verify that an HTML version of the API definition is available using the media type `text/html` and link relation `service-doc`. -- -===== ==== diff --git a/core/abstract_tests/oas30/ATS_definition-2.adoc b/core/abstract_tests/oas30/ATS_definition-2.adoc index 12703541..038de70e 100644 --- a/core/abstract_tests/oas30/ATS_definition-2.adoc +++ b/core/abstract_tests/oas30/ATS_definition-2.adoc @@ -1,15 +1,14 @@ -[[ats_oas30_oas-definition-2]][abstract_test] +[[ats_oas30_oas-definition-2]] + +[abstract_test] ==== [%metadata] -label:: /conf/oas30/oas-definition-2 -subject:: <> +identifier:: /conf/oas30/oas-definition-2 +target:: <> test-purpose:: Verify that the OpenAPI document is valid JSON. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that the JSON representation conforms to the <>. -- -===== ==== diff --git a/core/abstract_tests/oas30/ATS_exception-codes.adoc b/core/abstract_tests/oas30/ATS_exception-codes.adoc index 2e5a6314..f92479c0 100644 --- a/core/abstract_tests/oas30/ATS_exception-codes.adoc +++ b/core/abstract_tests/oas30/ATS_exception-codes.adoc @@ -1,15 +1,14 @@ -[[ats_oas30_exceptions-codes]][abstract_test] +[[ats_oas30_exceptions-codes]] + +[abstract_test] ==== [%metadata] -label:: /conf/oas30/exceptions-codes -subject:: <> +identifier:: /conf/oas30/exceptions-codes +target:: <> test-purpose:: Verify that the OpenAPI document fully describes potential exception codes. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- Verify that for each operation, the OpenAPI document describes all link:https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#httpCodes[HTTP Status Codes] that may be generated. -- -===== ==== diff --git a/core/abstract_tests/oas30/ATS_oas-impl.adoc b/core/abstract_tests/oas30/ATS_oas-impl.adoc index 3476d4bc..66f47d3d 100644 --- a/core/abstract_tests/oas30/ATS_oas-impl.adoc +++ b/core/abstract_tests/oas30/ATS_oas-impl.adoc @@ -1,21 +1,16 @@ -[[ats_oas30_oas-impl]][abstract_test] +[[ats_oas30_oas-impl]] + +[abstract_test] ==== [%metadata] -label:: /conf/oas30/oas-impl -subject:: <> +identifier:: /conf/oas30/oas-impl +target:: <> test-purpose:: Verify that all capabilities specified in the OpenAPI definition are implemented by the API. - -[.component,class=test method] -===== - -[.component,class=step] --- -Construct a path from each URL template including all server URL options and all enumerated path parameters. +test-method:: ++ -- +1. Construct a path from each URL template including all server URL options and all enumerated path parameters. -[.component,class=step] --- -For each path defined in the OpenAPI document, validate that the path performs in accordance with the API definition and the OGC API - Processes standard. +2. For each path defined in the OpenAPI document, validate that the path performs in accordance with the API definition and the OGC API - Processes standard. -- -===== ==== diff --git a/core/abstract_tests/oas30/ATS_security.adoc b/core/abstract_tests/oas30/ATS_security.adoc index dff72c6a..18b4ae06 100644 --- a/core/abstract_tests/oas30/ATS_security.adoc +++ b/core/abstract_tests/oas30/ATS_security.adoc @@ -1,21 +1,16 @@ -[[ats_oas30_security]][abstract_test] +[[ats_oas30_security]] + +[abstract_test] ==== [%metadata] -label:: /conf/oas30/security -subject:: <> +identifier:: /conf/oas30/security +target:: <> test-purpose:: Verify that any authentication protocols implemented by the API are documented in the OpenAPI document. - -[.component,class=test method] -===== - -[.component,class=step] --- -Identify all authentication protocols supported by the API. +test-method:: ++ -- +1. Identify all authentication protocols supported by the API. -[.component,class=step] --- -Validate that each authentication protocol is described in the OpenAPI document by a Security Schema Object and its use is specified by a Security Requirement Object. +2. Validate that each authentication protocol is described in the OpenAPI document by a Security Schema Object and its use is specified by a Security Requirement Object. -- -===== ==== diff --git a/core/abstract_tests/ogc-process-description/ATS_input-def.adoc b/core/abstract_tests/ogc-process-description/ATS_input-def.adoc index 0593674a..6bbcfe3c 100644 --- a/core/abstract_tests/ogc-process-description/ATS_input-def.adoc +++ b/core/abstract_tests/ogc-process-description/ATS_input-def.adoc @@ -1,15 +1,14 @@ -[[ats_ogc-process-description_input-def]][abstract_test] +[[ats_ogc-process-description_input-def]] + +[abstract_test] ==== [%metadata] -label:: /conf/ogc-process-description/input-def -subject:: <> +identifier:: /conf/ogc-process-description/input-def +target:: <> test-purpose:: Verify that the definition of each input for each process complies with the required structure and contents. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- For each input identified according to the test <> verify that the value of the `schema` key, that defines the input, validates according to the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/schema.yaml[schema.yaml]. -- -===== ==== diff --git a/core/abstract_tests/ogc-process-description/ATS_input-mixed-type.adoc b/core/abstract_tests/ogc-process-description/ATS_input-mixed-type.adoc index f1cb8ea6..a2581a8f 100644 --- a/core/abstract_tests/ogc-process-description/ATS_input-mixed-type.adoc +++ b/core/abstract_tests/ogc-process-description/ATS_input-mixed-type.adoc @@ -1,26 +1,18 @@ -[[ats_ogc-process-description_input-mixed-type]][abstract_test] +[[ats_ogc-process-description_input-mixed-type]] + +[abstract_test] ==== [%metadata] -label:: /conf/ogc-process-description/input-mixed-type -subject:: <> +identifier:: /conf/ogc-process-description/input-mixed-type +target:: <> test-purpose:: Validate that each input of mixed type complies with the required structure and contents. - -[.component,class=test method] -===== - -[.component,class=step] --- -Retrieve a description of each process according to test <>. +test-method:: ++ -- +1. Retrieve a description of each process according to test <>. -[.component,class=step] --- -For each process identify if the process has one or more inputs of mixed type. --- +2. For each process identify if the process has one or more inputs of mixed type. -[.component,class=step] --- -For each sub-schema of each identified input, verify that the definition validates according to the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/schema.yaml[schema.yaml]. +3. For each sub-schema of each identified input, verify that the definition validates according to the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/schema.yaml[schema.yaml]. -- -===== ==== diff --git a/core/abstract_tests/ogc-process-description/ATS_inputs-def.adoc b/core/abstract_tests/ogc-process-description/ATS_inputs-def.adoc index 6c402718..a2d2f93d 100644 --- a/core/abstract_tests/ogc-process-description/ATS_inputs-def.adoc +++ b/core/abstract_tests/ogc-process-description/ATS_inputs-def.adoc @@ -1,21 +1,16 @@ -[[ats_ogc-process-description_inputs-def]][abstract_test] +[[ats_ogc-process-description_inputs-def]] + +[abstract_test] ==== [%metadata] -label:: /conf/ogc-process-description/inputs-def -subject:: <> +identifier:: /conf/ogc-process-description/inputs-def +target:: <> test-purpose:: Verify that the definition of `inputs` for each process complies with the required structure and contents. - -[.component,class=test method] -===== - -[.component,class=step] --- -Retrieve a description of each process according to test <>. +test-method:: ++ -- +1. Retrieve a description of each process according to test <>. -[.component,class=step] --- -For each process, verify that the definition of the inputs conforms to the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/inputDescription.yaml[inputDescription.yaml]. +2. For each process, verify that the definition of the inputs conforms to the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/inputDescription.yaml[inputDescription.yaml]. -- -===== ==== diff --git a/core/abstract_tests/ogc-process-description/ATS_json-encoding.adoc b/core/abstract_tests/ogc-process-description/ATS_json-encoding.adoc index 4650aa6f..09054c68 100644 --- a/core/abstract_tests/ogc-process-description/ATS_json-encoding.adoc +++ b/core/abstract_tests/ogc-process-description/ATS_json-encoding.adoc @@ -1,21 +1,16 @@ -[[ats_ogc-process-description_json-encoding]][abstract_test] +[[ats_ogc-process-description_json-encoding]] + +[abstract_test] ==== [%metadata] -label:: /conf/ogc-process-description/json-encoding -subject:: <> +identifier:: /conf/ogc-process-description/json-encoding +target:: <> test-purpose:: Verify that a JSON-encoded OGC Process Description complies with the required structure and contents. - -[.component,class=test method] -===== - -[.component,class=step] --- -Retrieve a description of each process according to test <>. +test-method:: ++ -- +1. Retrieve a description of each process according to test <>. -[.component,class=step] --- -For each process, verify the contents of the response body validate against the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/process.yaml[process.yaml]. +2. For each process, verify the contents of the response body validate against the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/process.yaml[process.yaml]. -- -===== ==== diff --git a/core/abstract_tests/ogc-process-description/ATS_output-def.adoc b/core/abstract_tests/ogc-process-description/ATS_output-def.adoc index 225b43fa..3cdd4021 100644 --- a/core/abstract_tests/ogc-process-description/ATS_output-def.adoc +++ b/core/abstract_tests/ogc-process-description/ATS_output-def.adoc @@ -1,15 +1,12 @@ [[ats_ogc-process-description_output-def]][abstract_test] ==== [%metadata] -label:: /conf/ogc-process-description/output-def -subject:: <> +identifier:: /conf/ogc-process-description/output-def +target:: <> test-purpose:: Verify that the definition of each output for each process complies with the required structure and contents. - -[.component,class=test method] -===== -[.component,class=step] +test-method:: ++ -- For each output identified according to the test <> verify that the value of the `schema` key, that defines the output, validates according to the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/schema.yaml[schema.yaml]. -- -===== ==== diff --git a/core/abstract_tests/ogc-process-description/ATS_output-mixed-type.adoc b/core/abstract_tests/ogc-process-description/ATS_output-mixed-type.adoc index 04b12edd..63c800b0 100644 --- a/core/abstract_tests/ogc-process-description/ATS_output-mixed-type.adoc +++ b/core/abstract_tests/ogc-process-description/ATS_output-mixed-type.adoc @@ -1,26 +1,18 @@ -[[ats_ogc-process-description_output-mixed-type]][abstract_test] +[[ats_ogc-process-description_output-mixed-type]] + +[abstract_test] ==== [%metadata] -label:: /conf/ogc-process-description/output-mixed-type -subject:: <> +identifier:: /conf/ogc-process-description/output-mixed-type +target:: <> test-purpose:: Validate that each output of mixed type complies with the required structure and contents. - -[.component,class=test method] -===== - -[.component,class=step] --- -Retrieve a description of each process according to test <>. +test-method:: ++ -- +1. Retrieve a description of each process according to test <>. -[.component,class=step] --- -For each process identify if the process has one or more output of mixed type denoted by the use of the `oneOf` JSON Schema keyword. --- +2. For each process identify if the process has one or more output of mixed type denoted by the use of the `oneOf` JSON Schema keyword. -[.component,class=step] --- -For each sub-schema or each identified output, verify that the definition validates according to the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/schema.yaml[schema.yaml]. +3. For each sub-schema or each identified output, verify that the definition validates according to the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/schema.yaml[schema.yaml]. -- -===== ==== diff --git a/core/abstract_tests/ogc-process-description/ATS_outputs-def.adoc b/core/abstract_tests/ogc-process-description/ATS_outputs-def.adoc index cf113b8f..7f7948c8 100644 --- a/core/abstract_tests/ogc-process-description/ATS_outputs-def.adoc +++ b/core/abstract_tests/ogc-process-description/ATS_outputs-def.adoc @@ -1,21 +1,16 @@ -[[ats_ogc-process-description_outputs-def]][abstract_test] +[[ats_ogc-process-description_outputs-def]] + +[abstract_test] ==== [%metadata] -label:: /conf/ogc-process-description/outputs-def -subject:: <> +identifier:: /conf/ogc-process-description/outputs-def +target:: <> test-purpose:: Verify that the definition of `outputs` for each process complies with the required structure and contents. - -[.component,class=test method] -===== - -[.component,class=step] --- -Retrieve a description of each process according to test <>. +test-method:: ++ -- +1. Retrieve a description of each process according to test <>. -[.component,class=step] --- -For each process, verify that the definition of the outputs conforms to the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/outputDescription.yaml[outputDescription.yaml]. +2. For each process, verify that the definition of the outputs conforms to the JSON Schema: https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/core/openapi/schemas/outputDescription.yaml[outputDescription.yaml]. -- -===== ==== From a37db410aed811c7ecd97e2a55ef5b4f417ff64e Mon Sep 17 00:00:00 2001 From: Panagiotis Vretanos Date: Tue, 18 Jul 2023 13:21:31 -0400 Subject: [PATCH 2/2] Patch duplicate identifier. --- .../core/ATS_job-results-exception-no-such-job.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/abstract_tests/core/ATS_job-results-exception-no-such-job.adoc b/core/abstract_tests/core/ATS_job-results-exception-no-such-job.adoc index 3911dddf..87f22133 100644 --- a/core/abstract_tests/core/ATS_job-results-exception-no-such-job.adoc +++ b/core/abstract_tests/core/ATS_job-results-exception-no-such-job.adoc @@ -3,7 +3,7 @@ [abstract_test] ==== [%metadata] -identifier:: /conf/core/job-results-failed +identifier:: /conf/core/job-results-exception-no-such-job target:: <> test-purpose:: Validate that the job results retrieved using an invalid job identifier complies with the require structure and contents. test-method::