Chris@1517: # Redmine - project management software Chris@1517: # Copyright (C) 2006-2014 Jean-Philippe Lang Chris@1517: # Chris@1517: # This program is free software; you can redistribute it and/or Chris@1517: # modify it under the terms of the GNU General Public License Chris@1517: # as published by the Free Software Foundation; either version 2 Chris@1517: # of the License, or (at your option) any later version. Chris@1517: # Chris@1517: # This program is distributed in the hope that it will be useful, Chris@1517: # but WITHOUT ANY WARRANTY; without even the implied warranty of Chris@1517: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Chris@1517: # GNU General Public License for more details. Chris@1517: # Chris@1517: # You should have received a copy of the GNU General Public License Chris@1517: # along with this program; if not, write to the Free Software Chris@1517: # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Chris@1517: Chris@1517: require File.expand_path('../../../test_helper', __FILE__) Chris@1517: Chris@1517: class CustomFieldsHelperTest < ActionView::TestCase Chris@1517: include ApplicationHelper Chris@1517: include CustomFieldsHelper Chris@1517: include Redmine::I18n Chris@1517: include ERB::Util Chris@1517: Chris@1517: def test_format_boolean_value Chris@1517: I18n.locale = 'en' Chris@1517: assert_equal 'Yes', format_value('1', CustomField.new(:field_format => 'bool')) Chris@1517: assert_equal 'No', format_value('0', CustomField.new(:field_format => 'bool')) Chris@1517: end Chris@1517: Chris@1517: def test_label_tag_should_include_description_as_span_title_if_present Chris@1517: field = CustomField.new(:field_format => 'string', :description => 'This is the description') Chris@1517: tag = custom_field_label_tag('foo', CustomValue.new(:custom_field => field)) Chris@1517: assert_select_in tag, 'label span[title=?]', 'This is the description' Chris@1517: end Chris@1517: Chris@1517: def test_label_tag_should_not_include_title_if_description_is_blank Chris@1517: field = CustomField.new(:field_format => 'string') Chris@1517: tag = custom_field_label_tag('foo', CustomValue.new(:custom_field => field)) Chris@1517: assert_select_in tag, 'label span[title]', 0 Chris@1517: end Chris@1517: Chris@1517: def test_unknow_field_format_should_be_edited_as_string Chris@1517: field = CustomField.new(:field_format => 'foo') Chris@1517: value = CustomValue.new(:value => 'bar', :custom_field => field) Chris@1517: field.id = 52 Chris@1517: Chris@1517: assert_equal '', Chris@1517: custom_field_tag('object', value) Chris@1517: end Chris@1517: Chris@1517: def test_unknow_field_format_should_be_bulk_edited_as_string Chris@1517: field = CustomField.new(:field_format => 'foo') Chris@1517: field.id = 52 Chris@1517: Chris@1517: assert_include '', Chris@1517: custom_field_tag_for_bulk_edit('object', field) Chris@1517: end Chris@1517: end