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 357
357:       def delete(action, parameters = nil, session = nil, flash = nil)
358:         process(action, parameters, session, flash, "DELETE")
359:       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 342
342:       def get(action, parameters = nil, session = nil, flash = nil)
343:         process(action, parameters, session, flash, "GET")
344:       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 362
362:       def head(action, parameters = nil, session = nil, flash = nil)
363:         process(action, parameters, session, flash, "HEAD")
364:       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 347
347:       def post(action, parameters = nil, session = nil, flash = nil)
348:         process(action, parameters, session, flash, "POST")
349:       end
process(action, parameters = nil, session = nil, flash = nil, http_method = 'GET') click to toggle source
     # File lib/action_controller/test_case.rb, line 376
376:       def process(action, parameters = nil, session = nil, flash = nil, http_method = 'GET')
377:         # Sanity check for required instance variables so we can give an
378:         # understandable error message.
379:         %(@routes @controller @request @response).each do |iv_name|
380:           if !(instance_variable_names.include?(iv_name) || instance_variable_names.include?(iv_name.to_sym)) || instance_variable_get(iv_name).nil?
381:             raise "#{iv_name} is nil: make sure you set it in your test's setup method."
382:           end
383:         end
384: 
385:         @request.recycle!
386:         @response.recycle!
387:         @controller.response_body = nil
388:         @controller.formats = nil
389:         @controller.params = nil
390: 
391:         @html_document = nil
392:         @request.env['REQUEST_METHOD'] = http_method
393: 
394:         parameters ||= {}
395:         @request.assign_parameters(@routes, @controller.class.name.underscore.sub(/_controller$/, ''), action.to_s, parameters)
396: 
397:         @request.session = ActionController::TestSession.new(session) unless session.nil?
398:         @request.session["flash"] = @request.flash.update(flash || {})
399:         @request.session["flash"].sweep
400: 
401:         @controller.request = @request
402:         @controller.params.merge!(parameters)
403:         build_request_uri(action, parameters)
404:         Base.class_eval { include Testing }
405:         @controller.process_with_new_base_test(@request, @response)
406:         @request.session.delete('flash') if @request.session['flash'].blank?
407:         @response
408:       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 352
352:       def put(action, parameters = nil, session = nil, flash = nil)
353:         process(action, parameters, session, flash, "PUT")
354:       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 427
427:       def rescue_action_in_public!
428:         @request.remote_addr = '208.77.188.166' # example.com
429:       end
setup_controller_request_and_response() click to toggle source
     # File lib/action_controller/test_case.rb, line 410
410:       def setup_controller_request_and_response
411:         @request = TestRequest.new
412:         @response = TestResponse.new
413: 
414:         if klass = self.class.controller_class
415:           @controller ||= klass.new rescue nil
416:         end
417: 
418:         @request.env.delete('PATH_INFO')
419: 
420:         if @controller
421:           @controller.request = @request
422:           @controller.params = {}
423:         end
424:       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 366
366:       def xml_http_request(request_method, action, parameters = nil, session = nil, flash = nil)
367:         @request.env['HTTP_X_REQUESTED_WITH'] = 'XMLHttpRequest'
368:         @request.env['HTTP_ACCEPT'] ||=  [Mime::JS, Mime::HTML, Mime::XML, 'text/xml', Mime::ALL].join(', ')
369:         __send__(request_method, action, parameters, session, flash).tap do
370:           @request.env.delete 'HTTP_X_REQUESTED_WITH'
371:           @request.env.delete 'HTTP_ACCEPT'
372:         end
373:       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 439
439:       def build_request_uri(action, parameters)
440:         unless @request.env["PATH_INFO"]
441:           options = @controller.__send__(:url_options).merge(parameters)
442:           options.update(
443:             :only_path => true,
444:             :action => action,
445:             :relative_url_root => nil,
446:             :_path_segments => @request.symbolized_path_parameters)
447: 
448:           url, query_string = @routes.url_for(options).split("?", 2)
449: 
450:           @request.env["SCRIPT_NAME"] = @controller.config.relative_url_root
451:           @request.env["PATH_INFO"] = url
452:           @request.env["QUERY_STRING"] = query_string || ""
453:         end
454:       end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.