8
8
from graphql .type import GraphQLField , GraphQLObjectType , GraphQLSchema , GraphQLString
9
9
10
10
11
- def _create_schema (
12
- tp : GraphQLObjectType , is_subscription : bool = False
13
- ) -> GraphQLSchema :
14
- if is_subscription :
15
- noop_type = GraphQLObjectType (
16
- "Noop" , {"noop" : GraphQLField (GraphQLString , resolve = lambda * _ : "noop" )}
17
- )
18
- return GraphQLSchema (query = noop_type , subscription = tp )
19
- return GraphQLSchema (tp )
11
+ def _create_subscription_schema (tp : GraphQLObjectType ) -> GraphQLSchema :
12
+ noop_type = GraphQLObjectType (
13
+ "Noop" , {"noop" : GraphQLField (GraphQLString , resolve = lambda * _ : "noop" )}
14
+ )
15
+ return GraphQLSchema (query = noop_type , subscription = tp )
20
16
21
17
22
18
def describe_middleware ():
@@ -35,7 +31,7 @@ def field(self, _info):
35
31
36
32
middlewares = MiddlewareManager ()
37
33
result = execute (
38
- _create_schema (test_type ), doc , Data (), middleware = middlewares
34
+ GraphQLSchema (test_type ), doc , Data (), middleware = middlewares
39
35
)
40
36
41
37
assert result .data ["field" ] == "resolved" # type: ignore
@@ -64,7 +60,7 @@ def reverse_middleware(next_, *args, **kwargs):
64
60
65
61
middlewares = MiddlewareManager (reverse_middleware )
66
62
result = execute (
67
- _create_schema (test_type ), doc , Data (), middleware = middlewares
63
+ GraphQLSchema (test_type ), doc , Data (), middleware = middlewares
68
64
)
69
65
70
66
assert result .data == {"first" : "eno" , "second" : "owt" } # type: ignore
@@ -97,7 +93,7 @@ def capitalize_middleware(next_, *args, **kwargs):
97
93
98
94
middlewares = MiddlewareManager (reverse_middleware , capitalize_middleware )
99
95
result = execute (
100
- _create_schema (test_type ), doc , Data (), middleware = middlewares
96
+ GraphQLSchema (test_type ), doc , Data (), middleware = middlewares
101
97
)
102
98
103
99
assert result .data == {"first" : "Eno" , "second" : "Owt" } # type: ignore
@@ -127,7 +123,7 @@ async def reverse_middleware(next_, *args, **kwargs):
127
123
128
124
middlewares = MiddlewareManager (reverse_middleware )
129
125
awaitable_result = execute (
130
- _create_schema (test_type ), doc , Data (), middleware = middlewares
126
+ GraphQLSchema (test_type ), doc , Data (), middleware = middlewares
131
127
)
132
128
assert isinstance (awaitable_result , Awaitable )
133
129
result = await awaitable_result
@@ -159,7 +155,7 @@ def resolve(self, next_, *args, **kwargs):
159
155
160
156
middlewares = MiddlewareManager (ReverseMiddleware ())
161
157
result = execute (
162
- _create_schema (test_type ), doc , Data (), middleware = middlewares
158
+ GraphQLSchema (test_type ), doc , Data (), middleware = middlewares
163
159
)
164
160
165
161
assert result .data == {"first" : "eno" , "second" : "owt" } # type: ignore
@@ -202,13 +198,13 @@ def resolve(self, next_, *args, **kwargs):
202
198
203
199
middlewares = MiddlewareManager (reverse_middleware , CaptitalizeMiddleware ())
204
200
result = execute (
205
- _create_schema (test_type ), doc , Data (), middleware = middlewares
201
+ GraphQLSchema (test_type ), doc , Data (), middleware = middlewares
206
202
)
207
203
assert result .data == {"field" : "Devloser" } # type: ignore
208
204
209
205
middlewares = MiddlewareManager (CaptitalizeMiddleware (), reverse_middleware )
210
206
result = execute (
211
- _create_schema (test_type ), doc , Data (), middleware = middlewares
207
+ GraphQLSchema (test_type ), doc , Data (), middleware = middlewares
212
208
)
213
209
assert result .data == {"field" : "devloseR" } # type: ignore
214
210
@@ -235,15 +231,15 @@ async def test_resolve(self, next_, *args, **kwargs):
235
231
236
232
middlewares = MiddlewareManager (reverse_middleware , CaptitalizeMiddleware ())
237
233
awaitable_result = execute (
238
- _create_schema (test_type ), doc , Data (), middleware = middlewares
234
+ GraphQLSchema (test_type ), doc , Data (), middleware = middlewares
239
235
)
240
236
assert isinstance (awaitable_result , Awaitable )
241
237
result = await awaitable_result
242
238
assert result .data == {"field" : "Devloser" }
243
239
244
240
middlewares = MiddlewareManager (CaptitalizeMiddleware (), reverse_middleware )
245
241
awaitable_result = execute (
246
- _create_schema (test_type ), doc , Data (), middleware = middlewares
242
+ GraphQLSchema (test_type ), doc , Data (), middleware = middlewares
247
243
)
248
244
assert isinstance (awaitable_result , Awaitable )
249
245
result = await awaitable_result
@@ -273,7 +269,7 @@ async def reverse_middleware(next_, value, info, **kwargs):
273
269
return awaitable_maybe [::- 1 ]
274
270
275
271
agen = subscribe (
276
- _create_schema (test_type , is_subscription = True ),
272
+ _create_subscription_schema (test_type ),
277
273
doc ,
278
274
middleware = MiddlewareManager (reverse_middleware ),
279
275
)
@@ -294,7 +290,7 @@ def field(self, _info):
294
290
"TestType" , {"field" : GraphQLField (GraphQLString )}
295
291
)
296
292
297
- result = execute (_create_schema (test_type ), doc , Data (), middleware = None )
293
+ result = execute (GraphQLSchema (test_type ), doc , Data (), middleware = None )
298
294
299
295
assert result .data ["field" ] == "resolved" # type: ignore
300
296
@@ -310,7 +306,7 @@ def field(self, _info):
310
306
"TestType" , {"field" : GraphQLField (GraphQLString )}
311
307
)
312
308
313
- result = execute (_create_schema (test_type ), doc , Data (), middleware = [])
309
+ result = execute (GraphQLSchema (test_type ), doc , Data (), middleware = [])
314
310
315
311
assert result .data ["field" ] == "resolved" # type: ignore
316
312
@@ -324,7 +320,7 @@ def bad_middleware_object():
324
320
with pytest .raises (TypeError ) as exc_info :
325
321
# noinspection PyTypeChecker
326
322
execute (
327
- _create_schema (test_type ),
323
+ GraphQLSchema (test_type ),
328
324
doc ,
329
325
None ,
330
326
middleware = cast (Middleware , {"bad" : "value" }),
@@ -364,7 +360,7 @@ def resolve(self, next_, *args, **kwargs):
364
360
middlewares = [LogMiddleware ("A" ), LogMiddleware ("B" ), LogMiddleware ("C" )]
365
361
366
362
result = execute (
367
- _create_schema (test_type ), doc , Data (), middleware = middlewares
363
+ GraphQLSchema (test_type ), doc , Data (), middleware = middlewares
368
364
)
369
365
assert result .data == {"field" : "resolved" } # type: ignore
370
366
0 commit comments