diff options
author | Go MAEDA <maeda@farend.jp> | 2021-12-21 06:42:47 +0000 |
---|---|---|
committer | Go MAEDA <maeda@farend.jp> | 2021-12-21 06:42:47 +0000 |
commit | fde1e18b3aedda0a695bbd5212a82ab086cba441 (patch) | |
tree | edf118773557e6e47c932b2ec9581f31bfa5ea4c /test/unit | |
parent | 81e25404aacd0cfe0ecb9331e7edec4e76fd584d (diff) | |
download | redmine-fde1e18b3aedda0a695bbd5212a82ab086cba441.tar.gz redmine-fde1e18b3aedda0a695bbd5212a82ab086cba441.zip |
Saving time tracking activities without any change may turn a system activity into a project activity (#36318).
Patch by Yuichi HARADA.
git-svn-id: http://svn.redmine.org/redmine/trunk@21319 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'test/unit')
-rw-r--r-- | test/unit/time_entry_activity_test.rb | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/test/unit/time_entry_activity_test.rb b/test/unit/time_entry_activity_test.rb index 67e925850..7953a7cee 100644 --- a/test/unit/time_entry_activity_test.rb +++ b/test/unit/time_entry_activity_test.rb @@ -144,7 +144,7 @@ class TimeEntryActivityTest < ActiveSupport::TestCase parent_activity.id.to_s => { 'parent_id' => parent_activity.id.to_s, 'active' => '0', - 'custom_field_values' => {'7' => ''} + 'custom_field_values' => {'7' => '1'} } } ) @@ -158,7 +158,7 @@ class TimeEntryActivityTest < ActiveSupport::TestCase other_parent_activity.id.to_s => { 'parent_id' => other_parent_activity.id.to_s, 'active' => '0', - 'custom_field_values' => {'7' => ''} + 'custom_field_values' => {'7' => '1'} } } ) @@ -179,7 +179,7 @@ class TimeEntryActivityTest < ActiveSupport::TestCase parent_activity.id.to_s => { 'parent_id' => parent_activity.id.to_s, 'active' => '0', - 'custom_field_values' => {'7' => ''} + 'custom_field_values' => {'7' => '1'} } } ) @@ -196,4 +196,27 @@ class TimeEntryActivityTest < ActiveSupport::TestCase assert_equal 'Design2', project_activity.reload.name assert_equal 'Design3', parent_activity.reload.name end + + def test_project_activity_should_not_be_created_if_no_custom_value_is_changed + system_activity = TimeEntryActivity.find(9) # Design + assert_equal true, system_activity.active + + custom_field_value = system_activity.custom_field_values.detect{|cfv| cfv.custom_field.id == 7} + assert_nil custom_field_value.value + + project = Project.find(1) + assert_equal 0, project.time_entry_activities.count + + assert_no_difference 'TimeEntryActivity.count' do + project.update_or_create_time_entry_activities( + { + '9' => { + 'parent_id' => '9', + 'active' => '1', + 'custom_field_values' => {'7' => ''} + } + } + ) + end + end end |