summaryrefslogtreecommitdiff
path: root/tests/regressiontests/admin_util
diff options
context:
space:
mode:
authorBrian Rosner <brosner@gmail.com>2010-01-09 21:28:54 +0000
committerBrian Rosner <brosner@gmail.com>2010-01-09 21:28:54 +0000
commitac1b275130e54e94fd3bd5b3a5ddc4603a247a27 (patch)
tree31f6ac703b5ea5fd373fd40a0b67b628927af83c /tests/regressiontests/admin_util
parent2dd9a85819218e481f9bc6e88264c2b1ae5f25e8 (diff)
Fixed #12550 -- better handling with choices and null fields when displaying read-only values
Thanks Jacques Beaurain for the report and patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@12148 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'tests/regressiontests/admin_util')
-rw-r--r--tests/regressiontests/admin_util/__init__.py0
-rw-r--r--tests/regressiontests/admin_util/models.py1
-rw-r--r--tests/regressiontests/admin_util/tests.py40
3 files changed, 41 insertions, 0 deletions
diff --git a/tests/regressiontests/admin_util/__init__.py b/tests/regressiontests/admin_util/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/regressiontests/admin_util/__init__.py
diff --git a/tests/regressiontests/admin_util/models.py b/tests/regressiontests/admin_util/models.py
new file mode 100644
index 0000000000..b40f364b76
--- /dev/null
+++ b/tests/regressiontests/admin_util/models.py
@@ -0,0 +1 @@
+# needed for tests \ No newline at end of file
diff --git a/tests/regressiontests/admin_util/tests.py b/tests/regressiontests/admin_util/tests.py
new file mode 100644
index 0000000000..11e71e20ec
--- /dev/null
+++ b/tests/regressiontests/admin_util/tests.py
@@ -0,0 +1,40 @@
+import unittest
+
+from django.db import models
+
+from django.contrib import admin
+from django.contrib.admin.util import display_for_field
+from django.contrib.admin.views.main import EMPTY_CHANGELIST_VALUE
+
+
+
+class UtilTests(unittest.TestCase):
+ def test_null_display_for_field(self):
+ """
+ Regression test for #12550: display_for_field should handle None
+ value.
+ """
+ display_value = display_for_field(None, models.CharField())
+ self.assertEqual(display_value, EMPTY_CHANGELIST_VALUE)
+
+ display_value = display_for_field(None, models.CharField(
+ choices=(
+ (None, "test_none"),
+ )
+ ))
+ self.assertEqual(display_value, "test_none")
+
+ display_value = display_for_field(None, models.DateField())
+ self.assertEqual(display_value, EMPTY_CHANGELIST_VALUE)
+
+ display_value = display_for_field(None, models.TimeField())
+ self.assertEqual(display_value, EMPTY_CHANGELIST_VALUE)
+
+ display_value = display_for_field(None, models.NullBooleanField())
+ self.assertEqual(display_value, EMPTY_CHANGELIST_VALUE)
+
+ display_value = display_for_field(None, models.DecimalField())
+ self.assertEqual(display_value, EMPTY_CHANGELIST_VALUE)
+
+ display_value = display_for_field(None, models.FloatField())
+ self.assertEqual(display_value, EMPTY_CHANGELIST_VALUE)