|
7 | 7 |
|
8 | 8 | from py.test import raises
|
9 | 9 |
|
10 |
| -from .models import Article, Editor, EmbeddedArticle, Reporter |
| 10 | +from .models import Article, Editor, EmbeddedArticle, Player, Reporter |
11 | 11 |
|
12 | 12 | from ..converter import convert_mongoengine_field
|
13 | 13 | from ..types import MongoengineObjectType
|
@@ -70,7 +70,7 @@ def test_should_dict_convert_json():
|
70 | 70 | # assert_conversion(mongoengine.MapField, graphene.JSONString)
|
71 | 71 |
|
72 | 72 |
|
73 |
| -def test_should_postgres_array_convert_list(): |
| 73 | +def test_should_field_convert_list(): |
74 | 74 | assert_conversion(mongoengine.ListField, graphene.List, field=mongoengine.StringField())
|
75 | 75 |
|
76 | 76 |
|
@@ -98,3 +98,16 @@ class Meta:
|
98 | 98 | dynamic_field = graphene_field.get_type()
|
99 | 99 | assert dynamic_field._of_type == A
|
100 | 100 |
|
| 101 | + |
| 102 | +def test_should_self_reference_convert_dynamic(): |
| 103 | + class P(MongoengineObjectType): |
| 104 | + class Meta: |
| 105 | + model = Player |
| 106 | + interfaces = (Node,) |
| 107 | + |
| 108 | + dynamic_field = convert_mongoengine_field(Player._fields['opponent'], P._meta.registry) |
| 109 | + assert isinstance(dynamic_field, Dynamic) |
| 110 | + graphene_type = dynamic_field.get_type() |
| 111 | + assert isinstance(graphene_type, graphene.Field) |
| 112 | + assert graphene_type.type == P |
| 113 | + |
0 commit comments