Python graphene.relay() Examples
The following are 2
code examples of graphene.relay().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
graphene
, or try the search function
.
Example #1
Source File: test_query.py From graphene-django with MIT License | 4 votes |
def test_should_preserve_prefetch_related(django_assert_num_queries): class ReporterType(DjangoObjectType): class Meta: model = Reporter interfaces = (graphene.relay.Node,) class FilmType(DjangoObjectType): reporters = DjangoConnectionField(ReporterType) class Meta: model = Film interfaces = (graphene.relay.Node,) class Query(graphene.ObjectType): films = DjangoConnectionField(FilmType) def resolve_films(root, info): qs = Film.objects.prefetch_related("reporters") return qs r1 = Reporter.objects.create(first_name="Dave", last_name="Smith") r2 = Reporter.objects.create(first_name="Jane", last_name="Doe") f1 = Film.objects.create() f1.reporters.set([r1, r2]) f2 = Film.objects.create() f2.reporters.set([r2]) query = """ query { films { edges { node { reporters { edges { node { firstName } } } } } } } """ schema = graphene.Schema(query=Query) with django_assert_num_queries(3) as captured: result = schema.execute(query) assert not result.errors
Example #2
Source File: test_query.py From graphene-django with MIT License | 4 votes |
def test_should_preserve_annotations(): class ReporterType(DjangoObjectType): class Meta: model = Reporter interfaces = (graphene.relay.Node,) class FilmType(DjangoObjectType): reporters = DjangoConnectionField(ReporterType) reporters_count = graphene.Int() class Meta: model = Film interfaces = (graphene.relay.Node,) class Query(graphene.ObjectType): films = DjangoConnectionField(FilmType) def resolve_films(root, info): qs = Film.objects.prefetch_related("reporters") return qs.annotate(reporters_count=models.Count("reporters")) r1 = Reporter.objects.create(first_name="Dave", last_name="Smith") r2 = Reporter.objects.create(first_name="Jane", last_name="Doe") f1 = Film.objects.create() f1.reporters.set([r1, r2]) f2 = Film.objects.create() f2.reporters.set([r2]) query = """ query { films { edges { node { reportersCount } } } } """ schema = graphene.Schema(query=Query) result = schema.execute(query) assert not result.errors, str(result) expected = { "films": { "edges": [{"node": {"reportersCount": 2}}, {"node": {"reportersCount": 1}}] } } assert result.data == expected, str(result.data)