Mercurial > hg > soundsoftware-site
diff test/unit/time_entry_activity_test.rb @ 1464:261b3d9a4903 redmine-2.4
Update to Redmine 2.4 branch rev 12663
author | Chris Cannam |
---|---|
date | Tue, 14 Jan 2014 14:37:42 +0000 |
parents | 433d4f72a19b |
children | e248c7af89ec |
line wrap: on
line diff
--- a/test/unit/time_entry_activity_test.rb Fri Jun 14 09:05:06 2013 +0100 +++ b/test/unit/time_entry_activity_test.rb Tue Jan 14 14:37:42 2014 +0000 @@ -1,5 +1,5 @@ # Redmine - project management software -# Copyright (C) 2006-2012 Jean-Philippe Lang +# Copyright (C) 2006-2013 Jean-Philippe Lang # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License @@ -84,5 +84,33 @@ e.reload assert_equal "0", e.custom_value_for(field).value end + + def test_system_activity_with_child_in_use_should_be_in_use + project = Project.generate! + system_activity = TimeEntryActivity.create!(:name => 'Activity') + project_activity = TimeEntryActivity.create!(:name => 'Activity', :project => project, :parent_id => system_activity.id) + + TimeEntry.generate!(:project => project, :activity => project_activity) + + assert project_activity.in_use? + assert system_activity.in_use? + end + + def test_destroying_a_system_activity_should_reassign_children_activities + project = Project.generate! + system_activity = TimeEntryActivity.create!(:name => 'Activity') + project_activity = TimeEntryActivity.create!(:name => 'Activity', :project => project, :parent_id => system_activity.id) + + entries = [ + TimeEntry.generate!(:project => project, :activity => system_activity), + TimeEntry.generate!(:project => project, :activity => project_activity) + ] + + assert_difference 'TimeEntryActivity.count', -2 do + assert_nothing_raised do + assert system_activity.destroy(TimeEntryActivity.find_by_name('Development')) + end + end + assert entries.all? {|entry| entry.reload.activity.name == 'Development'} + end end -