Executes a request simulating DELETE HTTP method and set/volley the response
# File lib/action_controller/test_case.rb, line 364 364: def delete(action, parameters = nil, session = nil, flash = nil) 365: process(action, parameters, session, flash, "DELETE") 366: end
Executes a request simulating GET HTTP method and set/volley the response
# File lib/action_controller/test_case.rb, line 349 349: def get(action, parameters = nil, session = nil, flash = nil) 350: process(action, parameters, session, flash, "GET") 351: end
Executes a request simulating HEAD HTTP method and set/volley the response
# File lib/action_controller/test_case.rb, line 369 369: def head(action, parameters = nil, session = nil, flash = nil) 370: process(action, parameters, session, flash, "HEAD") 371: end
Executes a request simulating POST HTTP method and set/volley the response
# File lib/action_controller/test_case.rb, line 354 354: def post(action, parameters = nil, session = nil, flash = nil) 355: process(action, parameters, session, flash, "POST") 356: end
# File lib/action_controller/test_case.rb, line 383 383: def process(action, parameters = nil, session = nil, flash = nil, http_method = 'GET') 384: # Sanity check for required instance variables so we can give an 385: # understandable error message. 386: %(@routes @controller @request @response).each do |iv_name| 387: if !(instance_variable_names.include?(iv_name) || instance_variable_names.include?(iv_name.to_sym)) || instance_variable_get(iv_name).nil? 388: raise "#{iv_name} is nil: make sure you set it in your test's setup method." 389: end 390: end 391: 392: @request.recycle! 393: @response.recycle! 394: @controller.response_body = nil 395: @controller.formats = nil 396: @controller.params = nil 397: 398: @html_document = nil 399: @request.env['REQUEST_METHOD'] = http_method 400: 401: parameters ||= {} 402: @request.assign_parameters(@routes, @controller.class.name.underscore.sub(/_controller$/, ''), action.to_s, parameters) 403: 404: @request.session = ActionController::TestSession.new(session) unless session.nil? 405: @request.session["flash"] = @request.flash.update(flash || {}) 406: @request.session["flash"].sweep 407: 408: @controller.request = @request 409: @controller.params.merge!(parameters) 410: build_request_uri(action, parameters) 411: Base.class_eval { include Testing } 412: @controller.process_with_new_base_test(@request, @response) 413: @request.session.delete('flash') if @request.session['flash'].blank? 414: @response 415: end
Executes a request simulating PUT HTTP method and set/volley the response
# File lib/action_controller/test_case.rb, line 359 359: def put(action, parameters = nil, session = nil, flash = nil) 360: process(action, parameters, session, flash, "PUT") 361: end
Cause the action to be rescued according to the regular rules for rescue_action when the visitor is not local
# File lib/action_controller/test_case.rb, line 434 434: def rescue_action_in_public! 435: @request.remote_addr = '208.77.188.166' # example.com 436: end
# File lib/action_controller/test_case.rb, line 417 417: def setup_controller_request_and_response 418: @request = TestRequest.new 419: @response = TestResponse.new 420: 421: if klass = self.class.controller_class 422: @controller ||= klass.new rescue nil 423: end 424: 425: @request.env.delete('PATH_INFO') 426: 427: if @controller 428: @controller.request = @request 429: @controller.params = {} 430: end 431: end
# File lib/action_controller/test_case.rb, line 373 373: def xml_http_request(request_method, action, parameters = nil, session = nil, flash = nil) 374: @request.env['HTTP_X_REQUESTED_WITH'] = 'XMLHttpRequest' 375: @request.env['HTTP_ACCEPT'] ||= [Mime::JS, Mime::HTML, Mime::XML, 'text/xml', Mime::ALL].join(', ') 376: __send__(request_method, action, parameters, session, flash).tap do 377: @request.env.delete 'HTTP_X_REQUESTED_WITH' 378: @request.env.delete 'HTTP_ACCEPT' 379: end 380: end
# File lib/action_controller/test_case.rb, line 446 446: def build_request_uri(action, parameters) 447: unless @request.env["PATH_INFO"] 448: options = @controller.__send__(:url_options).merge(parameters) 449: options.update( 450: :only_path => true, 451: :action => action, 452: :relative_url_root => nil, 453: :_path_segments => @request.symbolized_path_parameters) 454: 455: url, query_string = @routes.url_for(options).split("?", 2) 456: 457: @request.env["SCRIPT_NAME"] = @controller.config.relative_url_root 458: @request.env["PATH_INFO"] = url 459: @request.env["QUERY_STRING"] = query_string || "" 460: end 461: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.