aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/test_metadata.py17
-rw-r--r--tests/test_routers.py14
2 files changed, 25 insertions, 6 deletions
diff --git a/tests/test_metadata.py b/tests/test_metadata.py
index 5031c0f3..3a435f02 100644
--- a/tests/test_metadata.py
+++ b/tests/test_metadata.py
@@ -54,8 +54,12 @@ class TestMetadata:
"""
class ExampleSerializer(serializers.Serializer):
choice_field = serializers.ChoiceField(['red', 'green', 'blue'])
- integer_field = serializers.IntegerField(max_value=10)
- char_field = serializers.CharField(required=False)
+ integer_field = serializers.IntegerField(
+ min_value=1, max_value=1000
+ )
+ char_field = serializers.CharField(
+ required=False, min_length=3, max_length=40
+ )
class ExampleView(views.APIView):
"""Example view."""
@@ -96,13 +100,18 @@ class TestMetadata:
'type': 'integer',
'required': True,
'read_only': False,
- 'label': 'Integer field'
+ 'label': 'Integer field',
+ 'min_value': 1,
+ 'max_value': 1000,
+
},
'char_field': {
'type': 'string',
'required': False,
'read_only': False,
- 'label': 'Char field'
+ 'label': 'Char field',
+ 'min_length': 3,
+ 'max_length': 40
}
}
}
diff --git a/tests/test_routers.py b/tests/test_routers.py
index 948c69bb..08c58ec7 100644
--- a/tests/test_routers.py
+++ b/tests/test_routers.py
@@ -302,12 +302,16 @@ class DynamicListAndDetailViewSet(viewsets.ViewSet):
return Response({'method': 'link2'})
+class SubDynamicListAndDetailViewSet(DynamicListAndDetailViewSet):
+ pass
+
+
class TestDynamicListAndDetailRouter(TestCase):
def setUp(self):
self.router = SimpleRouter()
- def test_list_and_detail_route_decorators(self):
- routes = self.router.get_routes(DynamicListAndDetailViewSet)
+ def _test_list_and_detail_route_decorators(self, viewset):
+ routes = self.router.get_routes(viewset)
decorator_routes = [r for r in routes if not (r.name.endswith('-list') or r.name.endswith('-detail'))]
MethodNamesMap = namedtuple('MethodNamesMap', 'method_name url_path')
@@ -336,3 +340,9 @@ class TestDynamicListAndDetailRouter(TestCase):
else:
method_map = 'get'
self.assertEqual(route.mapping[method_map], method_name)
+
+ def test_list_and_detail_route_decorators(self):
+ self._test_list_and_detail_route_decorators(DynamicListAndDetailViewSet)
+
+ def test_inherited_list_and_detail_route_decorators(self):
+ self._test_list_and_detail_route_decorators(SubDynamicListAndDetailViewSet)