diff options
| author | Marek Skrajnowski | 2014-09-11 12:42:36 +0200 |
|---|---|---|
| committer | Marek Skrajnowski | 2014-09-11 12:42:36 +0200 |
| commit | ae8443853054635326598f6b06fb49429884d558 (patch) | |
| tree | a533cbaf9c1c1ef9e7bafd8b591f6802d69bf553 /tests/test_routers.py | |
| parent | 293728579070d802342bd92fa164e8dc0f0a7990 (diff) | |
| download | django-rest-framework-ae8443853054635326598f6b06fb49429884d558.tar.bz2 | |
Added DefaultRouter support (and test) for viewsets without the default action implemented, which is usually the list action.
Diffstat (limited to 'tests/test_routers.py')
| -rw-r--r-- | tests/test_routers.py | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/tests/test_routers.py b/tests/test_routers.py index b076f134..f6f5a977 100644 --- a/tests/test_routers.py +++ b/tests/test_routers.py @@ -3,7 +3,7 @@ from django.conf.urls import patterns, url, include from django.db import models from django.test import TestCase from django.core.exceptions import ImproperlyConfigured -from rest_framework import serializers, viewsets, permissions +from rest_framework import serializers, viewsets, mixins, permissions from rest_framework.decorators import detail_route, list_route from rest_framework.response import Response from rest_framework.routers import SimpleRouter, DefaultRouter @@ -284,3 +284,19 @@ class TestDynamicListAndDetailRouter(TestCase): else: method_map = 'get' self.assertEqual(route.mapping[method_map], endpoint) + + +class TestRootWithAListlessViewset(TestCase): + def setUp(self): + class NoteViewSet(mixins.RetrieveModelMixin, + viewsets.GenericViewSet): + model = RouterTestModel + + self.router = DefaultRouter() + self.router.register(r'notes', NoteViewSet) + self.view = self.router.urls[0].callback + + def test_api_root(self): + request = factory.get('/') + response = self.view(request) + self.assertEqual(response.data, {}) |
