##// END OF EJS Templates
add unit test that enumeration returns default in regardless of active or not...
add unit test that enumeration returns default in regardless of active or not git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@10231 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r8986:d4372ab74748
r10048:3478a21c2fe5
Show More
time_entry_activity_test.rb
88 lines | 3.0 KiB | text/x-ruby | RubyLexer
/ test / unit / time_entry_activity_test.rb
Toshi MARUYAMA
remove trailing white-spaces from test/unit/time_entry_activity_test.rb....
r6652 # Redmine - project management software
Jean-Philippe Lang
Extracts custom field values validation from CustomValue so that they can be validated globally from the customized object (#1189)....
r8597 # Copyright (C) 2006-2012 Jean-Philippe Lang
Eric Davis
Changed Enumerations to use a Single Table Inheritance...
r2677 #
# 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.
Toshi MARUYAMA
remove trailing white-spaces from test/unit/time_entry_activity_test.rb....
r6652 #
Eric Davis
Changed Enumerations to use a Single Table Inheritance...
r2677 # 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.
Toshi MARUYAMA
remove trailing white-spaces from test/unit/time_entry_activity_test.rb....
r6652 #
Eric Davis
Changed Enumerations to use a Single Table Inheritance...
r2677 # 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.
Jean-Baptiste Barth
Use absolute paths in test/**/* requires for Ruby 1.9.2 compatibility. #4050...
r4395 require File.expand_path('../../test_helper', __FILE__)
Eric Davis
Changed Enumerations to use a Single Table Inheritance...
r2677
Eric Davis
Upgraded to Rails 2.3.4 (#3597)...
r2773 class TimeEntryActivityTest < ActiveSupport::TestCase
Eric Davis
Changed Enumerations to use a Single Table Inheritance...
r2677 fixtures :enumerations, :time_entries
Jean-Philippe Lang
Extracts custom field values validation from CustomValue so that they can be validated globally from the customized object (#1189)....
r8597 include Redmine::I18n
Eric Davis
Changed Enumerations to use a Single Table Inheritance...
r2677 def test_should_be_an_enumeration
assert TimeEntryActivity.ancestors.include?(Enumeration)
end
Toshi MARUYAMA
add functional tests for bulk edit time entries (#7996)....
r5195
Eric Davis
Changed Enumerations to use a Single Table Inheritance...
r2677 def test_objects_count
assert_equal 3, TimeEntryActivity.find_by_name("Design").objects_count
Toshi MARUYAMA
add functional tests for bulk edit time entries (#7996)....
r5195 assert_equal 2, TimeEntryActivity.find_by_name("Development").objects_count
Eric Davis
Changed Enumerations to use a Single Table Inheritance...
r2677 end
def test_option_name
assert_equal :enumeration_activities, TimeEntryActivity.new.option_name
end
Eric Davis
Enumerations can now have custom fields defined on them. #4077...
r2831
def test_create_with_custom_field
field = TimeEntryActivityCustomField.find_by_name('Billable')
e = TimeEntryActivity.new(:name => 'Custom Data')
e.custom_field_values = {field.id => "1"}
assert e.save
e.reload
assert_equal "1", e.custom_value_for(field).value
end
def test_create_without_required_custom_field_should_fail
Jean-Philippe Lang
Extracts custom field values validation from CustomValue so that they can be validated globally from the customized object (#1189)....
r8597 set_language_if_valid 'en'
Eric Davis
Enumerations can now have custom fields defined on them. #4077...
r2831 field = TimeEntryActivityCustomField.find_by_name('Billable')
field.update_attribute(:is_required, true)
e = TimeEntryActivity.new(:name => 'Custom Data')
assert !e.save
Jean-Philippe Lang
Array#to_s behaviour changed in ruby 1.9....
r8986 assert_equal ["Billable can't be blank"], e.errors.full_messages
Eric Davis
Enumerations can now have custom fields defined on them. #4077...
r2831 end
def test_create_with_required_custom_field_should_succeed
field = TimeEntryActivityCustomField.find_by_name('Billable')
field.update_attribute(:is_required, true)
e = TimeEntryActivity.new(:name => 'Custom Data')
e.custom_field_values = {field.id => "1"}
assert e.save
end
Jean-Philippe Lang
Extracts custom field values validation from CustomValue so that they can be validated globally from the customized object (#1189)....
r8597 def test_update_with_required_custom_field_change
set_language_if_valid 'en'
Eric Davis
Enumerations can now have custom fields defined on them. #4077...
r2831 field = TimeEntryActivityCustomField.find_by_name('Billable')
field.update_attribute(:is_required, true)
e = TimeEntryActivity.find(10)
assert e.available_custom_fields.include?(field)
# No change to custom field, record can be saved
assert e.save
# Blanking custom field, save should fail
e.custom_field_values = {field.id => ""}
assert !e.save
Jean-Philippe Lang
Array#to_s behaviour changed in ruby 1.9....
r8986 assert_equal ["Billable can't be blank"], e.errors.full_messages
Toshi MARUYAMA
remove trailing white-spaces from test/unit/time_entry_activity_test.rb....
r6652
Eric Davis
Enumerations can now have custom fields defined on them. #4077...
r2831 # Update custom field to valid value, save should succeed
e.custom_field_values = {field.id => "0"}
assert e.save
e.reload
assert_equal "0", e.custom_value_for(field).value
end
Eric Davis
Changed Enumerations to use a Single Table Inheritance...
r2677 end