Skip to content

Commit 44fd8b7

Browse files
foarsittervdboor
authored andcommitted
Add failing test-case for #9
1 parent dadf6d1 commit 44fd8b7

File tree

3 files changed

+45
-0
lines changed

3 files changed

+45
-0
lines changed

polymorphic/tests/migrations/0001_initial.py

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2035,4 +2035,38 @@ class Migration(migrations.Migration):
20352035
options={"abstract": False, "base_manager_name": "objects"},
20362036
bases=("tests.subclassselectorproxymodel",),
20372037
),
2038+
migrations.CreateModel(
2039+
name="NonPolymorphicParent",
2040+
fields=[
2041+
(
2042+
"group_ptr",
2043+
models.OneToOneField(
2044+
auto_created=True,
2045+
on_delete=django.db.models.deletion.CASCADE,
2046+
parent_link=True,
2047+
primary_key=True,
2048+
serialize=False,
2049+
to="auth.Group",
2050+
),
2051+
),
2052+
(
2053+
"polymorphic_ctype",
2054+
models.ForeignKey(
2055+
editable=False,
2056+
null=True,
2057+
on_delete=django.db.models.deletion.CASCADE,
2058+
related_name="polymorphic_tests.nonpolymorphicparent_set+",
2059+
to="contenttypes.ContentType",
2060+
),
2061+
),
2062+
(
2063+
"test",
2064+
models.CharField(
2065+
max_length=255, default="test_non_polymorphic_parent"
2066+
),
2067+
),
2068+
],
2069+
options={"abstract": False, "base_manager_name": "objects",},
2070+
bases=("auth.group", models.Model),
2071+
),
20382072
]

polymorphic/tests/models.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import uuid
33

44
import django
5+
from django.contrib.auth.models import Group
56
from django.contrib.contenttypes.models import ContentType
67
from django.db import models
78
from django.db.models.query import QuerySet
@@ -501,3 +502,7 @@ class Meta:
501502

502503
class SubclassSelectorProxyConcreteModel(SubclassSelectorProxyModel):
503504
concrete_field = models.CharField(max_length=10, default="test_cf")
505+
506+
507+
class NonPolymorphicParent(PolymorphicModel, Group):
508+
test = models.CharField(max_length=22, default="test_non_polymorphic_parent")

polymorphic/tests/test_orm.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
MultiTableDerived,
5252
MyManager,
5353
MyManagerQuerySet,
54+
NonPolymorphicParent,
5455
NonProxyChild,
5556
One2OneRelatingModel,
5657
One2OneRelatingModelDerived,
@@ -1261,3 +1262,8 @@ def test_refresh_from_db_fields(self):
12611262

12621263
obj.refresh_from_db(fields=["field1"])
12631264
assert obj.field1 == "aa1"
1265+
1266+
def test_non_polymorphic_parent(self):
1267+
1268+
obj = NonPolymorphicParent.objects.create()
1269+
assert obj.delete()

0 commit comments

Comments
 (0)