diff options
| author | Tom Christie | 2012-12-14 20:11:37 +0000 |
|---|---|---|
| committer | Tom Christie | 2012-12-14 20:11:37 +0000 |
| commit | 3c31222a415d5454cb458fc397c50ad848db1584 (patch) | |
| tree | 29d0cc979c501aba650b22b60fd8390eba2b9733 /rest_framework/tests/pagination.py | |
| parent | e9eb47207a7e599c09d9eda4e2f9adfe03ef4542 (diff) | |
| parent | 5f08ec70e24ee3bdf74eed62def2fd9108af0eb0 (diff) | |
| download | django-rest-framework-3c31222a415d5454cb458fc397c50ad848db1584.tar.bz2 | |
Merge branch 'master' of https://github.com/sunscrapers/django-rest-framework
Diffstat (limited to 'rest_framework/tests/pagination.py')
| -rw-r--r-- | rest_framework/tests/pagination.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/rest_framework/tests/pagination.py b/rest_framework/tests/pagination.py index 3c65e9db..81d297a1 100644 --- a/rest_framework/tests/pagination.py +++ b/rest_framework/tests/pagination.py @@ -250,3 +250,32 @@ class TestCustomPaginateByParam(TestCase): response = self.view(request).render() self.assertEquals(response.data['count'], 13) self.assertEquals(response.data['results'], self.data[:5]) + + +class CustomField(serializers.Field): + def to_native(self, value): + if not 'view' in self.context: + raise RuntimeError("context isn't getting passed into custom field") + return "value" + + +class BasicModelSerializer(serializers.Serializer): + text = CustomField() + + +class TestContextPassedToCustomField(TestCase): + def setUp(self): + BasicModel.objects.create(text='ala ma kota') + + def test_with_pagination(self): + class ListView(generics.ListCreateAPIView): + model = BasicModel + serializer_class = BasicModelSerializer + paginate_by = 1 + + self.view = ListView.as_view() + request = factory.get('/') + response = self.view(request).render() + + self.assertEquals(response.status_code, status.HTTP_200_OK) + |
