Closed mjacoby closed 7 years ago
I've rebased the pull request, should commit cleanly now.
This test is not part of conformance test suite as of Annex A in the specification of OGC SensorThings API.
Actually, A.2.1.2 Test: Request Data with $expand and $select states
Send requests with the $select option following the different usages as defined in the requirement http://www.opengis.net/spec/iot_sensing/1.0/req/request-data/select, check if the server returns appropriate result as defined in this specification.
And _http://www.opengis.net/spec/iot_sensing/1.0/req/request-data/select_ states
The $select system query option requests the service to return only the properties explicitly requested by the client. The value of a $select query option SHALL be a comma-separated list of selection clauses. Each selection clause SHALL be a property name (including navigation property names). In the response, the service SHALL return the specified content, if available, along with any available expanded navigation properties.
From my understanding the last part of the last sentence
... if available, along with any available expanded navigation properties.
states that also a combination of $select and $expand should be tested. So I kindly ask you to re-open this pull request or give a further explanation why this should not be part of the test suite.
The aim of the test suite is to test each of the query options separately and then test them all together to check the ordering. The whole test suite is aiming to test only the conformance of the service under test to SensorThings API and not testing the whole system. Testing the whole system can be huge and very time consuming specially when run from TEAM Engine and also it is not the goal of conformance test suite. If we want to add test for that last sentence we can only add a sample select without any navigation properties and then expand one of the navigation properties and check the result. But in my opinion it is not needed as part of the test, since A2.1.2 mentioned the request with $select.
Adds a test for queries with $select and $expand in combination as well as queries with $expand and nested $select.