diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/test_routers.py | 14 | 
1 files changed, 12 insertions, 2 deletions
| 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) | 
