summaryrefslogtreecommitdiff
path: root/parts/django/tests/modeltests/m2m_multiple
diff options
context:
space:
mode:
Diffstat (limited to 'parts/django/tests/modeltests/m2m_multiple')
-rw-r--r--parts/django/tests/modeltests/m2m_multiple/__init__.py0
-rw-r--r--parts/django/tests/modeltests/m2m_multiple/models.py30
-rw-r--r--parts/django/tests/modeltests/m2m_multiple/tests.py84
3 files changed, 0 insertions, 114 deletions
diff --git a/parts/django/tests/modeltests/m2m_multiple/__init__.py b/parts/django/tests/modeltests/m2m_multiple/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/parts/django/tests/modeltests/m2m_multiple/__init__.py
+++ /dev/null
diff --git a/parts/django/tests/modeltests/m2m_multiple/models.py b/parts/django/tests/modeltests/m2m_multiple/models.py
deleted file mode 100644
index e53f840..0000000
--- a/parts/django/tests/modeltests/m2m_multiple/models.py
+++ /dev/null
@@ -1,30 +0,0 @@
-"""
-20. Multiple many-to-many relationships between the same two tables
-
-In this example, an ``Article`` can have many "primary" ``Category`` objects
-and many "secondary" ``Category`` objects.
-
-Set ``related_name`` to designate what the reverse relationship is called.
-"""
-
-from django.db import models
-
-class Category(models.Model):
- name = models.CharField(max_length=20)
- class Meta:
- ordering = ('name',)
-
- def __unicode__(self):
- return self.name
-
-class Article(models.Model):
- headline = models.CharField(max_length=50)
- pub_date = models.DateTimeField()
- primary_categories = models.ManyToManyField(Category, related_name='primary_article_set')
- secondary_categories = models.ManyToManyField(Category, related_name='secondary_article_set')
- class Meta:
- ordering = ('pub_date',)
-
- def __unicode__(self):
- return self.headline
-
diff --git a/parts/django/tests/modeltests/m2m_multiple/tests.py b/parts/django/tests/modeltests/m2m_multiple/tests.py
deleted file mode 100644
index 1f4503a..0000000
--- a/parts/django/tests/modeltests/m2m_multiple/tests.py
+++ /dev/null
@@ -1,84 +0,0 @@
-from datetime import datetime
-
-from django.test import TestCase
-
-from models import Article, Category
-
-
-class M2MMultipleTests(TestCase):
- def test_multiple(self):
- c1, c2, c3, c4 = [
- Category.objects.create(name=name)
- for name in ["Sports", "News", "Crime", "Life"]
- ]
-
- a1 = Article.objects.create(
- headline="Area man steals", pub_date=datetime(2005, 11, 27)
- )
- a1.primary_categories.add(c2, c3)
- a1.secondary_categories.add(c4)
-
- a2 = Article.objects.create(
- headline="Area man runs", pub_date=datetime(2005, 11, 28)
- )
- a2.primary_categories.add(c1, c2)
- a2.secondary_categories.add(c4)
-
- self.assertQuerysetEqual(
- a1.primary_categories.all(), [
- "Crime",
- "News",
- ],
- lambda c: c.name
- )
- self.assertQuerysetEqual(
- a2.primary_categories.all(), [
- "News",
- "Sports",
- ],
- lambda c: c.name
- )
- self.assertQuerysetEqual(
- a1.secondary_categories.all(), [
- "Life",
- ],
- lambda c: c.name
- )
- self.assertQuerysetEqual(
- c1.primary_article_set.all(), [
- "Area man runs",
- ],
- lambda a: a.headline
- )
- self.assertQuerysetEqual(
- c1.secondary_article_set.all(), []
- )
- self.assertQuerysetEqual(
- c2.primary_article_set.all(), [
- "Area man steals",
- "Area man runs",
- ],
- lambda a: a.headline
- )
- self.assertQuerysetEqual(
- c2.secondary_article_set.all(), []
- )
- self.assertQuerysetEqual(
- c3.primary_article_set.all(), [
- "Area man steals",
- ],
- lambda a: a.headline
- )
- self.assertQuerysetEqual(
- c3.secondary_article_set.all(), []
- )
- self.assertQuerysetEqual(
- c4.primary_article_set.all(), []
- )
- self.assertQuerysetEqual(
- c4.secondary_article_set.all(), [
- "Area man steals",
- "Area man runs",
- ],
- lambda a: a.headline
- )