summaryrefslogtreecommitdiff
path: root/tests/proxy_model_inheritance
diff options
context:
space:
mode:
authorSimon Charette <charette.s@gmail.com>2015-10-05 13:26:14 -0400
committerSimon Charette <charette.s@gmail.com>2015-10-12 12:14:26 -0400
commit211486f3ab5602cdc332f03cd03fad3cb929d154 (patch)
tree1613f8cde14f3d4bbb133df153c662dc5cc61633 /tests/proxy_model_inheritance
parent8bdfabed6563f2ae136ad43e05bb254c9c15811a (diff)
Fixed #23076, #25505 -- Fixed deletion of intermediate proxy models.
Thanks to James Murty for his work on an alternate patch.
Diffstat (limited to 'tests/proxy_model_inheritance')
-rw-r--r--tests/proxy_model_inheritance/models.py7
-rw-r--r--tests/proxy_model_inheritance/tests.py8
2 files changed, 14 insertions, 1 deletions
diff --git a/tests/proxy_model_inheritance/models.py b/tests/proxy_model_inheritance/models.py
index 7a10b77c90..240fd60c4e 100644
--- a/tests/proxy_model_inheritance/models.py
+++ b/tests/proxy_model_inheritance/models.py
@@ -6,7 +6,12 @@ class ConcreteModel(models.Model):
pass
-class ConcreteModelSubclass(ConcreteModel):
+class ProxyModel(ConcreteModel):
+ class Meta:
+ proxy = True
+
+
+class ConcreteModelSubclass(ProxyModel):
pass
diff --git a/tests/proxy_model_inheritance/tests.py b/tests/proxy_model_inheritance/tests.py
index b0af0040f9..b4b1c13435 100644
--- a/tests/proxy_model_inheritance/tests.py
+++ b/tests/proxy_model_inheritance/tests.py
@@ -9,6 +9,7 @@ from django.utils._os import upath
from .models import (
ConcreteModel, ConcreteModelSubclass, ConcreteModelSubclassProxy,
+ ProxyModel,
)
@@ -43,3 +44,10 @@ class MultiTableInheritanceProxyTest(TestCase):
self.assertEqual(0, ConcreteModelSubclassProxy.objects.count())
self.assertEqual(0, ConcreteModelSubclass.objects.count())
self.assertEqual(0, ConcreteModel.objects.count())
+
+ def test_deletion_through_intermediate_proxy(self):
+ child = ConcreteModelSubclass.objects.create()
+ proxy = ProxyModel.objects.get(pk=child.pk)
+ proxy.delete()
+ self.assertFalse(ConcreteModel.objects.exists())
+ self.assertFalse(ConcreteModelSubclass.objects.exists())