From 1a2761b17966a433b75f66e04c9754fd562a8df6 Mon Sep 17 00:00:00 2001 From: Paul Bailey Date: Mon, 7 Jun 2021 15:55:50 -0500 Subject: [PATCH 1/5] add missing auto fields --- graphene_django/converter.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/graphene_django/converter.py b/graphene_django/converter.py index da9616135..2d6452c49 100644 --- a/graphene_django/converter.py +++ b/graphene_django/converter.py @@ -166,6 +166,8 @@ def convert_field_to_string(field, registry=None): ) +@convert_django_field.register(models.BigAutoField) +@convert_django_field.register(models.SmallAutoField) @convert_django_field.register(models.AutoField) def convert_field_to_id(field, registry=None): return ID(description=get_django_field_description(field), required=not field.null) From b11416b8b7b9e37c601efd1fa528b86d371babf7 Mon Sep 17 00:00:00 2001 From: Paul Bailey Date: Mon, 7 Jun 2021 16:04:04 -0500 Subject: [PATCH 2/5] add missing auto fields --- graphene_django/tests/test_converter.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/graphene_django/tests/test_converter.py b/graphene_django/tests/test_converter.py index fe84e7328..8d9fcef9b 100644 --- a/graphene_django/tests/test_converter.py +++ b/graphene_django/tests/test_converter.py @@ -111,6 +111,14 @@ def test_should_auto_convert_id(): assert_conversion(models.AutoField, graphene.ID, primary_key=True) +def test_should_big_auto_convert_id(): + assert_conversion(models.BigAutoField, graphene.ID, primary_key=True) + + +def test_should_small_auto_convert_id(): + assert_conversion(models.SmallAutoField, graphene.ID, primary_key=True) + + def test_should_uuid_convert_id(): assert_conversion(models.UUIDField, graphene.UUID) From f04767178e383c1ed6c5dd85bdb8387b87d2d4d2 Mon Sep 17 00:00:00 2001 From: Paul Bailey Date: Mon, 7 Jun 2021 16:18:10 -0500 Subject: [PATCH 3/5] skip small auto field sometimes --- graphene_django/converter.py | 2 +- graphene_django/tests/test_converter.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/graphene_django/converter.py b/graphene_django/converter.py index 2d6452c49..29adc5017 100644 --- a/graphene_django/converter.py +++ b/graphene_django/converter.py @@ -166,8 +166,8 @@ def convert_field_to_string(field, registry=None): ) +#@convert_django_field.register(models.SmallAutoField) @convert_django_field.register(models.BigAutoField) -@convert_django_field.register(models.SmallAutoField) @convert_django_field.register(models.AutoField) def convert_field_to_id(field, registry=None): return ID(description=get_django_field_description(field), required=not field.null) diff --git a/graphene_django/tests/test_converter.py b/graphene_django/tests/test_converter.py index 8d9fcef9b..29a5a5923 100644 --- a/graphene_django/tests/test_converter.py +++ b/graphene_django/tests/test_converter.py @@ -116,7 +116,8 @@ def test_should_big_auto_convert_id(): def test_should_small_auto_convert_id(): - assert_conversion(models.SmallAutoField, graphene.ID, primary_key=True) + if hasattr(models, 'SmallAutoField'): + assert_conversion(models.SmallAutoField, graphene.ID, primary_key=True) def test_should_uuid_convert_id(): From a13549407845c166b2750cbd35e2304ca70a763c Mon Sep 17 00:00:00 2001 From: Paul Bailey Date: Mon, 7 Jun 2021 16:23:41 -0500 Subject: [PATCH 4/5] make small auto optional --- graphene_django/converter.py | 10 +++++++++- graphene_django/tests/test_converter.py | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/graphene_django/converter.py b/graphene_django/converter.py index 29adc5017..1f6fbecbf 100644 --- a/graphene_django/converter.py +++ b/graphene_django/converter.py @@ -166,13 +166,21 @@ def convert_field_to_string(field, registry=None): ) -#@convert_django_field.register(models.SmallAutoField) @convert_django_field.register(models.BigAutoField) @convert_django_field.register(models.AutoField) 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_to_id(field, registry=None): + return ID( + description=get_django_field_description(field), required=not field.null + ) + + @convert_django_field.register(models.UUIDField) def convert_field_to_uuid(field, registry=None): return UUID( diff --git a/graphene_django/tests/test_converter.py b/graphene_django/tests/test_converter.py index 29a5a5923..afd744f33 100644 --- a/graphene_django/tests/test_converter.py +++ b/graphene_django/tests/test_converter.py @@ -116,7 +116,7 @@ def test_should_big_auto_convert_id(): def test_should_small_auto_convert_id(): - if hasattr(models, 'SmallAutoField'): + if hasattr(models, "SmallAutoField"): assert_conversion(models.SmallAutoField, graphene.ID, primary_key=True) From a9e04ecab03d8b3c16839085ab9f22e2e52037ad Mon Sep 17 00:00:00 2001 From: Paul Bailey Date: Mon, 7 Jun 2021 16:26:29 -0500 Subject: [PATCH 5/5] make small auto optional --- graphene_django/converter.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/graphene_django/converter.py b/graphene_django/converter.py index 1f6fbecbf..c243e8227 100644 --- a/graphene_django/converter.py +++ b/graphene_django/converter.py @@ -175,10 +175,8 @@ def convert_field_to_id(field, registry=None): if hasattr(models, "SmallAutoField"): @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 - ) + def convert_field_small_to_id(field, registry=None): + return convert_field_to_id(field, registry) @convert_django_field.register(models.UUIDField)