Aram Dulyan avatar Aram Dulyan committed b8215cc

Added regression test for hidden widget issue.

Comments (0)

Files changed (2)

 
     """
     body = MarkupField(no_rendered_field=True)
+
+
+
+class CallableDefault(models.Model):
+    """
+    A callable default on a field triggers hidden widget rendering by Django.
+    """
+    body = MarkupField(default=lambda:'')
 from markitup.templatetags.markitup_tags import _get_markitup_context
 from markitup.widgets import MarkItUpWidget, MarkupTextarea, AdminMarkItUpWidget
 
-from models import Post, AbstractParent
+from models import Post, AbstractParent, CallableDefault
 
 
 
 
 
 
+class HiddenFieldFormTests(TestCase):
+    def setUp(self):
+        self.post = CallableDefault(body='[link](http://example.com) & "text"')
+        self.form_class = modelform_factory(CallableDefault)
+
+
+    def testHiddenFieldContents(self):
+        form = self.form_class(instance=self.post)
+        self.assertEquals(unicode(form['body']), (
+            u'<textarea id="id_body" rows="10" cols="40" name="body">'
+            u'[link](http://example.com) &amp; &quot;text&quot;'
+            u'</textarea><input type="hidden" name="initial-body" value="'
+            u'[link](http://example.com) &amp; &quot;text&quot;" '
+            u'id="initial-id_body" />'
+        ))
+
+
+
 class PreviewTests(TestCase):
     def test_preview_filter(self):
         c = Client()
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.