|
2 | 2 |
|
3 | 3 | import pytest
|
4 | 4 |
|
5 |
| -from graphene import Field, ObjectType, Schema |
| 5 | +from graphene import Field, ObjectType, Schema, Argument, Float |
6 | 6 | from graphene.relay import Node
|
7 | 7 | from graphene_django import DjangoObjectType
|
8 | 8 | from graphene_django.forms import (GlobalIDFormField,
|
@@ -46,10 +46,7 @@ class Meta:
|
46 | 46 |
|
47 | 47 |
|
48 | 48 | def get_args(field):
|
49 |
| - if isinstance(field.args, list): |
50 |
| - return {arg.name: arg for arg in field.args} |
51 |
| - else: |
52 |
| - return field.args |
| 49 | + return field.args |
53 | 50 |
|
54 | 51 |
|
55 | 52 | def assert_arguments(field, *arguments):
|
@@ -252,6 +249,22 @@ class Meta:
|
252 | 249 | assert id_filter.field_class == GlobalIDFormField
|
253 | 250 |
|
254 | 251 |
|
| 252 | +def test_filterset_descriptions(): |
| 253 | + class ArticleIdFilter(django_filters.FilterSet): |
| 254 | + |
| 255 | + class Meta: |
| 256 | + model = Article |
| 257 | + fields = ['id'] |
| 258 | + |
| 259 | + max_time = django_filters.NumberFilter(method='filter_max_time', label="The maximum time") |
| 260 | + |
| 261 | + field = DjangoFilterConnectionField(ArticleNode, filterset_class=ArticleIdFilter) |
| 262 | + max_time = field.args['max_time'] |
| 263 | + assert isinstance(max_time, Argument) |
| 264 | + assert max_time.type == Float |
| 265 | + assert max_time.description == 'The maximum time' |
| 266 | + |
| 267 | + |
255 | 268 | def test_global_id_field_relation():
|
256 | 269 | field = DjangoFilterConnectionField(ArticleNode, fields=['reporter'])
|
257 | 270 | filterset_class = field.filterset_class
|
|
0 commit comments