Class Index [+]

Quicksearch

ActionController::TestCase::Behavior

Attributes

response[R]
request[R]

Public Instance Methods

delete(action, parameters = nil, session = nil, flash = nil) click to toggle source

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
get(action, parameters = nil, session = nil, flash = nil) click to toggle source

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
head(action, parameters = nil, session = nil, flash = nil) click to toggle source

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
post(action, parameters = nil, session = nil, flash = nil) click to toggle source

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
process(action, parameters = nil, session = nil, flash = nil, http_method = 'GET') click to toggle source
     # 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
put(action, parameters = nil, session = nil, flash = nil) click to toggle source

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
rescue_action_in_public!() click to toggle source

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
setup_controller_request_and_response() click to toggle source
     # 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
xhr(request_method, action, parameters = nil, session = nil, flash = nil) click to toggle source
Alias for: xml_http_request
xml_http_request(request_method, action, parameters = nil, session = nil, flash = nil) click to toggle source
     # 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
Also aliased as: xhr

Private Instance Methods

build_request_uri(action, parameters) click to toggle source
     # 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.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.