diff options
| author | Tom Christie | 2013-06-28 09:07:09 +0100 |
|---|---|---|
| committer | Tom Christie | 2013-06-28 09:07:09 +0100 |
| commit | 58d38d694eba94d4c6c20edcbefb5f4f91e6dd0f (patch) | |
| tree | ba72bed1f1f20bed9d023fb076e0adcf7e92abf1 /rest_framework/tests/test_hyperlinkedserializers.py | |
| parent | de00ec95c3007dd90b5b01f7486b430699ea63c1 (diff) | |
| parent | 1f6a59d76da286e7a89e8e41317beb16a4aab7c7 (diff) | |
| download | django-rest-framework-58d38d694eba94d4c6c20edcbefb5f4f91e6dd0f.tar.bz2 | |
Merge branch 'master' into writable-nested-modelserializer
Diffstat (limited to 'rest_framework/tests/test_hyperlinkedserializers.py')
| -rw-r--r-- | rest_framework/tests/test_hyperlinkedserializers.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/rest_framework/tests/test_hyperlinkedserializers.py b/rest_framework/tests/test_hyperlinkedserializers.py index 1894ddb2..129600cb 100644 --- a/rest_framework/tests/test_hyperlinkedserializers.py +++ b/rest_framework/tests/test_hyperlinkedserializers.py @@ -301,3 +301,30 @@ class TestOptionalRelationHyperlinkedView(TestCase): data=json.dumps(self.data), content_type='application/json') self.assertEqual(response.status_code, status.HTTP_200_OK) + + +class TestOverriddenURLField(TestCase): + def setUp(self): + class OverriddenURLSerializer(serializers.HyperlinkedModelSerializer): + url = serializers.SerializerMethodField('get_url') + + class Meta: + model = BlogPost + fields = ('title', 'url') + + def get_url(self, obj): + return 'foo bar' + + self.Serializer = OverriddenURLSerializer + self.obj = BlogPost.objects.create(title='New blog post') + + def test_overridden_url_field(self): + """ + The 'url' field should respect overriding. + Regression test for #936. + """ + serializer = self.Serializer(self.obj) + self.assertEqual( + serializer.data, + {'title': 'New blog post', 'url': 'foo bar'} + ) |
