summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorRussell Keith-Magee <russell@keith-magee.com>2007-07-20 12:07:58 +0000
committerRussell Keith-Magee <russell@keith-magee.com>2007-07-20 12:07:58 +0000
commit3fef1f4c8d779ab40a13f13a1829a98e48e58c9c (patch)
treece3e43f9bb21060072094e1c27a5d45b7362bcb1 /tests
parent0827f4ac7e7e5b310e0aa7accdbb7dfef9a37132 (diff)
Fixed #4558 -- Modified XML serializer to handle whitespace better around None tags. Thanks to Bill Fenner <fenner@gmail.com> for the report and fix.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@5727 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'tests')
-rw-r--r--tests/regressiontests/fixtures_regress/fixtures/pretty.xml11
-rw-r--r--tests/regressiontests/fixtures_regress/models.py17
2 files changed, 28 insertions, 0 deletions
diff --git a/tests/regressiontests/fixtures_regress/fixtures/pretty.xml b/tests/regressiontests/fixtures_regress/fixtures/pretty.xml
new file mode 100644
index 0000000000..68e5710c6a
--- /dev/null
+++ b/tests/regressiontests/fixtures_regress/fixtures/pretty.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<django-objects version="1.0">
+ <object pk="1" model="fixtures_regress.stuff">
+ <field type="CharField" name="name">
+ <None/>
+ </field>
+ <field to="auth.user" name="owner" rel="ManyToOneRel">
+ <None/>
+ </field>
+ </object>
+</django-objects> \ No newline at end of file
diff --git a/tests/regressiontests/fixtures_regress/models.py b/tests/regressiontests/fixtures_regress/models.py
index 31528238e9..41ef8c26bf 100644
--- a/tests/regressiontests/fixtures_regress/models.py
+++ b/tests/regressiontests/fixtures_regress/models.py
@@ -1,4 +1,5 @@
from django.db import models
+from django.contrib.auth.models import User
class Animal(models.Model):
name = models.CharField(maxlength=150)
@@ -14,6 +15,13 @@ class Plant(models.Model):
# For testing when upper case letter in app name; regression for #4057
db_table = "Fixtures_regress_plant"
+class Stuff(models.Model):
+ name = models.CharField(maxlength=20, null=True)
+ owner = models.ForeignKey(User, null=True)
+
+ def __unicode__(self):
+ return unicode(self.name) + u' is owned by ' + unicode(self.owner)
+
__test__ = {'API_TESTS':"""
>>> from django.core import management
@@ -26,4 +34,13 @@ __test__ = {'API_TESTS':"""
>>> animal = Animal(name='Platypus', latin_name='Ornithorhynchus anatinus')
>>> animal.save()
+###############################################
+# 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.load_data(['pretty.xml'], verbosity=0)
+>>> Stuff.objects.all()
+[<Stuff: None is owned by None>]
+
"""}