Skip to content

Commit

Permalink
[1.2.X] Migrated custom_methods doctests. Thanks to Alex Gaynor.
Browse files Browse the repository at this point in the history
Backport of r13775 from trunk.

git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.2.X@13792 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information
freakboy3742 committed Sep 12, 2010
1 parent e41d1b7 commit 574ee82
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 23 deletions.
23 changes: 0 additions & 23 deletions tests/modeltests/custom_methods/models.py
Expand Up @@ -33,27 +33,4 @@ def articles_from_same_day_2(self):
WHERE pub_date = %s
AND id != %s""", [connection.ops.value_to_db_date(self.pub_date),
self.id])
# The asterisk in "(*row)" tells Python to expand the list into
# positional arguments to Article().
return [self.__class__(*row) for row in cursor.fetchall()]

__test__ = {'API_TESTS':"""
# Create a couple of Articles.
>>> from datetime import date
>>> a = Article(id=None, headline='Area man programs in Python', pub_date=date(2005, 7, 27))
>>> a.save()
>>> b = Article(id=None, headline='Beatles reunite', pub_date=date(2005, 7, 27))
>>> b.save()
# Test the custom methods.
>>> a.was_published_today()
False
>>> a.articles_from_same_day_1()
[<Article: Beatles reunite>]
>>> a.articles_from_same_day_2()
[<Article: Beatles reunite>]
>>> b.articles_from_same_day_1()
[<Article: Area man programs in Python>]
>>> b.articles_from_same_day_2()
[<Article: Area man programs in Python>]
"""}
42 changes: 42 additions & 0 deletions tests/modeltests/custom_methods/tests.py
@@ -0,0 +1,42 @@
from datetime import date

from django.test import TestCase

from models import Article


class MethodsTests(TestCase):
def test_custom_methods(self):
a = Article.objects.create(
headline="Area man programs in Python", pub_date=date(2005, 7, 27)
)
b = Article.objects.create(
headline="Beatles reunite", pub_date=date(2005, 7, 27)
)

self.assertFalse(a.was_published_today())
self.assertQuerysetEqual(
a.articles_from_same_day_1(), [
"Beatles reunite",
],
lambda a: a.headline,
)
self.assertQuerysetEqual(
a.articles_from_same_day_2(), [
"Beatles reunite",
],
lambda a: a.headline
)

self.assertQuerysetEqual(
b.articles_from_same_day_1(), [
"Area man programs in Python",
],
lambda a: a.headline,
)
self.assertQuerysetEqual(
b.articles_from_same_day_2(), [
"Area man programs in Python",
],
lambda a: a.headline
)

0 comments on commit 574ee82

Please sign in to comment.