mirror of
https://github.com/redmine/redmine.git
synced 2025-11-09 06:46:01 +01:00
git-svn-id: http://svn.redmine.org/redmine/branches/3.3-stable@16132 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -4687,7 +4687,7 @@ class IssuesControllerTest < ActionController::TestCase
|
||||
assert_response :success
|
||||
end
|
||||
|
||||
def test_destroy_issue_with_no_time_entries
|
||||
def test_destroy_issue_with_no_time_entries_should_delete_the_issues
|
||||
assert_nil TimeEntry.find_by_issue_id(2)
|
||||
@request.session[:user_id] = 2
|
||||
|
||||
@@ -4698,7 +4698,7 @@ class IssuesControllerTest < ActionController::TestCase
|
||||
assert_nil Issue.find_by_id(2)
|
||||
end
|
||||
|
||||
def test_destroy_issues_with_time_entries
|
||||
def test_destroy_issues_with_time_entries_should_show_the_reassign_form
|
||||
@request.session[:user_id] = 2
|
||||
|
||||
assert_no_difference 'Issue.count' do
|
||||
@@ -4714,6 +4714,20 @@ class IssuesControllerTest < ActionController::TestCase
|
||||
end
|
||||
end
|
||||
|
||||
def test_destroy_issues_with_time_entries_should_show_hours_on_issues_and_descendants
|
||||
parent = Issue.generate_with_child!
|
||||
TimeEntry.generate!(:issue => parent)
|
||||
TimeEntry.generate!(:issue => parent.children.first)
|
||||
leaf = Issue.generate!
|
||||
TimeEntry.generate!(:issue => leaf)
|
||||
@request.session[:user_id] = 2
|
||||
|
||||
delete :destroy, :ids => [parent.id, leaf.id]
|
||||
assert_response :success
|
||||
|
||||
assert_select 'p', :text => /3\.00 hours were reported/
|
||||
end
|
||||
|
||||
def test_destroy_issues_and_destroy_time_entries
|
||||
@request.session[:user_id] = 2
|
||||
|
||||
@@ -4755,6 +4769,24 @@ class IssuesControllerTest < ActionController::TestCase
|
||||
assert_equal 2, TimeEntry.find(2).issue_id
|
||||
end
|
||||
|
||||
def test_destroy_issues_with_time_entries_should_reassign_time_entries_of_issues_and_descendants
|
||||
parent = Issue.generate_with_child!
|
||||
TimeEntry.generate!(:issue => parent)
|
||||
TimeEntry.generate!(:issue => parent.children.first)
|
||||
leaf = Issue.generate!
|
||||
TimeEntry.generate!(:issue => leaf)
|
||||
target = Issue.generate!
|
||||
@request.session[:user_id] = 2
|
||||
|
||||
assert_difference 'Issue.count', -3 do
|
||||
assert_no_difference 'TimeEntry.count' do
|
||||
delete :destroy, :ids => [parent.id, leaf.id], :todo => 'reassign', :reassign_to_id => target.id
|
||||
assert_response 302
|
||||
end
|
||||
end
|
||||
assert_equal 3, target.time_entries.count
|
||||
end
|
||||
|
||||
def test_destroy_issues_and_reassign_time_entries_to_an_invalid_issue_should_fail
|
||||
@request.session[:user_id] = 2
|
||||
|
||||
@@ -4768,6 +4800,18 @@ class IssuesControllerTest < ActionController::TestCase
|
||||
assert_template 'destroy'
|
||||
end
|
||||
|
||||
def test_destroy_issues_and_reassign_time_entries_to_an_issue_to_delete_should_fail
|
||||
@request.session[:user_id] = 2
|
||||
|
||||
assert_no_difference 'Issue.count' do
|
||||
assert_no_difference 'TimeEntry.count' do
|
||||
delete :destroy, :ids => [1, 3], :todo => 'reassign', :reassign_to_id => 3
|
||||
end
|
||||
end
|
||||
assert_response :success
|
||||
assert_select '#flash_error', :text => I18n.t(:error_cannot_reassign_time_entries_to_an_issue_about_to_be_deleted)
|
||||
end
|
||||
|
||||
def test_destroy_issues_from_different_projects
|
||||
@request.session[:user_id] = 2
|
||||
|
||||
|
||||
Reference in New Issue
Block a user