DMTF / Redfish-Protocol-Validator

The Redfish Protocol Validator tests the HTTP protocol behavior of a Redfish service to validate that it conforms to the Redfish specification.
Other
14 stars 12 forks source link

Handle exceptions when links point to non-existent URIs (404) #84

Closed jautor closed 1 month ago

jautor commented 2 months ago

During testing of an implementation, I found that a link was populated with the correct URI, but the service did not actually populate that resource. Specifically, a GET of the /redfish/v1/EventService/Subscriptions (collection of EventDestination, which is part of the protocol tests) returned a 404. This is a bug in the implementation, but that raised an exception which crashed the tool - and therefore doesn't produce the report output.

Would be good for the tool to generally survive those unexpected 404's - those are all bugs that we can report.

mraineri commented 1 month ago

@jautor can you provide the exception trace for this so I can better see where to start looking?

jautor commented 1 month ago

I was mistaken about the root cause of this - the crash is due to a misspelled @odata.id (in the implementation as @odata.Id - uppercase) which the tool assumes will be found in the Subscriptions link object in EventService. I'll re-run and get the specific location of the crash. But it's probably the only time the service attempts to retrieve Subscriptions.