From 886ce5ef03890f6e9b42150daf09385ca725c194 Mon Sep 17 00:00:00 2001 From: Florian Zimmermann Date: Thu, 4 Jul 2024 11:46:58 +0200 Subject: [PATCH] silence warnings --- examples/django_test_settings.py | 2 ++ examples/starwars/schema.py | 11 ++++------ graphene_django/converter.py | 10 ++------- graphene_django/forms/tests/test_converter.py | 22 +++++++++++++------ .../tests/test_field_converter.py | 3 +-- graphene_django/tests/test_converter.py | 14 +++++------- graphene_django/tests/test_get_queryset.py | 6 +++++ graphene_django/tests/test_query.py | 10 +++++---- 8 files changed, 42 insertions(+), 36 deletions(-) diff --git a/examples/django_test_settings.py b/examples/django_test_settings.py index dcb1f6c..4b5689e 100644 --- a/examples/django_test_settings.py +++ b/examples/django_test_settings.py @@ -28,3 +28,5 @@ TEMPLATES = [ GRAPHENE = {"SCHEMA": "graphene_django.tests.schema_view.schema"} ROOT_URLCONF = "graphene_django.tests.urls" + +USE_TZ = True diff --git a/examples/starwars/schema.py b/examples/starwars/schema.py index 07bf9d2..e81c8b2 100644 --- a/examples/starwars/schema.py +++ b/examples/starwars/schema.py @@ -1,5 +1,5 @@ import graphene -from graphene import Schema, relay, resolve_only_args +from graphene import Schema, relay from graphene_django import DjangoConnectionField, DjangoObjectType from .data import create_ship, get_empire, get_faction, get_rebels, get_ship, get_ships @@ -62,16 +62,13 @@ class Query(graphene.ObjectType): node = relay.Node.Field() ships = DjangoConnectionField(Ship, description="All the ships.") - @resolve_only_args - def resolve_ships(self): + def resolve_ships(self, info): return get_ships() - @resolve_only_args - def resolve_rebels(self): + def resolve_rebels(self, info): return get_rebels() - @resolve_only_args - def resolve_empire(self): + def resolve_empire(self, info): return get_empire() diff --git a/graphene_django/converter.py b/graphene_django/converter.py index 7eba22a..4ff832b 100644 --- a/graphene_django/converter.py +++ b/graphene_django/converter.py @@ -190,19 +190,13 @@ def convert_field_to_string(field, registry=None): ) -@convert_django_field.register(models.BigAutoField) @convert_django_field.register(models.AutoField) +@convert_django_field.register(models.BigAutoField) +@convert_django_field.register(models.SmallAutoField) def convert_field_to_id(field, registry=None): return ID(description=get_django_field_description(field), required=not field.null) -if hasattr(models, "SmallAutoField"): - - @convert_django_field.register(models.SmallAutoField) - def convert_field_small_to_id(field, registry=None): - return convert_field_to_id(field, registry) - - @convert_django_field.register(models.UUIDField) def convert_field_to_uuid(field, registry=None): return UUID( diff --git a/graphene_django/forms/tests/test_converter.py b/graphene_django/forms/tests/test_converter.py index 7e2a6d3..64fa850 100644 --- a/graphene_django/forms/tests/test_converter.py +++ b/graphene_django/forms/tests/test_converter.py @@ -1,4 +1,4 @@ -from django import forms +from django import VERSION as DJANGO_VERSION, forms from pytest import raises from graphene import ( @@ -19,12 +19,16 @@ from graphene import ( from ..converter import convert_form_field -def assert_conversion(django_field, graphene_field, *args): - field = django_field(*args, help_text="Custom Help Text") +def assert_conversion(django_field, graphene_field, *args, **kwargs): + # Arrange + help_text = kwargs.setdefault("help_text", "Custom Help Text") + field = django_field(*args, **kwargs) + # Act graphene_type = convert_form_field(field) + # Assert assert isinstance(graphene_type, graphene_field) field = graphene_type.Field() - assert field.description == "Custom Help Text" + assert field.description == help_text return field @@ -59,7 +63,12 @@ def test_should_slug_convert_string(): def test_should_url_convert_string(): - assert_conversion(forms.URLField, String) + kwargs = {} + if DJANGO_VERSION >= (5, 0): + # silence RemovedInDjango60Warning + kwargs["assume_scheme"] = "https" + + assert_conversion(forms.URLField, String, **kwargs) def test_should_choice_convert_string(): @@ -75,8 +84,7 @@ def test_should_regex_convert_string(): def test_should_uuid_convert_string(): - if hasattr(forms, "UUIDField"): - assert_conversion(forms.UUIDField, UUID) + assert_conversion(forms.UUIDField, UUID) def test_should_integer_convert_int(): diff --git a/graphene_django/rest_framework/tests/test_field_converter.py b/graphene_django/rest_framework/tests/test_field_converter.py index b0d7a6d..7eb907a 100644 --- a/graphene_django/rest_framework/tests/test_field_converter.py +++ b/graphene_django/rest_framework/tests/test_field_converter.py @@ -96,8 +96,7 @@ def test_should_regex_convert_string(): def test_should_uuid_convert_string(): - if hasattr(serializers, "UUIDField"): - assert_conversion(serializers.UUIDField, graphene.String) + assert_conversion(serializers.UUIDField, graphene.String) def test_should_model_convert_field(): diff --git a/graphene_django/tests/test_converter.py b/graphene_django/tests/test_converter.py index 2f8b1d5..5609c0c 100644 --- a/graphene_django/tests/test_converter.py +++ b/graphene_django/tests/test_converter.py @@ -53,9 +53,8 @@ def assert_conversion(django_field, graphene_field, *args, **kwargs): def test_should_unknown_django_field_raise_exception(): - with raises(Exception) as excinfo: + with raises(Exception, match="Don't know how to convert the Django field"): convert_django_field(None) - assert "Don't know how to convert the Django field" in str(excinfo.value) def test_should_date_time_convert_string(): @@ -115,8 +114,7 @@ def test_should_big_auto_convert_id(): def test_should_small_auto_convert_id(): - if hasattr(models, "SmallAutoField"): - assert_conversion(models.SmallAutoField, graphene.ID, primary_key=True) + assert_conversion(models.SmallAutoField, graphene.ID, primary_key=True) def test_should_uuid_convert_id(): @@ -166,14 +164,14 @@ def test_field_with_choices_convert_enum(): help_text="Language", choices=(("es", "Spanish"), ("en", "English")) ) - class TranslatedModel(models.Model): + class ChoicesModel(models.Model): language = field class Meta: app_label = "test" graphene_type = convert_django_field_with_choices(field).type.of_type - assert graphene_type._meta.name == "TestTranslatedModelLanguageChoices" + assert graphene_type._meta.name == "TestChoicesModelLanguageChoices" assert graphene_type._meta.enum.__members__["ES"].value == "es" assert graphene_type._meta.enum.__members__["ES"].description == "Spanish" assert graphene_type._meta.enum.__members__["EN"].value == "en" @@ -186,14 +184,14 @@ def test_field_with_callable_choices_convert_enum(): field = models.CharField(help_text="Language", choices=get_choices) - class TranslatedModel(models.Model): + class CallableChoicesModel(models.Model): language = field class Meta: app_label = "test" graphene_type = convert_django_field_with_choices(field).type.of_type - assert graphene_type._meta.name == "TestTranslatedModelLanguageChoices" + assert graphene_type._meta.name == "TestCallableChoicesModelLanguageChoices" assert graphene_type._meta.enum.__members__["ES"].value == "es" assert graphene_type._meta.enum.__members__["ES"].description == "Spanish" assert graphene_type._meta.enum.__members__["EN"].value == "en" diff --git a/graphene_django/tests/test_get_queryset.py b/graphene_django/tests/test_get_queryset.py index d5b1d93..d0930e4 100644 --- a/graphene_django/tests/test_get_queryset.py +++ b/graphene_django/tests/test_get_queryset.py @@ -26,6 +26,7 @@ class TestShouldCallGetQuerySetOnForeignKey: class ReporterType(DjangoObjectType): class Meta: model = Reporter + fields = "__all__" @classmethod def get_queryset(cls, queryset, info): @@ -36,6 +37,7 @@ class TestShouldCallGetQuerySetOnForeignKey: class ArticleType(DjangoObjectType): class Meta: model = Article + fields = "__all__" @classmethod def get_queryset(cls, queryset, info): @@ -200,6 +202,7 @@ class TestShouldCallGetQuerySetOnForeignKeyNode: class ReporterType(DjangoObjectType): class Meta: model = Reporter + fields = "__all__" interfaces = (Node,) @classmethod @@ -211,6 +214,7 @@ class TestShouldCallGetQuerySetOnForeignKeyNode: class ArticleType(DjangoObjectType): class Meta: model = Article + fields = "__all__" interfaces = (Node,) @classmethod @@ -370,6 +374,7 @@ class TestShouldCallGetQuerySetOnOneToOne: class FilmDetailsType(DjangoObjectType): class Meta: model = FilmDetails + fields = "__all__" @classmethod def get_queryset(cls, queryset, info): @@ -380,6 +385,7 @@ class TestShouldCallGetQuerySetOnOneToOne: class FilmType(DjangoObjectType): class Meta: model = Film + fields = "__all__" @classmethod def get_queryset(cls, queryset, info): diff --git a/graphene_django/tests/test_query.py b/graphene_django/tests/test_query.py index 42394c2..0e0a31c 100644 --- a/graphene_django/tests/test_query.py +++ b/graphene_django/tests/test_query.py @@ -2004,10 +2004,12 @@ def test_should_query_nullable_foreign_key(): class PetType(DjangoObjectType): class Meta: model = Pet + fields = "__all__" class PersonType(DjangoObjectType): class Meta: model = Person + fields = "__all__" class Query(graphene.ObjectType): pet = graphene.Field(PetType, name=graphene.String(required=True)) @@ -2022,10 +2024,8 @@ def test_should_query_nullable_foreign_key(): schema = graphene.Schema(query=Query) person = Person.objects.create(name="Jane") - [ - Pet.objects.create(name="Stray dog", age=1), - Pet.objects.create(name="Jane's dog", owner=person, age=1), - ] + Pet.objects.create(name="Stray dog", age=1) + Pet.objects.create(name="Jane's dog", owner=person, age=1) query_pet = """ query getPet($name: String!) { @@ -2068,6 +2068,7 @@ def test_should_query_nullable_one_to_one_relation_with_custom_resolver(): class FilmType(DjangoObjectType): class Meta: model = Film + fields = "__all__" @classmethod def get_queryset(cls, queryset, info): @@ -2076,6 +2077,7 @@ def test_should_query_nullable_one_to_one_relation_with_custom_resolver(): class FilmDetailsType(DjangoObjectType): class Meta: model = FilmDetails + fields = "__all__" @classmethod def get_queryset(cls, queryset, info):