mirror of
https://github.com/django/django.git
synced 2025-10-31 09:41:08 +00:00
Refs #33476 -- Reformatted code with Black.
This commit is contained in:
committed by
Mariusz Felisiak
parent
f68fa8b45d
commit
9c19aff7c7
@@ -6,8 +6,8 @@ from django.db import models
|
||||
# explicitly reversible.
|
||||
class SelfRefer(models.Model):
|
||||
name = models.CharField(max_length=10)
|
||||
references = models.ManyToManyField('self')
|
||||
related = models.ManyToManyField('self')
|
||||
references = models.ManyToManyField("self")
|
||||
related = models.ManyToManyField("self")
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
@@ -22,7 +22,7 @@ class Tag(models.Model):
|
||||
|
||||
# Regression for #11956 -- a many to many to the base class
|
||||
class TagCollection(Tag):
|
||||
tags = models.ManyToManyField(Tag, related_name='tag_collections')
|
||||
tags = models.ManyToManyField(Tag, related_name="tag_collections")
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
@@ -77,18 +77,19 @@ class BadModelWithSplit(models.Model):
|
||||
abstract = True
|
||||
|
||||
def split(self):
|
||||
raise RuntimeError('split should not be called')
|
||||
raise RuntimeError("split should not be called")
|
||||
|
||||
|
||||
class RegressionModelSplit(BadModelWithSplit):
|
||||
"""
|
||||
Model with a split method should not cause an error in add_lazy_relation
|
||||
"""
|
||||
others = models.ManyToManyField('self')
|
||||
|
||||
others = models.ManyToManyField("self")
|
||||
|
||||
|
||||
# Regression for #24505 -- Two ManyToManyFields with the same "to" model
|
||||
# and related_name set to '+'.
|
||||
class Post(models.Model):
|
||||
primary_lines = models.ManyToManyField(Line, related_name='+')
|
||||
secondary_lines = models.ManyToManyField(Line, related_name='+')
|
||||
primary_lines = models.ManyToManyField(Line, related_name="+")
|
||||
secondary_lines = models.ManyToManyField(Line, related_name="+")
|
||||
|
||||
@@ -2,8 +2,16 @@ from django.core.exceptions import FieldError
|
||||
from django.test import TestCase
|
||||
|
||||
from .models import (
|
||||
Entry, Line, Post, RegressionModelSplit, SelfRefer, SelfReferChild,
|
||||
SelfReferChildSibling, Tag, TagCollection, Worksheet,
|
||||
Entry,
|
||||
Line,
|
||||
Post,
|
||||
RegressionModelSplit,
|
||||
SelfRefer,
|
||||
SelfReferChild,
|
||||
SelfReferChildSibling,
|
||||
Tag,
|
||||
TagCollection,
|
||||
Worksheet,
|
||||
)
|
||||
|
||||
|
||||
@@ -12,15 +20,15 @@ class M2MRegressionTests(TestCase):
|
||||
# Multiple m2m references to model must be distinguished when
|
||||
# accessing the relations through an instance attribute.
|
||||
|
||||
s1 = SelfRefer.objects.create(name='s1')
|
||||
s2 = SelfRefer.objects.create(name='s2')
|
||||
s3 = SelfRefer.objects.create(name='s3')
|
||||
s1 = SelfRefer.objects.create(name="s1")
|
||||
s2 = SelfRefer.objects.create(name="s2")
|
||||
s3 = SelfRefer.objects.create(name="s3")
|
||||
s1.references.add(s2)
|
||||
s1.related.add(s3)
|
||||
|
||||
e1 = Entry.objects.create(name='e1')
|
||||
t1 = Tag.objects.create(name='t1')
|
||||
t2 = Tag.objects.create(name='t2')
|
||||
e1 = Entry.objects.create(name="e1")
|
||||
t1 = Tag.objects.create(name="t1")
|
||||
t2 = Tag.objects.create(name="t2")
|
||||
|
||||
e1.topics.add(t1)
|
||||
e1.related.add(t2)
|
||||
@@ -32,8 +40,8 @@ class M2MRegressionTests(TestCase):
|
||||
self.assertSequenceEqual(e1.related.all(), [t2])
|
||||
|
||||
def test_m2m_managers_reused(self):
|
||||
s1 = SelfRefer.objects.create(name='s1')
|
||||
e1 = Entry.objects.create(name='e1')
|
||||
s1 = SelfRefer.objects.create(name="s1")
|
||||
e1 = Entry.objects.create(name="e1")
|
||||
self.assertIs(s1.references, s1.references)
|
||||
self.assertIs(s1.related, s1.related)
|
||||
self.assertIs(e1.topics, e1.topics)
|
||||
@@ -46,7 +54,7 @@ class M2MRegressionTests(TestCase):
|
||||
FieldError,
|
||||
"Choices are: id, name, references, related, selfreferchild, selfreferchildsibling",
|
||||
):
|
||||
SelfRefer.objects.filter(porcupine='fred')
|
||||
SelfRefer.objects.filter(porcupine="fred")
|
||||
|
||||
def test_m2m_inheritance_symmetry(self):
|
||||
# Test to ensure that the relationship between two inherited models
|
||||
@@ -66,7 +74,7 @@ class M2MRegressionTests(TestCase):
|
||||
# Regression for #11311 - The primary key for models in a m2m relation
|
||||
# doesn't have to be an AutoField
|
||||
|
||||
w = Worksheet(id='abc')
|
||||
w = Worksheet(id="abc")
|
||||
w.save()
|
||||
w.delete()
|
||||
|
||||
@@ -74,12 +82,12 @@ class M2MRegressionTests(TestCase):
|
||||
# Regression for #11956 -- You can add an object to a m2m with the
|
||||
# base class without causing integrity errors
|
||||
|
||||
t1 = Tag.objects.create(name='t1')
|
||||
t2 = Tag.objects.create(name='t2')
|
||||
t1 = Tag.objects.create(name="t1")
|
||||
t2 = Tag.objects.create(name="t2")
|
||||
|
||||
c1 = TagCollection.objects.create(name='c1')
|
||||
c1 = TagCollection.objects.create(name="c1")
|
||||
c1.tags.set([t1, t2])
|
||||
c1 = TagCollection.objects.get(name='c1')
|
||||
c1 = TagCollection.objects.get(name="c1")
|
||||
|
||||
self.assertCountEqual(c1.tags.all(), [t1, t2])
|
||||
self.assertCountEqual(t1.tag_collections.all(), [c1])
|
||||
@@ -101,26 +109,26 @@ class M2MRegressionTests(TestCase):
|
||||
def test_m2m_abstract_split(self):
|
||||
# Regression for #19236 - an abstract class with a 'split' method
|
||||
# causes a TypeError in add_lazy_relation
|
||||
m1 = RegressionModelSplit(name='1')
|
||||
m1 = RegressionModelSplit(name="1")
|
||||
m1.save()
|
||||
|
||||
def test_assigning_invalid_data_to_m2m_doesnt_clear_existing_relations(self):
|
||||
t1 = Tag.objects.create(name='t1')
|
||||
t2 = Tag.objects.create(name='t2')
|
||||
c1 = TagCollection.objects.create(name='c1')
|
||||
t1 = Tag.objects.create(name="t1")
|
||||
t2 = Tag.objects.create(name="t2")
|
||||
c1 = TagCollection.objects.create(name="c1")
|
||||
c1.tags.set([t1, t2])
|
||||
|
||||
with self.assertRaisesMessage(TypeError, "'int' object is not iterable"):
|
||||
c1.tags.set(7)
|
||||
|
||||
c1.refresh_from_db()
|
||||
self.assertSequenceEqual(c1.tags.order_by('name'), [t1, t2])
|
||||
self.assertSequenceEqual(c1.tags.order_by("name"), [t1, t2])
|
||||
|
||||
def test_multiple_forwards_only_m2m(self):
|
||||
# Regression for #24505 - Multiple ManyToManyFields to same "to"
|
||||
# model with related_name set to '+'.
|
||||
foo = Line.objects.create(name='foo')
|
||||
bar = Line.objects.create(name='bar')
|
||||
foo = Line.objects.create(name="foo")
|
||||
bar = Line.objects.create(name="bar")
|
||||
post = Post.objects.create()
|
||||
post.primary_lines.add(foo)
|
||||
post.secondary_lines.add(bar)
|
||||
|
||||
Reference in New Issue
Block a user