File tree Expand file tree Collapse file tree 2 files changed +13
-8
lines changed Expand file tree Collapse file tree 2 files changed +13
-8
lines changed Original file line number Diff line number Diff line change 1
1
from __future__ import absolute_import
2
2
3
+ import mongoengine
3
4
from collections import OrderedDict
4
5
from functools import partial , reduce
5
6
@@ -69,7 +70,6 @@ def args(self):
69
70
)
70
71
return args
71
72
72
-
73
73
@args .setter
74
74
def args (self , args ):
75
75
self ._base_args = args
@@ -94,7 +94,7 @@ def reference_args(self):
94
94
def get_reference_field (r , kv ):
95
95
if callable (getattr (kv [1 ], 'get_type' , None )):
96
96
node = kv [1 ].get_type ()._type ._meta
97
- if not isinstance ( kv [ 1 ], Dynamic ):
97
+ if not issubclass ( node . model , mongoengine . EmbeddedDocument ):
98
98
r .update ({kv [0 ]: node .fields ['id' ]._type .of_type ()})
99
99
return r
100
100
return reduce (get_reference_field , self .fields .items (), {})
Original file line number Diff line number Diff line change @@ -729,7 +729,7 @@ class Query(graphene.ObjectType):
729
729
assert json .dumps (result .data , sort_keys = True ) == json .dumps (
730
730
expected , sort_keys = True )
731
731
732
- # @pytest.mark.skip(reason="no way of currently testing this")
732
+
733
733
def test_should_query_with_embedded_document (fixtures ):
734
734
735
735
class Query (graphene .ObjectType ):
@@ -741,7 +741,10 @@ class Query(graphene.ObjectType):
741
741
allProfessors {
742
742
edges {
743
743
node {
744
- vec
744
+ vec,
745
+ metadata {
746
+ firstName
747
+ }
745
748
}
746
749
}
747
750
}
@@ -752,7 +755,10 @@ class Query(graphene.ObjectType):
752
755
'edges' : [
753
756
{
754
757
'node' : {
755
- 'vec' : [1.0 , 2.3 ]
758
+ 'vec' : [1.0 , 2.3 ],
759
+ 'metadata' : {
760
+ 'firstName' : 'Steven'
761
+ }
756
762
}
757
763
758
764
}
@@ -761,6 +767,5 @@ class Query(graphene.ObjectType):
761
767
}
762
768
schema = graphene .Schema (query = Query )
763
769
result = schema .execute (query )
764
- print (result .data )
765
- # assert not result.errors
766
- # assert dict(result.data['allProfessors']) == expected['allProfessors']
770
+ assert not result .errors
771
+ assert dict (result .data ['allProfessors' ]) == expected ['allProfessors' ]
You can’t perform that action at this time.
0 commit comments