Skip to content

Commit b04d063

Browse files
committed
fix: populate extensions.code of runtime errors
Without this fix, runtime errors (e.g. authorization problems) would not properly set the error code in a formatted GraphQL error. Not sure why this worked before. It definitely did not work in the regression tests.
1 parent 687d4e2 commit b04d063

12 files changed

+569
-111
lines changed

spec/regression/access-groups/tests/flex-search.result.json

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,16 @@
99
"column": 5
1010
}
1111
],
12-
"path": ["flexSearchFiles"]
12+
"path": [
13+
"flexSearchFiles"
14+
],
15+
"extensions": {
16+
"code": "PERMISSION_DENIED"
17+
}
1318
}
1419
],
1520
"data": {
1621
"flexSearchFiles": null
1722
}
1823
}
19-
}
24+
}

spec/regression/logistics/tests/field-permission-denied.result.json

Lines changed: 76 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,10 @@
1919
"path": [
2020
"Delivery",
2121
"totalValue"
22-
]
22+
],
23+
"extensions": {
24+
"code": "PERMISSION_DENIED"
25+
}
2326
},
2427
{
2528
"message": "Not authorized to read Forwarder objects (in Delivery.forwarder)",
@@ -32,7 +35,10 @@
3235
"path": [
3336
"Delivery",
3437
"forwarder"
35-
]
38+
],
39+
"extensions": {
40+
"code": "PERMISSION_DENIED"
41+
}
3642
},
3743
{
3844
"message": "Not authorized to read Delivery.totalValue",
@@ -46,7 +52,10 @@
4652
"allDeliveries",
4753
0,
4854
"totalValue"
49-
]
55+
],
56+
"extensions": {
57+
"code": "PERMISSION_DENIED"
58+
}
5059
},
5160
{
5261
"message": "Not authorized to read Delivery.totalValue",
@@ -60,7 +69,10 @@
6069
"HandlingUnit",
6170
"delivery",
6271
"totalValue"
63-
]
72+
],
73+
"extensions": {
74+
"code": "PERMISSION_DENIED"
75+
}
6476
},
6577
{
6678
"message": "Not authorized to read Country.totalInvestment",
@@ -73,7 +85,10 @@
7385
"path": [
7486
"Country",
7587
"totalInvestment"
76-
]
88+
],
89+
"extensions": {
90+
"code": "PERMISSION_DENIED"
91+
}
7792
}
7893
],
7994
"data": {
@@ -113,7 +128,10 @@
113128
"path": [
114129
"_allForwardersMeta",
115130
"count"
116-
]
131+
],
132+
"extensions": {
133+
"code": "PERMISSION_DENIED"
134+
}
117135
},
118136
{
119137
"message": "Not authorized to read Forwarder objects",
@@ -125,7 +143,10 @@
125143
],
126144
"path": [
127145
"allForwarders"
128-
]
146+
],
147+
"extensions": {
148+
"code": "PERMISSION_DENIED"
149+
}
129150
}
130151
],
131152
"data": {
@@ -147,7 +168,10 @@
147168
],
148169
"path": [
149170
"direct"
150-
]
171+
],
172+
"extensions": {
173+
"code": "PERMISSION_DENIED"
174+
}
151175
},
152176
{
153177
"message": "Not authorized to read SecretKey.key",
@@ -159,7 +183,10 @@
159183
],
160184
"path": [
161185
"simple"
162-
]
186+
],
187+
"extensions": {
188+
"code": "PERMISSION_DENIED"
189+
}
163190
},
164191
{
165192
"message": "Not authorized to read Delivery.totalValue",
@@ -171,7 +198,10 @@
171198
],
172199
"path": [
173200
"startsWith"
174-
]
201+
],
202+
"extensions": {
203+
"code": "PERMISSION_DENIED"
204+
}
175205
},
176206
{
177207
"message": "Not authorized to read Delivery.totalValue",
@@ -183,7 +213,10 @@
183213
],
184214
"path": [
185215
"throughRelation"
186-
]
216+
],
217+
"extensions": {
218+
"code": "PERMISSION_DENIED"
219+
}
187220
},
188221
{
189222
"message": "Not authorized to read Forwarder objects (in Delivery.forwarder)",
@@ -195,7 +228,10 @@
195228
],
196229
"path": [
197230
"toUnaccessibleEntity"
198-
]
231+
],
232+
"extensions": {
233+
"code": "PERMISSION_DENIED"
234+
}
199235
}
200236
],
201237
"data": {
@@ -218,7 +254,10 @@
218254
],
219255
"path": [
220256
"direct"
221-
]
257+
],
258+
"extensions": {
259+
"code": "PERMISSION_DENIED"
260+
}
222261
},
223262
{
224263
"message": "Not authorized to read Delivery.totalValue",
@@ -230,7 +269,10 @@
230269
],
231270
"path": [
232271
"throughRelation"
233-
]
272+
],
273+
"extensions": {
274+
"code": "PERMISSION_DENIED"
275+
}
234276
}
235277
],
236278
"data": {
@@ -250,7 +292,10 @@
250292
],
251293
"path": [
252294
"createDelivery"
253-
]
295+
],
296+
"extensions": {
297+
"code": "PERMISSION_DENIED"
298+
}
254299
}
255300
],
256301
"data": null
@@ -267,7 +312,10 @@
267312
],
268313
"path": [
269314
"updateDelivery"
270-
]
315+
],
316+
"extensions": {
317+
"code": "PERMISSION_DENIED"
318+
}
271319
},
272320
{
273321
"message": "Not authorized to update Forwarder objects, Not authorized to read Forwarder objects",
@@ -279,7 +327,10 @@
279327
],
280328
"path": [
281329
"updateForwarder"
282-
]
330+
],
331+
"extensions": {
332+
"code": "PERMISSION_DENIED"
333+
}
283334
},
284335
{
285336
"message": "Skipped because other mutations reported errors",
@@ -291,7 +342,10 @@
291342
],
292343
"path": [
293344
"update2"
294-
]
345+
],
346+
"extensions": {
347+
"code": "ATOMICITY_SKIP"
348+
}
295349
}
296350
],
297351
"data": {
@@ -312,7 +366,10 @@
312366
],
313367
"path": [
314368
"deleteForwarder"
315-
]
369+
],
370+
"extensions": {
371+
"code": "PERMISSION_DENIED"
372+
}
316373
}
317374
],
318375
"data": {

spec/regression/logistics/tests/flex-search-in-memory.result.json

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,10 @@
220220
],
221221
"path": [
222222
"flexSearchDeliveries"
223-
]
223+
],
224+
"extensions": {
225+
"code": "FLEX_SEARCH_TOO_MANY_OBJECTS"
226+
}
224227
}
225228
],
226229
"data": {
@@ -239,7 +242,10 @@
239242
],
240243
"path": [
241244
"flexSearchDeliveries"
242-
]
245+
],
246+
"extensions": {
247+
"code": "FLEX_SEARCH_TOO_MANY_OBJECTS"
248+
}
243249
}
244250
],
245251
"data": {
@@ -258,7 +264,10 @@
258264
],
259265
"path": [
260266
"_flexSearchDeliveriesMeta"
261-
]
267+
],
268+
"extensions": {
269+
"code": "FLEX_SEARCH_TOO_MANY_OBJECTS"
270+
}
262271
}
263272
],
264273
"data": null
@@ -275,7 +284,10 @@
275284
],
276285
"path": [
277286
"flexSearchDeliveries"
278-
]
287+
],
288+
"extensions": {
289+
"code": "FLEX_SEARCH_TOO_MANY_OBJECTS"
290+
}
279291
}
280292
],
281293
"data": {

spec/regression/logistics/tests/flex-search-primary-sort.result.json

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,12 @@
99
"column": 5
1010
}
1111
],
12-
"path": ["flexSearchHandlingUnits"]
12+
"path": [
13+
"flexSearchHandlingUnits"
14+
],
15+
"extensions": {
16+
"code": "FLEX_SEARCH_TOO_MANY_OBJECTS"
17+
}
1318
}
1419
],
1520
"data": {
@@ -31,4 +36,4 @@
3136
]
3237
}
3338
}
34-
}
39+
}

spec/regression/logistics/tests/permissions-creator.result.json

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,12 @@
1616
"column": 5
1717
}
1818
],
19-
"path": ["updateDelivery"]
19+
"path": [
20+
"updateDelivery"
21+
],
22+
"extensions": {
23+
"code": "PERMISSION_DENIED"
24+
}
2025
}
2126
],
2227
"data": {
@@ -33,7 +38,12 @@
3338
"column": 5
3439
}
3540
],
36-
"path": ["deleteDelivery"]
41+
"path": [
42+
"deleteDelivery"
43+
],
44+
"extensions": {
45+
"code": "PERMISSION_DENIED"
46+
}
3747
}
3848
],
3949
"data": {
@@ -58,4 +68,4 @@
5868
]
5969
}
6070
}
61-
}
71+
}

spec/regression/logistics/tests/permissions-deleter.result.json

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,12 @@
99
"column": 5
1010
}
1111
],
12-
"path": ["createDelivery"]
12+
"path": [
13+
"createDelivery"
14+
],
15+
"extensions": {
16+
"code": "PERMISSION_DENIED"
17+
}
1318
}
1419
],
1520
"data": null
@@ -24,7 +29,12 @@
2429
"column": 5
2530
}
2631
],
27-
"path": ["updateDelivery"]
32+
"path": [
33+
"updateDelivery"
34+
],
35+
"extensions": {
36+
"code": "PERMISSION_DENIED"
37+
}
2838
}
2939
],
3040
"data": {
@@ -50,4 +60,4 @@
5060
]
5161
}
5262
}
53-
}
63+
}

0 commit comments

Comments
 (0)