diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/test_metadata.py | 17 | ||||
| -rw-r--r-- | tests/test_routers.py | 14 |
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) |
