27 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Ruby
		
	
	
	
		
		
			
		
	
	
			27 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Ruby
		
	
	
	
|  | require File.dirname(__FILE__) + '/helper' | ||
|  | 
 | ||
|  | class UnlessElseTest < Test::Unit::TestCase | ||
|  |   include Liquid | ||
|  | 
 | ||
|  |   def test_unless | ||
|  |     assert_template_result('  ',' {% unless true %} this text should not go into the output {% endunless %} ') | ||
|  |     assert_template_result('  this text should go into the output  ', | ||
|  |               ' {% unless false %} this text should go into the output {% endunless %} ') | ||
|  |     assert_template_result('  you rock ?','{% unless true %} you suck {% endunless %} {% unless false %} you rock {% endunless %}?') | ||
|  |   end | ||
|  | 
 | ||
|  |   def test_unless_else | ||
|  |     assert_template_result(' YES ','{% unless true %} NO {% else %} YES {% endunless %}') | ||
|  |     assert_template_result(' YES ','{% unless false %} YES {% else %} NO {% endunless %}') | ||
|  |     assert_template_result(' YES ','{% unless "foo" %} NO {% else %} YES {% endunless %}') | ||
|  |   end | ||
|  | 
 | ||
|  |   def test_unless_in_loop | ||
|  |     assert_template_result '23', '{% for i in choices %}{% unless i %}{{ forloop.index }}{% endunless %}{% endfor %}', 'choices' => [1, nil, false] | ||
|  |   end | ||
|  | 
 | ||
|  |   def test_unless_else_in_loop | ||
|  |     assert_template_result ' TRUE  2  3 ', '{% for i in choices %}{% unless i %} {{ forloop.index }} {% else %} TRUE {% endunless %}{% endfor %}', 'choices' => [1, nil, false] | ||
|  |   end | ||
|  | 
 | ||
|  | end |