Skip to content

Commit dfca9bf

Browse files
authored
Revert "fix(jsonld): duplicate error fields when prefix is enabled (#7021)" (#7074)
1 parent 615bdd6 commit dfca9bf

17 files changed

+56
-45
lines changed

features/hydra/collection.feature

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -479,7 +479,7 @@ Feature: Collections support
479479

480480
When I send a "GET" request to "/dummies?itemsPerPage=0&page=2"
481481
Then the response status code should be 400
482-
And the JSON node "detail" should be equal to "Page should not be greater than 1 if limit is equal to 0"
482+
And the JSON node "description" should be equal to "Page should not be greater than 1 if limit is equal to 0"
483483

484484
Scenario: Cursor-based pagination with an empty collection
485485
When I send a "GET" request to "/so_manies"

features/hydra/error.feature

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ Feature: Error handling
1616
And the header "Content-Type" should be equal to "application/problem+json; charset=utf-8"
1717
And the header "Link" should contain '<http://www.w3.org/ns/hydra/error>; rel="http://www.w3.org/ns/json-ld#error"'
1818
And the JSON node "type" should exist
19-
And the JSON node "title" should not exists
19+
And the JSON node "title" should be equal to "An error occurred"
2020
And the JSON node "hydra:title" should be equal to "An error occurred"
2121
And the JSON node "detail" should exist
22-
And the JSON node "description" should not exist
22+
And the JSON node "description" should exist
2323
And the JSON node "hydra:description" should exist
2424
And the JSON node "trace" should exist
2525
And the JSON node "status" should exist
@@ -49,8 +49,10 @@ Feature: Error handling
4949
}
5050
],
5151
"detail": "name: This value should not be blank.",
52+
"title": "An error occurred",
5253
"hydra:title": "An error occurred",
5354
"hydra:description": "name: This value should not be blank.",
55+
"description": "name: This value should not be blank.",
5456
"type": "/validation_errors/c1051bb4-d103-4f74-8988-acbcafc7fdc3"
5557
}
5658
"""
@@ -67,7 +69,7 @@ Feature: Error handling
6769
And the header "Link" should contain '<http://www.w3.org/ns/hydra/error>; rel="http://www.w3.org/ns/json-ld#error"'
6870
And the JSON node "@context" should exist
6971
And the JSON node "type" should exist
70-
And the JSON node "hydra:title" should be equal to "An error occurred"
72+
And the JSON node "title" should be equal to "An error occurred"
7173
And the JSON node "detail" should exist
7274

7375
Scenario: Get an rfc 7807 not found error
@@ -82,9 +84,9 @@ Feature: Error handling
8284
And the header "Link" should contain '<http://www.w3.org/ns/hydra/error>; rel="http://www.w3.org/ns/json-ld#error"'
8385
And the JSON node "@context" should exist
8486
And the JSON node "type" should exist
85-
And the JSON node "hydra:title" should be equal to "An error occurred"
87+
And the JSON node "title" should be equal to "An error occurred"
8688
And the JSON node "detail" should exist
87-
And the JSON node "description" should not exist
89+
And the JSON node "description" should exist
8890

8991
Scenario: Get an rfc 7807 bad method error
9092
When I add "Content-Type" header equal to "application/ld+json"
@@ -99,9 +101,9 @@ Feature: Error handling
99101
And the header "Link" should contain '<http://www.w3.org/ns/hydra/error>; rel="http://www.w3.org/ns/json-ld#error"'
100102
And the JSON node "@context" should exist
101103
And the JSON node "type" should exist
102-
And the JSON node "hydra:title" should be equal to "An error occurred"
104+
And the JSON node "title" should be equal to "An error occurred"
103105
And the JSON node "detail" should exist
104-
And the JSON node "description" should not exist
106+
And the JSON node "description" should exist
105107

106108
Scenario: Get an rfc 7807 validation error
107109
When I add "Content-Type" header equal to "application/ld+json"
@@ -116,7 +118,7 @@ Feature: Error handling
116118
And the header "Link" should contain '<http://www.w3.org/ns/hydra/error>; rel="http://www.w3.org/ns/json-ld#error"'
117119
And the JSON node "@context" should exist
118120
And the JSON node "type" should exist
119-
And the JSON node "hydra:title" should be equal to "An error occurred"
121+
And the JSON node "title" should be equal to "An error occurred"
120122
And the JSON node "detail" should exist
121123
And the JSON node "violations" should exist
122124

@@ -131,8 +133,8 @@ Feature: Error handling
131133
And the header "Content-Type" should be equal to "application/problem+json; charset=utf-8"
132134
And the header "Link" should contain '<http://www.w3.org/ns/hydra/error>; rel="http://www.w3.org/ns/json-ld#error"'
133135
And the JSON node "type" should exist
134-
And the JSON node "hydra:title" should be equal to "An error occurred"
136+
And the JSON node "title" should be equal to "An error occurred"
135137
And the JSON node "detail" should exist
136-
And the JSON node "description" should not exist
138+
And the JSON node "description" should exist
137139
And the JSON node "trace" should exist
138140
And the JSON node "status" should exist

features/jsonld/input_output.feature

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ Feature: JSON-LD DTO input and output
309309
"""
310310
Then the response status code should be 400
311311
And the response should be in JSON
312-
And the JSON node "detail" should be equal to "The input data is misformatted."
312+
And the JSON node "description" should be equal to "The input data is misformatted."
313313

314314
@!mongodb
315315
Scenario: Reset password through an input DTO without DataTransformer

features/main/attribute_resource.feature

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ Feature: Resource attributes
100100
And the response should be in JSON
101101
And the header "Content-Type" should be equal to "application/problem+json; charset=utf-8"
102102
And the header "Link" should contain '<http://www.w3.org/ns/hydra/error>; rel="http://www.w3.org/ns/json-ld#error"'
103-
And the JSON node "detail" should be equal to 'Unable to generate an IRI for the item of type "ApiPlatform\Tests\Fixtures\TestBundle\Entity\IncompleteUriVariableConfigured"'
103+
And the JSON node "description" should be equal to 'Unable to generate an IRI for the item of type "ApiPlatform\Tests\Fixtures\TestBundle\Entity\IncompleteUriVariableConfigured"'
104104

105105
Scenario: Uri variables with Post operation
106106
When I add "Content-Type" header equal to "application/ld+json"

features/main/crud.feature

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ Feature: Create-Retrieve-Update-Delete
9696
When I add "Content-Type" header equal to "application/ld+json"
9797
And I send a "POST" request to "/dummies"
9898
Then the response status code should be 400
99-
And the JSON node "detail" should be equal to "Syntax error"
99+
And the JSON node "description" should be equal to "Syntax error"
100100

101101
Scenario: Get a not found exception
102102
When I send a "GET" request to "/dummies/42"
@@ -554,7 +554,7 @@ Feature: Create-Retrieve-Update-Delete
554554
When I add "Content-Type" header equal to "application/ld+json"
555555
And I send a "PUT" request to "/dummies/1"
556556
Then the response status code should be 400
557-
And the JSON node "detail" should be equal to "Syntax error"
557+
And the JSON node "description" should be equal to "Syntax error"
558558

559559
Scenario: Delete a resource
560560
When I send a "DELETE" request to "/dummies/1"

features/main/not_exposed.feature

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ Feature: Expose only a collection of objects
171171
When I send a "GET" request to "<uri>"
172172
Then the response status code should be 404
173173
And the response should be in JSON
174-
And the JSON node "detail" should be equal to "<description>"
174+
And the JSON node "description" should be equal to "<description>"
175175
Examples:
176176
| uri | description |
177177
| /tables/12345 | This route does not aim to be called. |
@@ -181,7 +181,7 @@ Feature: Expose only a collection of objects
181181
When I send a "GET" request to "<uri>"
182182
Then the response status code should be 404
183183
And the response should be in JSON
184-
And the JSON node "detail" should be equal to "<description>"
184+
And the JSON node "description" should be equal to "<description>"
185185
Examples:
186186
| uri | description |
187187
| /.well-known/genid/12345 | This route is not exposed on purpose. It generates an IRI for a collection resource without identifier nor item operation. |

features/main/relation.feature

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -472,7 +472,7 @@ Feature: Relations support
472472
Then the response status code should be 400
473473
And the response should be in JSON
474474
And the header "Content-Type" should be equal to "application/problem+json; charset=utf-8"
475-
And the JSON node "detail" should contain 'Invalid IRI "certainly not an IRI".'
475+
And the JSON node "description" should contain 'Invalid IRI "certainly not an IRI".'
476476

477477
Scenario: Passing an invalid type to a relation
478478
When I add "Content-Type" header equal to "application/ld+json"
@@ -495,18 +495,18 @@ Feature: Relations support
495495
"type": "string",
496496
"pattern": "^hydra:Error$"
497497
},
498-
"hydra:title": {
498+
"title": {
499499
"type": "string",
500500
"pattern": "^An error occurred$"
501501
},
502-
"detail": {
502+
"description": {
503503
"pattern": "^The type of the \"ApiPlatform\\\\Tests\\\\Fixtures\\\\TestBundle\\\\(Document|Entity)\\\\RelatedDummy\" resource must be \"array\" \\(nested document\\) or \"string\" \\(IRI\\), \"integer\" given.$"
504504
}
505505
},
506506
"required": [
507507
"@type",
508-
"hydra:title",
509-
"detail"
508+
"title",
509+
"description"
510510
]
511511
}
512512
"""

features/main/union_intersect_types.feature

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,4 +118,4 @@ Feature: Union/Intersect types
118118
Then the response status code should be 400
119119
And the response should be in JSON
120120
And the header "Content-Type" should be equal to "application/problem+json; charset=utf-8"
121-
And the JSON node "detail" should be equal to 'Could not denormalize object of type "ApiPlatform\Tests\Fixtures\TestBundle\ApiResource\Issue5452\ActivableInterface", no supporting normalizer found.'
121+
And the JSON node "description" should be equal to 'Could not denormalize object of type "ApiPlatform\Tests\Fixtures\TestBundle\ApiResource\Issue5452\ActivableInterface", no supporting normalizer found.'

features/main/validation.feature

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ Feature: Using validations groups
3131
{
3232
"@context": "/contexts/ConstraintViolation",
3333
"@type": "ConstraintViolation",
34-
"detail": "name: This value should not be null.",
34+
"title": "An error occurred",
35+
"description": "name: This value should not be null.",
3536
"violations": [
3637
{
3738
"propertyPath": "name",
@@ -59,7 +60,8 @@ Feature: Using validations groups
5960
{
6061
"@context": "/contexts/ConstraintViolation",
6162
"@type": "ConstraintViolation",
62-
"detail": "title: This value should not be null.",
63+
"title": "An error occurred",
64+
"description": "title: This value should not be null.",
6365
"violations": [
6466
{
6567
"propertyPath": "title",
@@ -85,6 +87,7 @@ Feature: Using validations groups
8587
And the JSON node "violations[0].message" should be equal to "This value should not be null."
8688
And the JSON node "violations[0].propertyPath" should be equal to "test"
8789
And the JSON node "detail" should be equal to "test: This value should not be null."
90+
And the JSON node "description" should be equal to "test: This value should not be null."
8891
And the header "Content-Type" should be equal to "application/problem+json; charset=utf-8"
8992

9093
@!mongodb

features/mongodb/filters.feature

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@ Feature: Filters on collections
1313
And the header "Content-Type" should be equal to "application/problem+json; charset=utf-8"
1414
And the JSON node "@context" should be equal to "/contexts/Error"
1515
And the JSON node "@type" should be equal to "hydra:Error"
16-
And the JSON node "detail" should be equal to "Cannot use reference 'badFourthLevel' in class 'ThirdLevel' for lookup or graphLookup: dbRef references are not supported."
16+
And the JSON node "title" should be equal to "An error occurred"
17+
And the JSON node "description" should be equal to "Cannot use reference 'badFourthLevel' in class 'ThirdLevel' for lookup or graphLookup: dbRef references are not supported."
1718
And the JSON node "trace" should exist
1819

1920
Scenario: Error when getting collection with nested properties if references are not correctly stored (not owning side)
@@ -23,5 +24,6 @@ Feature: Filters on collections
2324
And the header "Content-Type" should be equal to "application/problem+json; charset=utf-8"
2425
And the JSON node "@context" should be equal to "/contexts/Error"
2526
And the JSON node "@type" should be equal to "hydra:Error"
26-
And the JSON node "detail" should be equal to "Cannot use reference 'badThirdLevel' in class 'FourthLevel' for lookup or graphLookup: dbRef references are not supported."
27+
And the JSON node "title" should be equal to "An error occurred"
28+
And the JSON node "description" should be equal to "Cannot use reference 'badThirdLevel' in class 'FourthLevel' for lookup or graphLookup: dbRef references are not supported."
2729
And the JSON node "trace" should exist

0 commit comments

Comments
 (0)