@@ -63,10 +63,13 @@ void getData_shouldReturnBadRequestOnInvalidXNameHeader() {
6363
6464 var response = client .send (request , BodyHandlers .ofString ());
6565 var statusCode = response .statusCode ();
66+ var contentType = response .headers ().firstValue ("Content-Type" ).orElse ("" );
6667 var responseBody = response .body ();
6768
6869 assertThat (statusCode ).isEqualTo (400 );
69- assertThat (responseBody ).isEmpty ();
70+ assertThat (contentType ).contains ("application/problem+json" );
71+ assertThat (responseBody ).contains ("keyword" );
72+ assertThat (responseBody ).contains ("pointer" );
7073
7174 } catch (IOException e ) {
7275 fail (e );
@@ -83,28 +86,29 @@ void postData_shouldReturnJsonBody() {
8386
8487 var body =
8588 """
86- {
87- "id": "some-id",
88- "age": 42,
89- "random": "d5af5004-8b5a-4db6-838e-38be773eac34",
90- "status": "ERROR",
91- "feelingGood": true,
92- "aList": [ "string", "string" ],
93- "anObject": {
94- "id": "some-id",
95- "age": 42,
96- "longNumber": 900,
97- "nested": {
98- "nestedValue": 43
99- }
100- },
101- "aListOfObjects": [
102- { "value": 42 },
103- { "value": 43 }
104- ],
105- "aDate": "2025-03-02",
106- "aDateTime": "2025-03-02T12:34:56Z"
107- }""" ;
89+ {
90+ "id": "some-id",
91+ "age": 42,
92+ "random": "d5af5004-8b5a-4db6-838e-38be773eac34",
93+ "status": "ERROR",
94+ "feelingGood": true,
95+ "aList": [ "string", "string" ],
96+ "anObject": {
97+ "id": "some-id",
98+ "age": 42,
99+ "longNumber": 900,
100+ "nested": {
101+ "nestedValue": 43
102+ }
103+ },
104+ "aListOfObjects": [
105+ { "value": 42 },
106+ { "value": 43 }
107+ ],
108+ "aDate": "2025-03-02",
109+ "aDateTime": "2025-03-02T12:34:56Z"
110+ }\
111+ """ ;
108112 var headers = Map .of ("correlation-id" , UUID .randomUUID ().toString ());
109113 var request = newRequest (server , path , "POST" , ofString (body ), headers );
110114
@@ -132,35 +136,39 @@ void postData_shouldReturnBadRequestOnMissingRequiredProperties() {
132136
133137 var body =
134138 """
135- {
136- "id": "some-id",
137- "age": 42,
138- "random": "d5af5004-8b5a-4db6-838e-38be773eac34",
139- "status": "ERROR",
140- "anObject": {
141- "id": "some-id",
142- "age": 42,
143- "longNumber": 900,
144- "nested": {
145- "nestedValue": 43
146- }
147- },
148- "aListOfObjects": [
149- { "value": 42 },
150- { "value": 43 }
151- ],
152- "aDate": "2025-03-02",
153- "aDateTime": "2025-03-02T12:34:56Z"
154- }""" ;
139+ {
140+ "id": "some-id",
141+ "age": 42,
142+ "random": "d5af5004-8b5a-4db6-838e-38be773eac34",
143+ "status": "ERROR",
144+ "anObject": {
145+ "id": "some-id",
146+ "age": 42,
147+ "longNumber": 900,
148+ "nested": {
149+ "nestedValue": 43
150+ }
151+ },
152+ "aListOfObjects": [
153+ { "value": 42 },
154+ { "value": 43 }
155+ ],
156+ "aDate": "2025-03-02",
157+ "aDateTime": "2025-03-02T12:34:56Z"
158+ }\
159+ """ ;
155160 var headers = Map .of ("correlation-id" , UUID .randomUUID ().toString ());
156161 var request = newRequest (server , path , "POST" , ofString (body ), headers );
157162
158163 var response = client .send (request , BodyHandlers .ofString ());
159164 var statusCode = response .statusCode ();
165+ var contentType = response .headers ().firstValue ("Content-Type" ).orElse ("" );
160166 var responseBody = response .body ();
161167
162168 assertThat (statusCode ).isEqualTo (400 );
163- assertThat (responseBody ).isEmpty ();
169+ assertThat (contentType ).contains ("application/problem+json" );
170+ assertThat (responseBody ).contains ("keyword" );
171+ assertThat (responseBody ).contains ("pointer" );
164172
165173 } catch (IOException e ) {
166174 fail (e );
@@ -183,11 +191,11 @@ void listObjects_shouldReturnJsonBody() {
183191
184192 var body =
185193 """
186- [
187- { "value": 42 },
188- { "value": 43 }
189- ]
190- """ ;
194+ [
195+ { "value": 42 },
196+ { "value": 43 }
197+ ]
198+ """ ;
191199 var headers = Map .of ("correlation-id" , UUID .randomUUID ().toString ());
192200 var request = newRequest (server , path , "POST" , ofString (body ), headers );
193201
@@ -217,10 +225,13 @@ void listObjects_shouldReturnBadRequestOnPassingObjectInsteadOfArray() {
217225
218226 var response = client .send (request , BodyHandlers .ofString ());
219227 var statusCode = response .statusCode ();
228+ var contentType = response .headers ().firstValue ("Content-Type" ).orElse ("" );
220229 var responseBody = response .body ();
221230
222231 assertThat (statusCode ).isEqualTo (400 );
223- assertThat (responseBody ).isEmpty ();
232+ assertThat (contentType ).contains ("application/problem+json" );
233+ assertThat (responseBody ).contains ("keyword" );
234+ assertThat (responseBody ).contains ("pointer" );
224235
225236 } catch (IOException e ) {
226237 fail (e );
@@ -271,10 +282,13 @@ void paramsQuery_shouldReturnBadRequestOnMissingRequiredQueryParams() {
271282
272283 var response = client .send (request , BodyHandlers .ofString ());
273284 var statusCode = response .statusCode ();
285+ var contentType = response .headers ().firstValue ("Content-Type" ).orElse ("" );
274286 var responseBody = response .body ();
275287
276288 assertThat (statusCode ).isEqualTo (400 );
277- assertThat (responseBody ).isEmpty ();
289+ assertThat (contentType ).contains ("application/problem+json" );
290+ assertThat (responseBody ).contains ("keyword" );
291+ assertThat (responseBody ).contains ("pointer" );
278292
279293 } catch (IOException e ) {
280294 fail (e );
@@ -341,16 +355,19 @@ void getPathParams_shouldReturnBadRequestOnBadFormatPathParam() {
341355 try (var server = newServer (Map .of ("path-params-multi" , new EchoHandler ()));
342356 var client = httpClient ()) {
343357
344- // '123' is not in [A-Za-z]
358+ // '123' does not match pattern [A-Za-z]+ for Name parameter
345359 var pathWithParams = path + "/1234567890/123/Case" ;
346360 var request = newRequest (server , pathWithParams , "GET" , noBody ());
347361
348362 var response = client .send (request , BodyHandlers .ofString ());
349363 var statusCode = response .statusCode ();
364+ var contentType = response .headers ().firstValue ("Content-Type" ).orElse ("" );
350365 var responseBody = response .body ();
351366
352- assertThat (statusCode ).isEqualTo (404 );
353- assertThat (responseBody ).isEmpty ();
367+ assertThat (statusCode ).isEqualTo (400 );
368+ assertThat (contentType ).contains ("application/problem+json" );
369+ assertThat (responseBody ).contains ("keyword" );
370+ assertThat (responseBody ).contains ("pointer" );
354371
355372 } catch (IOException e ) {
356373 fail (e );
0 commit comments