File tree Expand file tree Collapse file tree 2 files changed +14
-1
lines changed Expand file tree Collapse file tree 2 files changed +14
-1
lines changed Original file line number Diff line number Diff line change @@ -378,7 +378,7 @@ def _map_serializer(self, serializer):
378
378
schema ['writeOnly' ] = True
379
379
if field .allow_null :
380
380
schema ['nullable' ] = True
381
- if field .default and field .default != empty and not callable (field .default ):
381
+ if field .default is not None and field .default != empty and not callable (field .default ):
382
382
schema ['default' ] = field .default
383
383
if field .help_text :
384
384
schema ['description' ] = str (field .help_text )
Original file line number Diff line number Diff line change @@ -70,6 +70,19 @@ class Serializer(serializers.Serializer):
70
70
data = inspector ._map_serializer (Serializer ())
71
71
assert isinstance (data ['properties' ]['text' ]['description' ], str ), "description must be str"
72
72
73
+ def test_boolean_default_field (self ):
74
+ class Serializer (serializers .Serializer ):
75
+ default_true = serializers .BooleanField (default = True )
76
+ default_false = serializers .BooleanField (default = False )
77
+ without_default = serializers .BooleanField ()
78
+
79
+ inspector = AutoSchema ()
80
+
81
+ data = inspector ._map_serializer (Serializer ())
82
+ assert data ['properties' ]['default_true' ]['default' ] is True , "default must be true"
83
+ assert data ['properties' ]['default_false' ]['default' ] is False , "default must be false"
84
+ assert 'default' not in data ['properties' ]['without_default' ], "default must not be defined"
85
+
73
86
74
87
@pytest .mark .skipif (uritemplate is None , reason = 'uritemplate not installed.' )
75
88
class TestOperationIntrospection (TestCase ):
You can’t perform that action at this time.
0 commit comments