mirror of
				https://github.com/django/django.git
				synced 2025-10-31 01:25:32 +00:00 
			
		
		
		
	This is preparation for landing the template-based widget rendering patch and goes a long way to making these tests more useful for future development. The old doctest heritage is strong here.
		
			
				
	
	
		
			35 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| from django.forms import Textarea
 | |
| from django.utils.safestring import mark_safe
 | |
| 
 | |
| from .base import WidgetTest
 | |
| 
 | |
| 
 | |
| class TextareaTest(WidgetTest):
 | |
|     widget = Textarea()
 | |
| 
 | |
|     def test_render(self):
 | |
|         self.check_html(self.widget, 'msg', 'value', html=(
 | |
|             '<textarea rows="10" cols="40" name="msg">value</textarea>'
 | |
|         ))
 | |
| 
 | |
|     def test_render_required(self):
 | |
|         widget = Textarea()
 | |
|         widget.is_required = True
 | |
|         self.check_html(widget, 'msg', 'value', html='<textarea rows="10" cols="40" name="msg">value</textarea>')
 | |
| 
 | |
|     def test_render_empty(self):
 | |
|         self.check_html(self.widget, 'msg', '', html='<textarea rows="10" cols="40" name="msg"></textarea>')
 | |
| 
 | |
|     def test_render_none(self):
 | |
|         self.check_html(self.widget, 'msg', None, html='<textarea rows="10" cols="40" name="msg"></textarea>')
 | |
| 
 | |
|     def test_escaping(self):
 | |
|         self.check_html(self.widget, 'msg', 'some "quoted" & ampersanded value', html=(
 | |
|             '<textarea rows="10" cols="40" name="msg">some "quoted" & ampersanded value</textarea>'
 | |
|         ))
 | |
| 
 | |
|     def test_mark_safe(self):
 | |
|         self.check_html(self.widget, 'msg', mark_safe('pre "quoted" value'), html=(
 | |
|             '<textarea rows="10" cols="40" name="msg">pre "quoted" value</textarea>'
 | |
|         ))
 |