Commit 0767861
authored
Fix/optimize value coercion check for OneOf type (#4181)
Where a JavaScript value is coerced to a GraphQL OneOf Input Type, a
null value should only be reported when the "one of" condition is
satisfied. The code block starting at line 158
[here](https://github.com/graphql/graphql-js/blob/1dbdadc6f46d2c97c71c7a4f5c61a2c75d1536ae/src/utilities/coerceInputValue.ts#L158)
that accesses `keys[0]` should not be executed if `keys` is empty or
contains more than one item.
The PR fixes this by adding an else statement. Alternatively, the
"if/else" branches could be reversed, and the `keys.length !== 1` check
should become a `keys.length === 1` check.1 parent bb8e574 commit 0767861
1 file changed
+10
-10
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
199 | 199 | | |
200 | 200 | | |
201 | 201 | | |
202 | | - | |
203 | | - | |
204 | | - | |
205 | | - | |
206 | | - | |
207 | | - | |
208 | | - | |
209 | | - | |
210 | | - | |
211 | | - | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
212 | 212 | | |
213 | 213 | | |
214 | 214 | | |
| |||
0 commit comments