##// END OF EJS Templates
Added request and controller objects to the hooks by default....
Added request and controller objects to the hooks by default. The request and controller objects are now added to all hook contexts by default. This will also make url_for work better in hooks by setting up the default_url_options :host, :port, and :protocol. Finally a new helper method @render_or@ has been added to ViewListener. This will let a hook easily render a partial without a full method definition. Thanks to Thomas Löber for the original patch. #2542 git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2429 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r2321:10994e902779
r2368:5b7a5c39a7da
Show More
issue_relations_controller_test.rb
58 lines | 1.7 KiB | text/x-ruby | RubyLexer
/ test / functional / issue_relations_controller_test.rb
require File.dirname(__FILE__) + '/../test_helper'
require 'issue_relations_controller'
# Re-raise errors caught by the controller.
class IssueRelationsController; def rescue_action(e) raise e end; end
class IssueRelationsControllerTest < Test::Unit::TestCase
fixtures :projects,
:users,
:roles,
:members,
:issues,
:issue_statuses,
:enabled_modules,
:enumerations,
:trackers
def setup
@controller = IssueRelationsController.new
@request = ActionController::TestRequest.new
@response = ActionController::TestResponse.new
User.current = nil
end
def test_new_routing
assert_routing(
{:method => :post, :path => '/issues/1/relations'},
{:controller => 'issue_relations', :action => 'new', :issue_id => '1'}
)
end
def test_destroy_routing
assert_recognizes( #TODO: use DELETE on issue URI
{:controller => 'issue_relations', :action => 'destroy', :issue_id => '1', :id => '23'},
{:method => :post, :path => '/issues/1/relations/23/destroy'}
)
end
def test_new
assert_difference 'IssueRelation.count' do
@request.session[:user_id] = 3
post :new, :issue_id => 1,
:relation => {:issue_to_id => '2', :relation_type => 'relates', :delay => ''}
end
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)
assert_no_difference 'IssueRelation.count' do
@request.session[:user_id] = 3
post :new, :issue_id => 1,
:relation => {:issue_to_id => '4', :relation_type => 'relates', :delay => ''}
end
end
end