Skip to content

Commit ac77a56

Browse files
committed
Merge pull request #2762 from charettes/metadata-null-boolean-field
Metadata should detect null boolean field type.
2 parents 197027c + 8720802 commit ac77a56

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

rest_framework/metadata.py

+1
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ class SimpleMetadata(BaseMetadata):
3636
label_lookup = ClassLookupDict({
3737
serializers.Field: 'field',
3838
serializers.BooleanField: 'boolean',
39+
serializers.NullBooleanField: 'boolean',
3940
serializers.CharField: 'string',
4041
serializers.URLField: 'url',
4142
serializers.EmailField: 'email',

tests/test_metadata.py

+6-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from __future__ import unicode_literals
2-
from rest_framework import exceptions, serializers, status, views, versioning
2+
from rest_framework import exceptions, metadata, serializers, status, views, versioning
33
from rest_framework.request import Request
44
from rest_framework.renderers import BrowsableAPIRenderer
55
from rest_framework.test import APIRequestFactory
@@ -207,3 +207,8 @@ def get_serializer(self):
207207
scheme = versioning.QueryParameterVersioning
208208
view = ExampleView.as_view(versioning_class=scheme)
209209
view(request=request)
210+
211+
def test_null_boolean_field_info_type(self):
212+
options = metadata.SimpleMetadata()
213+
field_info = options.get_field_info(serializers.NullBooleanField())
214+
assert field_info['type'] == 'boolean'

0 commit comments

Comments
 (0)