Skip to content

Commit 48fa8e9

Browse files
committed
update tests
1 parent a08dcdf commit 48fa8e9

File tree

3 files changed

+81
-35
lines changed

3 files changed

+81
-35
lines changed

packages/utils/tests/createGraphQLError.test.ts

Lines changed: 0 additions & 19 deletions
This file was deleted.
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
import { ASTNode, GraphQLError, Kind, versionInfo } from 'graphql';
2+
import {
3+
createGraphQLError,
4+
ERROR_EXTENSION_SCHEMA_COORDINATE,
5+
locatedError,
6+
relocatedError,
7+
} from '../src/errors';
8+
9+
describe('Errors', () => {
10+
describe('relocatedError', () => {
11+
it('should adjust the path of a GraphqlError', () => {
12+
const originalError = createGraphQLError('test', {
13+
path: ['test'],
14+
extensions: {
15+
[ERROR_EXTENSION_SCHEMA_COORDINATE]: 'Query.test',
16+
},
17+
});
18+
const newError = relocatedError(originalError, ['test', 1, 'id'], {
19+
fieldName: 'id',
20+
parentType: { name: 'Test' },
21+
});
22+
const expectedError = createGraphQLError('test', {
23+
path: ['test', 1, 'id'],
24+
extensions: {
25+
[ERROR_EXTENSION_SCHEMA_COORDINATE]: 'Query.test',
26+
},
27+
});
28+
expect(newError).toEqual(expectedError);
29+
});
30+
});
31+
32+
describe('locatedError', () => {
33+
it('should add path, nodes and coordinate to error', () => {
34+
const originalError = createGraphQLError('test');
35+
const nodes: ASTNode[] = [{ kind: Kind.DOCUMENT, definitions: [] }];
36+
const error = locatedError(originalError, nodes, ['test'], {
37+
fieldName: 'test',
38+
parentType: { name: 'Query' },
39+
});
40+
expect(error.nodes).toBe(nodes);
41+
expect(error.path).toEqual(['test']);
42+
if (versionInfo.major !== 16) {
43+
expect(error.extensions).toEqual({
44+
[ERROR_EXTENSION_SCHEMA_COORDINATE]: 'Query.test',
45+
});
46+
}
47+
});
48+
});
49+
50+
describe('createGraphQLError', () => {
51+
it('should handle non Error originalError', () => {
52+
const error = createGraphQLError('message', {
53+
originalError: {
54+
message: 'originalError',
55+
extensions: { code: 'ORIGINAL_ERROR' },
56+
} as any,
57+
});
58+
expect(error.originalError).toBeInstanceOf(GraphQLError);
59+
expect(error).toMatchObject({
60+
message: 'message',
61+
originalError: {
62+
message: 'originalError',
63+
extensions: { code: 'ORIGINAL_ERROR' },
64+
},
65+
});
66+
});
67+
68+
it('should handle coordinate', () => {
69+
if (versionInfo.major !== 16) {
70+
const error = createGraphQLError('message', {
71+
extensions: {
72+
[ERROR_EXTENSION_SCHEMA_COORDINATE]: 'Query.test',
73+
},
74+
});
75+
expect(error.extensions).toMatchObject({
76+
[ERROR_EXTENSION_SCHEMA_COORDINATE]: 'Query.test',
77+
});
78+
}
79+
});
80+
});
81+
});

packages/utils/tests/relocatedError.test.ts

Lines changed: 0 additions & 16 deletions
This file was deleted.

0 commit comments

Comments
 (0)