git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11461 e93f8b46-1217-0410-a6f0-8f06a7374b81tags/2.4.0
@@ -50,7 +50,7 @@ class IssueRelationsController < ApplicationController | |||
respond_to do |format| | |||
format.html { redirect_to issue_path(@issue) } | |||
format.js { | |||
@relations = @issue.relations.select {|r| r.other_issue(@issue) && r.other_issue(@issue).visible? } | |||
@relations = @issue.reload.relations.select {|r| r.other_issue(@issue) && r.other_issue(@issue).visible? } | |||
} | |||
format.api { | |||
if saved |
@@ -187,6 +187,7 @@ class Issue < ActiveRecord::Base | |||
def reload(*args) | |||
@workflow_rule_by_attribute = nil | |||
@assignable_versions = nil | |||
@relations = nil | |||
super | |||
end | |||
@@ -87,6 +87,17 @@ class IssueRelationsControllerTest < ActionController::TestCase | |||
end | |||
end | |||
def test_create_follows_relation_should_update_relations_list | |||
issue1 = Issue.generate!(:subject => 'Followed issue', :start_date => Date.yesterday, :due_date => Date.today) | |||
issue2 = Issue.generate! | |||
assert_difference 'IssueRelation.count' do | |||
xhr :post, :create, :issue_id => issue2.id, | |||
:relation => {:issue_to_id => issue1.id, :relation_type => 'follows', :delay => ''} | |||
end | |||
assert_match /Followed issue/, response.body | |||
end | |||
def test_should_create_relations_with_visible_issues_only | |||
Setting.cross_project_issue_relations = '1' | |||
assert_nil Issue.visible(User.find(3)).find_by_id(4) |