JIRA: https://issues.redhat.com/browse/QUARKUS-2743
Quarkus documentation: https://quarkus.io/guides/resteasy-reactive#negotiation
Upstream issue: quarkusio/quarkus#29732
Consuming multiple media types from a resource method works in Quarkus 2.13.6.
Tests should verify:
- Response must contain 415 Unsupported Media Type when:
- no resource method consumes request standard content type nor wild card
- no resource method consumes request custom content type nor wild card
- Matching request to resource method works when multiple endpoints listen on the same path and:
- resource method consumes single media type
- resource method consumes one of media types
- the most specific reference is selected when selecting from wildcards and media content subtypes
- resource method is not annotated with
@Consumes
- request contains accept headers; the headers must serve as additional selection parameter when consumed content types are matching
- resource methods for both exact match and wildcard exists; exact match must have priority over wildcard
- request contains media subtype wildcard
- request contains quality values; quality values must determine selected content type
Upstream test coverage verifies simple scenario with multiple content types. Quarkus QE Test Suite does not cover multiple media types matching.
New scenarios are going to be added to the http/JAXRS-reactive
module of Quarkus Test suite. Multiple test method are
going to be needed as well as respective resource class with methods consuming and producing huge variety of content types.
All verifications can be with HTTP response status and body checks.
Tests only needs to be run on bare metal instances as OpenShift run would not provide extra information.
- No additional requirements for resources in lab
- Required additional time for the test execution should be below 4 minutes
- No measurable additional requirements for a Native image scenario
Following actions were taken to ensure familiarity:
- Ensure documentation provides clear explanation on configuration options
- Ensure good user experience and simplicity of use
- Tester: Michal Vavřík [email protected]