Description
This appears to impact both of the tests noted in the issue title. Here's a copy/paste of test execution for one of them.
@orderby-timestamp-asc-filter-int-gt @2.4.4
Scenario: orderby-timestamp-asc-filter-int-gt - Query Support: $orderby timestamp asc # src/main/java/org/reso/certification/features/web-api/web-api-server.core.1.0.2.feature:110
Given a RESOScript file was provided # org.reso.certification.stepdefs.WebAPIServer.runBackground(WebAPIServer.java:1089)
And Client Settings and Parameters were read from the file # org.reso.certification.stepdefs.WebAPIServer.runBackground(WebAPIServer.java:1097)
And a test container was successfully created from the given RESOScript # org.reso.certification.stepdefs.WebAPIServer.runBackground(WebAPIServer.java:1105)
And the test container uses an authorization_code or client_credentials for authentication # org.reso.certification.stepdefs.WebAPIServer.runBackground(WebAPIServer.java:1119)
Given valid metadata have been retrieved # org.reso.certification.stepdefs.WebAPIServer.(WebAPIServer.java:1000)
Request ID: orderby-timestamp-asc-filter-int-gt
Request URI: https://api.flexmls.com/Reso/OData/Property?$top=20&$select=ListingKey,BedroomsTotal,OriginalEntryTimestamp&$orderby=OriginalEntryTimestamp%20asc&$filter=BedroomsTotal%20gt%201
Request succeeded...4354 bytes received.
When a GET request is made to the resolved Url in "orderby-timestamp-asc-filter-int-gt" # org.reso.certification.stepdefs.WebAPIServer.(WebAPIServer.java:251)
Asserted Response Code: 200, Server Response Code: 200
Then the server responds with a status code of 200 # org.reso.certification.stepdefs.WebAPIServer.(WebAPIServer.java:266)
Reported OData-Version header value: '4.0'
And the server has an OData-Version header value of "4.0" or "4.01" # org.reso.certification.stepdefs.WebAPIServer.(WebAPIServer.java:982)
Response is valid JSON!
And the response is valid JSON # org.reso.certification.stepdefs.WebAPIServer.(WebAPIServer.java:314)
Results count is: 20
And the response has results # org.reso.certification.stepdefs.WebAPIServer.(WebAPIServer.java:345)
Searching metadata for fields in given select list: [ListingKey, BedroomsTotal, OriginalEntryTimestamp]
And resource metadata for "Parameter_EndpointResource" contains the fields in the given select list # org.reso.certification.stepdefs.WebAPIServer.(WebAPIServer.java:737)
select list is: [ListingKey, BedroomsTotal, OriginalEntryTimestamp]
Number of Results: 20
Number of Fields: 3
Fields with Data: 58
Percent Fill: 96.7%
And data are present for fields contained within the given select list # org.reso.certification.stepdefs.WebAPIServer.(WebAPIServer.java:140)
And DateTimeOffset data in "Parameter_TimestampField" is sorted in "asc" order # org.reso.certification.stepdefs.WebAPIServer.(WebAPIServer.java:611)
java.lang.AssertionError: ERROR: java.lang.NullPointerException
The problem only seems to occur when a null value is encountered in the Parameter_TimestampField. Since an ascending sort is applied by the test we have no way around this one; we order nulls first.