Skip to content

Commit 0fef3c4

Browse files
execute: Forbid to return null from serialize function (#3231)
Fixes #1579
1 parent 4f21cdc commit 0fef3c4

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

src/execution/__tests__/executor-test.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1123,7 +1123,7 @@ describe('Execute: Handles basic execution tasks', () => {
11231123
errors: [
11241124
{
11251125
message:
1126-
'Expected a value of type "CustomScalar" but received: "CUSTOM_VALUE"',
1126+
'Expected `CustomScalar.serialize("CUSTOM_VALUE")` to return non-nullable value, returned: undefined',
11271127
locations: [{ line: 1, column: 3 }],
11281128
path: ['customScalar'],
11291129
},

src/execution/execute.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -750,10 +750,10 @@ function completeLeafValue(
750750
result: unknown,
751751
): unknown {
752752
const serializedResult = returnType.serialize(result);
753-
if (serializedResult === undefined) {
753+
if (serializedResult == null) {
754754
throw new Error(
755-
`Expected a value of type "${inspect(returnType)}" but ` +
756-
`received: ${inspect(result)}`,
755+
`Expected \`${inspect(returnType)}.serialize(${inspect(result)})\` to ` +
756+
`return non-nullable value, returned: ${inspect(serializedResult)}`,
757757
);
758758
}
759759
return serializedResult;

0 commit comments

Comments
 (0)