This repository was archived by the owner on Dec 8, 2021. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +149
-2
lines changed
packages/graphqlgen/src/generators Expand file tree Collapse file tree 2 files changed +149
-2
lines changed Original file line number Diff line number Diff line change
1
+ import * as Common from './common'
2
+
3
+ it ( 'deepResolveInputTypes' , ( ) => {
4
+ const typeMap : Common . InputTypesMap = {
5
+ A : {
6
+ name : 'A' ,
7
+ type : {
8
+ name : 'A' ,
9
+ isInput : true ,
10
+ isEnum : false ,
11
+ isInterface : false ,
12
+ isObject : false ,
13
+ isScalar : false ,
14
+ isUnion : false ,
15
+ } ,
16
+ fields : [
17
+ {
18
+ name : 'b' ,
19
+ arguments : [ ] ,
20
+ type : {
21
+ name : 'B' ,
22
+ isInput : true ,
23
+ isEnum : false ,
24
+ isInterface : false ,
25
+ isObject : false ,
26
+ isScalar : false ,
27
+ isUnion : false ,
28
+ isRequired : false ,
29
+ isArray : false ,
30
+ } ,
31
+ } ,
32
+ {
33
+ name : 'c' ,
34
+ arguments : [ ] ,
35
+ type : {
36
+ name : 'C' ,
37
+ isInput : true ,
38
+ isEnum : false ,
39
+ isInterface : false ,
40
+ isObject : false ,
41
+ isScalar : false ,
42
+ isUnion : false ,
43
+ isRequired : false ,
44
+ isArray : false ,
45
+ } ,
46
+ } ,
47
+ ] ,
48
+ } ,
49
+ B : {
50
+ name : 'B' ,
51
+ type : {
52
+ name : 'B' ,
53
+ isInput : true ,
54
+ isEnum : false ,
55
+ isInterface : false ,
56
+ isObject : false ,
57
+ isScalar : false ,
58
+ isUnion : false ,
59
+ } ,
60
+ fields : [
61
+ {
62
+ name : 'd' ,
63
+ arguments : [ ] ,
64
+ type : {
65
+ name : 'D' ,
66
+ isInput : true ,
67
+ isEnum : false ,
68
+ isInterface : false ,
69
+ isObject : false ,
70
+ isScalar : false ,
71
+ isUnion : false ,
72
+ isRequired : false ,
73
+ isArray : false ,
74
+ } ,
75
+ } ,
76
+ ] ,
77
+ } ,
78
+ C : {
79
+ name : 'C' ,
80
+ type : {
81
+ name : 'C' ,
82
+ isInput : true ,
83
+ isEnum : false ,
84
+ isInterface : false ,
85
+ isObject : false ,
86
+ isScalar : false ,
87
+ isUnion : false ,
88
+ } ,
89
+ fields : [
90
+ {
91
+ name : 'd' ,
92
+ arguments : [ ] ,
93
+ type : {
94
+ name : 'D' ,
95
+ isInput : true ,
96
+ isEnum : false ,
97
+ isInterface : false ,
98
+ isObject : false ,
99
+ isScalar : false ,
100
+ isUnion : false ,
101
+ isRequired : false ,
102
+ isArray : false ,
103
+ } ,
104
+ } ,
105
+ ] ,
106
+ } ,
107
+ D : {
108
+ name : 'D' ,
109
+ type : {
110
+ name : 'D' ,
111
+ isInput : true ,
112
+ isEnum : false ,
113
+ isInterface : false ,
114
+ isObject : false ,
115
+ isScalar : false ,
116
+ isUnion : false ,
117
+ } ,
118
+ fields : [
119
+ {
120
+ name : 'foo' ,
121
+ arguments : [ ] ,
122
+ type : {
123
+ name : 'String' ,
124
+ isInput : false ,
125
+ isEnum : false ,
126
+ isInterface : false ,
127
+ isObject : false ,
128
+ isScalar : true ,
129
+ isUnion : false ,
130
+ isRequired : false ,
131
+ isArray : false ,
132
+ } ,
133
+ } ,
134
+ ] ,
135
+ } ,
136
+ }
137
+
138
+ expect ( Common . deepResolveInputTypes ( typeMap , 'A' ) ) . toMatchInlineSnapshot ( `
139
+ Array [
140
+ "A",
141
+ "B",
142
+ "D",
143
+ "C",
144
+ "D",
145
+ ]
146
+ ` )
147
+ } )
Original file line number Diff line number Diff line change @@ -229,10 +229,10 @@ export function getTypeFromGraphQLType(
229
229
return 'string'
230
230
}
231
231
232
- function deepResolveInputTypes (
232
+ export function deepResolveInputTypes (
233
233
inputTypesMap : InputTypesMap ,
234
234
typeName : string ,
235
- seen : { [ k : string ] : boolean } = { } ,
235
+ seen : Record < string , boolean > = { } ,
236
236
) : string [ ] {
237
237
const type = inputTypesMap [ typeName ]
238
238
if ( type ) {
You can’t perform that action at this time.
0 commit comments