mirror of
https://github.com/graphql-python/graphene-django.git
synced 2025-07-11 16:52:25 +03:00
upd tests
This commit is contained in:
parent
a107c29566
commit
c191b78e1c
|
@ -33,12 +33,7 @@ class PetNode(DjangoObjectType):
|
||||||
class PersonFilterSet(FilterSet):
|
class PersonFilterSet(FilterSet):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Person
|
model = Person
|
||||||
fields = {}
|
fields = {"name": ["in"]}
|
||||||
|
|
||||||
names = filters.BaseInFilter(method="filter_names")
|
|
||||||
|
|
||||||
def filter_names(self, qs, name, value):
|
|
||||||
return qs.filter(name__in=value)
|
|
||||||
|
|
||||||
|
|
||||||
class PersonNode(DjangoObjectType):
|
class PersonNode(DjangoObjectType):
|
||||||
|
@ -47,7 +42,6 @@ class PersonNode(DjangoObjectType):
|
||||||
interfaces = (Node,)
|
interfaces = (Node,)
|
||||||
filterset_class = PersonFilterSet
|
filterset_class = PersonFilterSet
|
||||||
|
|
||||||
|
|
||||||
class Query(ObjectType):
|
class Query(ObjectType):
|
||||||
pets = DjangoFilterConnectionField(PetNode)
|
pets = DjangoFilterConnectionField(PetNode)
|
||||||
people = DjangoFilterConnectionField(PersonNode)
|
people = DjangoFilterConnectionField(PersonNode)
|
||||||
|
@ -92,7 +86,7 @@ def test_string_in_filter_with_filterset_class():
|
||||||
|
|
||||||
query = """
|
query = """
|
||||||
query {
|
query {
|
||||||
people (names: ["John", "Michael"]) {
|
people (name_In: ["John", "Michael"]) {
|
||||||
edges {
|
edges {
|
||||||
node {
|
node {
|
||||||
name
|
name
|
||||||
|
|
|
@ -79,7 +79,8 @@ def replace_csv_filters(filterset_class):
|
||||||
"""
|
"""
|
||||||
for name, filter_field in list(filterset_class.base_filters.items()):
|
for name, filter_field in list(filterset_class.base_filters.items()):
|
||||||
filter_type = filter_field.lookup_expr
|
filter_type = filter_field.lookup_expr
|
||||||
if name not in filterset_class.declared_filters:
|
if name in filterset_class.declared_filters:
|
||||||
|
continue
|
||||||
if filter_type in {"in", "contains", "overlap"}:
|
if filter_type in {"in", "contains", "overlap"}:
|
||||||
filterset_class.base_filters[name] = InFilter(
|
filterset_class.base_filters[name] = InFilter(
|
||||||
field_name=filter_field.field_name,
|
field_name=filter_field.field_name,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user