Accept issue id with leading sharp when adding a related issue.

git-svn-id: http://svn.redmine.org/redmine/trunk@12250 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang 2013-11-09 11:09:50 +00:00
parent f4aff7919a
commit d89c968bb1
2 changed files with 10 additions and 1 deletions

View File

@ -229,7 +229,8 @@ class RepositoriesController < ApplicationController
# Adds a related issue to a changeset # Adds a related issue to a changeset
# POST /projects/:project_id/repository/(:repository_id/)revisions/:rev/issues # POST /projects/:project_id/repository/(:repository_id/)revisions/:rev/issues
def add_related_issue def add_related_issue
@issue = @changeset.find_referenced_issue_by_id(params[:issue_id]) issue_id = params[:issue_id].to_s.sub(/^#/,'')
@issue = @changeset.find_referenced_issue_by_id(issue_id)
if @issue && (!@issue.visible? || @changeset.issues.include?(@issue)) if @issue && (!@issue.visible? || @changeset.issues.include?(@issue))
@issue = nil @issue = nil
end end

View File

@ -199,6 +199,14 @@ class RepositoriesControllerTest < ActionController::TestCase
assert_include 'Feature request #2', response.body assert_include 'Feature request #2', response.body
end end
def test_add_related_issue_should_accept_issue_id_with_sharp
@request.session[:user_id] = 2
assert_difference 'Changeset.find(103).issues.size' do
xhr :post, :add_related_issue, :id => 1, :rev => 4, :issue_id => "#2", :format => 'js'
end
assert_equal [2], Changeset.find(103).issue_ids
end
def test_add_related_issue_with_invalid_issue_id def test_add_related_issue_with_invalid_issue_id
@request.session[:user_id] = 2 @request.session[:user_id] = 2
assert_no_difference 'Changeset.find(103).issues.size' do assert_no_difference 'Changeset.find(103).issues.size' do