mirror of
https://github.com/django/django.git
synced 2025-07-05 10:19:20 +00:00
[soc2010/test-refactor] Updated field_defaults modeltest to unittest
git-svn-id: http://code.djangoproject.com/svn/django/branches/soc2010/test-refactor@13379 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
dc2fd96803
commit
6f851bca15
@ -19,41 +19,3 @@ class Article(models.Model):
|
|||||||
|
|
||||||
def __unicode__(self):
|
def __unicode__(self):
|
||||||
return self.headline
|
return self.headline
|
||||||
|
|
||||||
__test__ = {'API_TESTS': u"""
|
|
||||||
>>> from datetime import datetime
|
|
||||||
|
|
||||||
# No articles are in the system yet.
|
|
||||||
>>> Article.objects.all()
|
|
||||||
[]
|
|
||||||
|
|
||||||
# Create an Article.
|
|
||||||
>>> a = Article(id=None)
|
|
||||||
|
|
||||||
# Grab the current datetime it should be very close to the default that just
|
|
||||||
# got saved as a.pub_date
|
|
||||||
>>> now = datetime.now()
|
|
||||||
|
|
||||||
# Save it into the database. You have to call save() explicitly.
|
|
||||||
>>> a.save()
|
|
||||||
|
|
||||||
# Now it has an ID. Note it's a long integer, as designated by the trailing "L".
|
|
||||||
>>> a.id
|
|
||||||
1L
|
|
||||||
|
|
||||||
# Access database columns via Python attributes.
|
|
||||||
>>> a.headline
|
|
||||||
u'Default headline'
|
|
||||||
|
|
||||||
# make sure the two dates are sufficiently close
|
|
||||||
>>> d = now - a.pub_date
|
|
||||||
>>> d.seconds < 5
|
|
||||||
True
|
|
||||||
|
|
||||||
# make sure that SafeString/SafeUnicode fields work
|
|
||||||
>>> from django.utils.safestring import SafeUnicode, SafeString
|
|
||||||
>>> a.headline = SafeUnicode(u'Iñtërnâtiônàlizætiøn1')
|
|
||||||
>>> a.save()
|
|
||||||
>>> a.headline = SafeString(u'Iñtërnâtiônàlizætiøn1'.encode('utf-8'))
|
|
||||||
>>> a.save()
|
|
||||||
"""}
|
|
||||||
|
40
tests/modeltests/field_defaults/tests.py
Normal file
40
tests/modeltests/field_defaults/tests.py
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
# coding: utf-8
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
from django.test import TestCase
|
||||||
|
from django.utils.safestring import SafeUnicode, SafeString
|
||||||
|
|
||||||
|
from models import Article
|
||||||
|
|
||||||
|
class FieldDefaultsTestCase(TestCase):
|
||||||
|
def test_article_defaults(self):
|
||||||
|
# No articles are in the system yet.
|
||||||
|
self.assertEqual(len(Article.objects.all()), 0)
|
||||||
|
|
||||||
|
# Create an Article.
|
||||||
|
a = Article(id=None)
|
||||||
|
|
||||||
|
# Grab the current datetime it should be very close to the
|
||||||
|
# default that just got saved as a.pub_date
|
||||||
|
now = datetime.now()
|
||||||
|
|
||||||
|
# Save it into the database. You have to call save() explicitly.
|
||||||
|
a.save()
|
||||||
|
|
||||||
|
# Now it has an ID. Note it's a long integer, as designated by
|
||||||
|
# the trailing "L".
|
||||||
|
self.assertEqual(a.id, 1L)
|
||||||
|
|
||||||
|
# Access database columns via Python attributes.
|
||||||
|
self.assertEqual(a.headline, u'Default headline')
|
||||||
|
|
||||||
|
# make sure the two dates are sufficiently close
|
||||||
|
#fixme, use the new unittest2 function
|
||||||
|
d = now - a.pub_date
|
||||||
|
self.assertTrue(d.seconds < 5)
|
||||||
|
|
||||||
|
# make sure that SafeString/SafeUnicode fields work
|
||||||
|
a.headline = SafeUnicode(u'Iñtërnâtiônàlizætiøn1')
|
||||||
|
a.save()
|
||||||
|
a.headline = SafeString(u'Iñtërnâtiônàlizætiøn1'.encode('utf-8'))
|
||||||
|
a.save()
|
Loading…
x
Reference in New Issue
Block a user