@@ -301,6 +301,7 private | |||||
301 | end |
|
301 | end | |
302 |
|
302 | |||
303 | @issue.project = @project |
|
303 | @issue.project = @project | |
|
304 | @issue.author = User.current | |||
304 | # Tracker must be set before custom field values |
|
305 | # Tracker must be set before custom field values | |
305 | @issue.tracker ||= @project.trackers.find((params[:issue] && params[:issue][:tracker_id]) || params[:tracker_id] || :first) |
|
306 | @issue.tracker ||= @project.trackers.find((params[:issue] && params[:issue][:tracker_id]) || params[:tracker_id] || :first) | |
306 | if @issue.tracker.nil? |
|
307 | if @issue.tracker.nil? | |
@@ -314,7 +315,6 private | |||||
314 | @issue.watcher_user_ids = params[:issue]['watcher_user_ids'] |
|
315 | @issue.watcher_user_ids = params[:issue]['watcher_user_ids'] | |
315 | end |
|
316 | end | |
316 | end |
|
317 | end | |
317 | @issue.author = User.current |
|
|||
318 | @priorities = IssuePriority.all |
|
318 | @priorities = IssuePriority.all | |
319 | @allowed_statuses = @issue.new_statuses_allowed_to(User.current, true) |
|
319 | @allowed_statuses = @issue.new_statuses_allowed_to(User.current, true) | |
320 | end |
|
320 | end |
@@ -22,6 +22,7 roles_001: | |||||
22 | - :delete_issues |
|
22 | - :delete_issues | |
23 | - :view_issue_watchers |
|
23 | - :view_issue_watchers | |
24 | - :add_issue_watchers |
|
24 | - :add_issue_watchers | |
|
25 | - :set_issues_private | |||
25 | - :delete_issue_watchers |
|
26 | - :delete_issue_watchers | |
26 | - :manage_public_queries |
|
27 | - :manage_public_queries | |
27 | - :save_queries |
|
28 | - :save_queries |
@@ -607,6 +607,36 class IssuesControllerTest < ActionController::TestCase | |||||
607 | assert_nil issue.parent |
|
607 | assert_nil issue.parent | |
608 | end |
|
608 | end | |
609 |
|
609 | |||
|
610 | def test_post_create_private | |||
|
611 | @request.session[:user_id] = 2 | |||
|
612 | ||||
|
613 | assert_difference 'Issue.count' do | |||
|
614 | post :create, :project_id => 1, | |||
|
615 | :issue => {:tracker_id => 1, | |||
|
616 | :subject => 'This is a private issue', | |||
|
617 | :is_private => '1'} | |||
|
618 | end | |||
|
619 | issue = Issue.first(:order => 'id DESC') | |||
|
620 | assert issue.is_private? | |||
|
621 | end | |||
|
622 | ||||
|
623 | def test_post_create_private_with_set_own_issues_private_permission | |||
|
624 | role = Role.find(1) | |||
|
625 | role.remove_permission! :set_issues_private | |||
|
626 | role.add_permission! :set_own_issues_private | |||
|
627 | ||||
|
628 | @request.session[:user_id] = 2 | |||
|
629 | ||||
|
630 | assert_difference 'Issue.count' do | |||
|
631 | post :create, :project_id => 1, | |||
|
632 | :issue => {:tracker_id => 1, | |||
|
633 | :subject => 'This is a private issue', | |||
|
634 | :is_private => '1'} | |||
|
635 | end | |||
|
636 | issue = Issue.first(:order => 'id DESC') | |||
|
637 | assert issue.is_private? | |||
|
638 | end | |||
|
639 | ||||
610 | def test_post_create_should_send_a_notification |
|
640 | def test_post_create_should_send_a_notification | |
611 | ActionMailer::Base.deliveries.clear |
|
641 | ActionMailer::Base.deliveries.clear | |
612 | @request.session[:user_id] = 2 |
|
642 | @request.session[:user_id] = 2 |
General Comments 0
You need to be logged in to leave comments.
Login now