aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Charette2015-03-24 21:31:35 -0400
committerSimon Charette2015-03-24 21:31:35 -0400
commit87208021e289d56eeed7fc4a9802ba8dacb3d30b (patch)
tree5fb7ab831b70a551bd14e3a684c2ae2f84675343
parent197027c87b71b4c06e208313b7f0d7fc47e22e8b (diff)
downloaddjango-rest-framework-87208021e289d56eeed7fc4a9802ba8dacb3d30b.tar.bz2
Metadata should detect null boolean field type.
-rw-r--r--rest_framework/metadata.py1
-rw-r--r--tests/test_metadata.py7
2 files changed, 7 insertions, 1 deletions
diff --git a/rest_framework/metadata.py b/rest_framework/metadata.py
index bf3611aa..b2c48b81 100644
--- a/rest_framework/metadata.py
+++ b/rest_framework/metadata.py
@@ -36,6 +36,7 @@ class SimpleMetadata(BaseMetadata):
label_lookup = ClassLookupDict({
serializers.Field: 'field',
serializers.BooleanField: 'boolean',
+ serializers.NullBooleanField: 'boolean',
serializers.CharField: 'string',
serializers.URLField: 'url',
serializers.EmailField: 'email',
diff --git a/tests/test_metadata.py b/tests/test_metadata.py
index 3a435f02..731aedba 100644
--- a/tests/test_metadata.py
+++ b/tests/test_metadata.py
@@ -1,5 +1,5 @@
from __future__ import unicode_literals
-from rest_framework import exceptions, serializers, status, views, versioning
+from rest_framework import exceptions, metadata, serializers, status, views, versioning
from rest_framework.request import Request
from rest_framework.renderers import BrowsableAPIRenderer
from rest_framework.test import APIRequestFactory
@@ -207,3 +207,8 @@ class TestMetadata:
scheme = versioning.QueryParameterVersioning
view = ExampleView.as_view(versioning_class=scheme)
view(request=request)
+
+ def test_null_boolean_field_info_type(self):
+ options = metadata.SimpleMetadata()
+ field_info = options.get_field_info(serializers.NullBooleanField())
+ assert field_info['type'] == 'boolean'