5
5
from graphene .relay import Node
6
6
7
7
from .models import Article , Editor , EmbeddedArticle , Reporter
8
- from .utils import with_local_registry
8
+ from .types import (ArticleNode , ArticleType ,
9
+ EditorNode , EditorType ,
10
+ ReporterNode , ReporterType )
9
11
from ..fields import MongoengineConnectionField
10
- from ..types import MongoengineObjectType
11
12
12
13
13
14
def setup_fixtures ():
14
15
editor1 = Editor (first_name = 'Penny' , last_name = 'Hardaway' )
15
16
editor1 .save ()
16
17
editor2 = Editor (first_name = 'Grant' , last_name = 'Hill' )
17
18
editor2 .save ()
19
+ editor3 = Editor (first_name = 'Dennis' , last_name = 'Rodman' )
20
+ editor3 .save ()
18
21
19
22
reporter = Reporter (first_name = 'Allen' , last_name = 'Iverson' ,
20
23
email = '[email protected] ' ,
awards = [
'2010-mvp' ])
@@ -28,11 +31,7 @@ def setup_fixtures():
28
31
setup_fixtures ()
29
32
30
33
31
- @with_local_registry
32
34
def test_should_query_editor_well ():
33
- class EditorType (MongoengineObjectType ):
34
- class Meta :
35
- model = Editor
36
35
37
36
class Query (graphene .ObjectType ):
38
37
editor = graphene .Field (EditorType )
@@ -65,8 +64,11 @@ def resolve_editors(self, *args, **kwargs):
65
64
}, {
66
65
'firstName' : 'Grant' ,
67
66
'lastName' : 'Hill'
67
+ }, {
68
+ 'firstName' : 'Dennis' ,
69
+ 'lastName' : 'Rodman'
68
70
}]
69
- }
71
+ }
70
72
71
73
schema = graphene .Schema (query = Query )
72
74
result = schema .execute (query )
@@ -75,15 +77,7 @@ def resolve_editors(self, *args, **kwargs):
75
77
assert all (item in result .data ['editors' ] for item in expected ['editors' ])
76
78
77
79
78
- @with_local_registry
79
80
def test_should_query_reporter_well ():
80
- class ArticleType (MongoengineObjectType ):
81
- class Meta :
82
- model = Article
83
-
84
- class ReporterType (MongoengineObjectType ):
85
- class Meta :
86
- model = Reporter
87
81
88
82
class Query (graphene .ObjectType ):
89
83
reporter = graphene .Field (ReporterType )
@@ -123,19 +117,7 @@ def resolve_reporter(self, *args, **kwargs):
123
117
assert dict (result .data ['reporter' ]) == expected ['reporter' ]
124
118
125
119
126
- @with_local_registry
127
120
def test_should_node ():
128
- class ArticleNode (MongoengineObjectType ):
129
-
130
- class Meta :
131
- model = Article
132
- interfaces = (Node ,)
133
-
134
- class ReporterNode (MongoengineObjectType ):
135
-
136
- class Meta :
137
- model = Reporter
138
- interfaces = (Node ,)
139
121
140
122
class Query (graphene .ObjectType ):
141
123
node = Node .Field ()
@@ -188,13 +170,7 @@ def resolve_reporter(self, *args, **kwargs):
188
170
assert dict (result .data ['reporter' ]) == expected ['reporter' ]
189
171
190
172
191
- @with_local_registry
192
173
def test_should_connection_field ():
193
- class EditorNode (MongoengineObjectType ):
194
-
195
- class Meta :
196
- model = Editor
197
- interfaces = (Node ,)
198
174
199
175
class Query (graphene .ObjectType ):
200
176
node = Node .Field ()
@@ -219,13 +195,20 @@ class Query(graphene.ObjectType):
219
195
'node' : {
220
196
'firstName' : 'Penny' ,
221
197
'lastName' : 'Hardaway'
222
- },
198
+ }
223
199
},
224
200
{
225
201
'node' : {
226
202
'firstName' : 'Grant' ,
227
203
'lastName' : 'Hill'
228
204
}
205
+
206
+ },
207
+ {
208
+ 'node' : {
209
+ 'firstName' : 'Dennis' ,
210
+ 'lastName' : 'Rodman'
211
+ }
229
212
}
230
213
]
231
214
}
@@ -236,14 +219,7 @@ class Query(graphene.ObjectType):
236
219
assert dict (result .data ['allEditors' ]) == expected ['allEditors' ]
237
220
238
221
239
- @with_local_registry
240
222
def test_should_mutate_well ():
241
- class ArticleNode (MongoengineObjectType ):
242
-
243
- class Meta :
244
- model = Article
245
- interfaces = (Node ,)
246
-
247
223
248
224
class CreateArticle (graphene .Mutation ):
249
225
@@ -292,14 +268,7 @@ class Mutation(graphene.ObjectType):
292
268
assert not result .errors
293
269
assert result .data == expected
294
270
295
- @with_local_registry
296
271
def test_should_filter ():
297
- class ArticleNode (MongoengineObjectType ):
298
-
299
- class Meta :
300
- model = Article
301
- interfaces = (Node ,)
302
- filter_fields = ('headline' ,)
303
272
304
273
class Query (graphene .ObjectType ):
305
274
node = Node .Field ()
@@ -333,6 +302,9 @@ class Query(graphene.ObjectType):
333
302
assert result .data == expected
334
303
335
304
305
+ def test_should_first_n ():
306
+ pass
307
+
336
308
# TODO:
337
309
def test_should_paging ():
338
310
pass
0 commit comments