mirror of https://github.com/django/django.git
Fixed a test case that was failing in Oracle due to conflation of null and empty strings.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@14547 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
9892f4c5d5
commit
8a7a44ffa2
|
@ -28,13 +28,7 @@ class Stuff(models.Model):
|
|||
owner = models.ForeignKey(User, null=True)
|
||||
|
||||
def __unicode__(self):
|
||||
# Oracle doesn't distinguish between None and the empty string.
|
||||
# This hack makes the test case pass using Oracle.
|
||||
name = self.name
|
||||
if (connection.features.interprets_empty_strings_as_nulls
|
||||
and name == u''):
|
||||
name = None
|
||||
return unicode(name) + u' is owned by ' + unicode(self.owner)
|
||||
return unicode(self.name) + u' is owned by ' + unicode(self.owner)
|
||||
|
||||
|
||||
class Absolute(models.Model):
|
||||
|
|
|
@ -13,7 +13,8 @@ from django.core.management.commands.dumpdata import sort_dependencies
|
|||
from django.core.management.base import CommandError
|
||||
from django.db.models import signals
|
||||
from django.db import transaction
|
||||
from django.test import TestCase, TransactionTestCase
|
||||
from django.test import TestCase, TransactionTestCase, skipIfDBFeature, \
|
||||
skipUnlessDBFeature
|
||||
|
||||
from models import Animal, Stuff
|
||||
from models import Absolute, Parent, Child
|
||||
|
@ -61,6 +62,7 @@ class TestFixtures(TestCase):
|
|||
animal.save()
|
||||
self.assertGreater(animal.id, 1)
|
||||
|
||||
@skipIfDBFeature('interprets_empty_strings_as_nulls')
|
||||
def test_pretty_print_xml(self):
|
||||
"""
|
||||
Regression test for ticket #4558 -- pretty printing of XML fixtures
|
||||
|
@ -76,6 +78,22 @@ class TestFixtures(TestCase):
|
|||
self.assertEqual(Stuff.objects.all()[0].name, None)
|
||||
self.assertEqual(Stuff.objects.all()[0].owner, None)
|
||||
|
||||
@skipUnlessDBFeature('interprets_empty_strings_as_nulls')
|
||||
def test_pretty_print_xml_empty_strings(self):
|
||||
"""
|
||||
Regression test for ticket #4558 -- pretty printing of XML fixtures
|
||||
doesn't affect parsing of None values.
|
||||
"""
|
||||
# Load a pretty-printed XML fixture with Nulls.
|
||||
management.call_command(
|
||||
'loaddata',
|
||||
'pretty.xml',
|
||||
verbosity=0,
|
||||
commit=False
|
||||
)
|
||||
self.assertEqual(Stuff.objects.all()[0].name, u'')
|
||||
self.assertEqual(Stuff.objects.all()[0].owner, None)
|
||||
|
||||
def test_absolute_path(self):
|
||||
"""
|
||||
Regression test for ticket #6436 --
|
||||
|
|
Loading…
Reference in New Issue