| 
									
										
										
										
											2009-03-01 10:00:52 +00:00
										 |  |  | # Redmine - project management software | 
					
						
							| 
									
										
										
										
											2013-01-12 09:29:31 +00:00
										 |  |  | # Copyright (C) 2006-2013  Jean-Philippe Lang | 
					
						
							| 
									
										
										
										
											2009-03-01 10:00:52 +00:00
										 |  |  | # | 
					
						
							|  |  |  | # This program is free software; you can redistribute it and/or | 
					
						
							|  |  |  | # modify it under the terms of the GNU General Public License | 
					
						
							|  |  |  | # as published by the Free Software Foundation; either version 2 | 
					
						
							|  |  |  | # of the License, or (at your option) any later version. | 
					
						
							| 
									
										
										
										
											2011-08-28 10:10:40 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2009-03-01 10:00:52 +00:00
										 |  |  | # This program is distributed in the hope that it will be useful, | 
					
						
							|  |  |  | # but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
					
						
							|  |  |  | # GNU General Public License for more details. | 
					
						
							| 
									
										
										
										
											2011-08-28 10:10:40 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2009-03-01 10:00:52 +00:00
										 |  |  | # You should have received a copy of the GNU General Public License | 
					
						
							|  |  |  | # along with this program; if not, write to the Free Software | 
					
						
							|  |  |  | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-12-12 23:24:34 +00:00
										 |  |  | require File.expand_path('../../../test_helper', __FILE__) | 
					
						
							| 
									
										
										
										
											2009-03-01 10:00:52 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-06-22 03:54:40 +00:00
										 |  |  | class CustomFieldsHelperTest < ActionView::TestCase | 
					
						
							| 
									
										
										
										
											2013-12-14 08:22:43 +00:00
										 |  |  |   include ApplicationHelper | 
					
						
							| 
									
										
										
										
											2009-03-01 10:00:52 +00:00
										 |  |  |   include CustomFieldsHelper | 
					
						
							|  |  |  |   include Redmine::I18n | 
					
						
							| 
									
										
										
										
											2012-03-04 13:53:38 +00:00
										 |  |  |   include ERB::Util | 
					
						
							| 
									
										
										
										
											2011-08-28 10:10:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-03-01 10:00:52 +00:00
										 |  |  |   def test_format_boolean_value | 
					
						
							|  |  |  |     I18n.locale = 'en' | 
					
						
							| 
									
										
										
										
											2013-12-14 08:22:43 +00:00
										 |  |  |     assert_equal 'Yes', format_value('1', CustomField.new(:field_format => 'bool')) | 
					
						
							|  |  |  |     assert_equal 'No', format_value('0', CustomField.new(:field_format => 'bool')) | 
					
						
							| 
									
										
										
										
											2009-03-01 10:00:52 +00:00
										 |  |  |   end | 
					
						
							| 
									
										
										
										
											2011-08-28 10:10:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-12-14 11:26:47 +00:00
										 |  |  |   def test_label_tag_should_include_description_as_span_title_if_present | 
					
						
							|  |  |  |     field = CustomField.new(:field_format => 'string', :description => 'This is the description') | 
					
						
							|  |  |  |     tag = custom_field_label_tag('foo', CustomValue.new(:custom_field => field)) | 
					
						
							|  |  |  |     assert_select_in tag, 'label span[title=?]', 'This is the description' | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   def test_label_tag_should_not_include_title_if_description_is_blank | 
					
						
							|  |  |  |     field = CustomField.new(:field_format => 'string') | 
					
						
							|  |  |  |     tag = custom_field_label_tag('foo', CustomValue.new(:custom_field => field)) | 
					
						
							|  |  |  |     assert_select_in tag, 'label span[title]', 0
 | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-24 18:24:30 +00:00
										 |  |  |   def test_unknow_field_format_should_be_edited_as_string | 
					
						
							|  |  |  |     field = CustomField.new(:field_format => 'foo') | 
					
						
							|  |  |  |     value = CustomValue.new(:value => 'bar', :custom_field => field) | 
					
						
							|  |  |  |     field.id = 52
 | 
					
						
							| 
									
										
										
										
											2011-08-28 10:10:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-05-01 18:01:21 +00:00
										 |  |  |     assert_equal '<input class="foo_cf" id="object_custom_field_values_52" name="object[custom_field_values][52]" type="text" value="bar" />', | 
					
						
							| 
									
										
										
										
											2011-03-24 18:24:30 +00:00
										 |  |  |       custom_field_tag('object', value) | 
					
						
							|  |  |  |   end | 
					
						
							| 
									
										
										
										
											2011-08-28 10:10:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-24 18:24:30 +00:00
										 |  |  |   def test_unknow_field_format_should_be_bulk_edited_as_string | 
					
						
							|  |  |  |     field = CustomField.new(:field_format => 'foo') | 
					
						
							|  |  |  |     field.id = 52
 | 
					
						
							| 
									
										
										
										
											2011-08-28 10:10:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-30 22:17:27 +00:00
										 |  |  |     assert_include '<input class="foo_cf" id="object_custom_field_values_52" name="object[custom_field_values][52]" type="text" value="" />', | 
					
						
							| 
									
										
										
										
											2011-03-24 18:24:30 +00:00
										 |  |  |       custom_field_tag_for_bulk_edit('object', field) | 
					
						
							|  |  |  |   end | 
					
						
							| 
									
										
										
										
											2009-03-01 10:00:52 +00:00
										 |  |  | end |