mirror of
https://github.com/django/django.git
synced 2025-10-31 09:41:08 +00:00
Migrated m2m_intermediary doctests. Thanks to Alex Gaynor.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@13787 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
38
tests/modeltests/m2m_intermediary/tests.py
Normal file
38
tests/modeltests/m2m_intermediary/tests.py
Normal file
@@ -0,0 +1,38 @@
|
||||
from datetime import datetime
|
||||
|
||||
from django.test import TestCase
|
||||
|
||||
from models import Reporter, Article, Writer
|
||||
|
||||
|
||||
class M2MIntermediaryTests(TestCase):
|
||||
def test_intermeiary(self):
|
||||
r1 = Reporter.objects.create(first_name="John", last_name="Smith")
|
||||
r2 = Reporter.objects.create(first_name="Jane", last_name="Doe")
|
||||
|
||||
a = Article.objects.create(
|
||||
headline="This is a test", pub_date=datetime(2005, 7, 27)
|
||||
)
|
||||
|
||||
w1 = Writer.objects.create(reporter=r1, article=a, position="Main writer")
|
||||
w2 = Writer.objects.create(reporter=r2, article=a, position="Contributor")
|
||||
|
||||
self.assertQuerysetEqual(
|
||||
a.writer_set.select_related().order_by("-position"), [
|
||||
("John Smith", "Main writer"),
|
||||
("Jane Doe", "Contributor"),
|
||||
],
|
||||
lambda w: (unicode(w.reporter), w.position)
|
||||
)
|
||||
self.assertEqual(w1.reporter, r1)
|
||||
self.assertEqual(w2.reporter, r2)
|
||||
|
||||
self.assertEqual(w1.article, a)
|
||||
self.assertEqual(w2.article, a)
|
||||
|
||||
self.assertQuerysetEqual(
|
||||
r1.writer_set.all(), [
|
||||
("John Smith", "Main writer")
|
||||
],
|
||||
lambda w: (unicode(w.reporter), w.position)
|
||||
)
|
||||
Reference in New Issue
Block a user