aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/tests/test_genericrelations.py
diff options
context:
space:
mode:
authorXavier Ordoquy2014-04-16 11:27:06 +0200
committerXavier Ordoquy2014-04-16 11:27:06 +0200
commit1d404874b3f0f5b16f3b38ba322f31a18c41aad6 (patch)
treece492344b34baeb810cb3b2d09c4f72b37871b09 /rest_framework/tests/test_genericrelations.py
parent03b4c60b2db1652be448b15ce7abdf3154601b9d (diff)
parent853c7a16c15c7291561bc4b3dfbcad88ea262a18 (diff)
downloaddjango-rest-framework-1d404874b3f0f5b16f3b38ba322f31a18c41aad6.tar.bz2
Merge pull request #1527 from Ian-Foote/generic_foreign_key
Set GenericForeignKey fields on object before save
Diffstat (limited to 'rest_framework/tests/test_genericrelations.py')
-rw-r--r--rest_framework/tests/test_genericrelations.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/rest_framework/tests/test_genericrelations.py b/rest_framework/tests/test_genericrelations.py
index fa09c9e6..46a2d863 100644
--- a/rest_framework/tests/test_genericrelations.py
+++ b/rest_framework/tests/test_genericrelations.py
@@ -131,3 +131,21 @@ class TestGenericRelations(TestCase):
}
]
self.assertEqual(serializer.data, expected)
+
+ def test_restore_object_generic_fk(self):
+ """
+ Ensure an object with a generic foreign key can be restored.
+ """
+
+ class TagSerializer(serializers.ModelSerializer):
+ class Meta:
+ model = Tag
+ exclude = ('content_type', 'object_id')
+
+ serializer = TagSerializer()
+
+ bookmark = Bookmark(url='http://example.com')
+ attrs = {'tagged_item': bookmark, 'tag': 'example'}
+
+ tag = serializer.restore_object(attrs)
+ self.assertEqual(tag.tagged_item, bookmark)