Class: Webrat::MechanizeAdapter
- Inherits:
-
Object
- Object
- Webrat::MechanizeAdapter
- Extended by:
- Forwardable
- Defined in:
- lib/webrat/adapters/mechanize.rb
Overview
:nodoc:
Constant Summary
- Mechanize =
WWW::Mechanize
Instance Attribute Summary (collapse)
-
- (Object) response
(also: #page)
Returns the value of attribute response.
Instance Method Summary (collapse)
-
- (Object) absolute_url(url)
:nodoc:.
- - (Object) get(url, data, headers_argument_not_used = nil)
-
- (MechanizeAdapter) initialize(*args)
constructor
A new instance of MechanizeAdapter.
- - (Object) mechanize
- - (Object) post(url, data, headers_argument_not_used = nil)
-
- (Object) request_page(url, http_method, data)
:nodoc:.
- - (Object) response_body
- - (Object) response_code
- - (Object) response_headers
Constructor Details
- (MechanizeAdapter) initialize(*args)
A new instance of MechanizeAdapter
12 13 |
# File 'lib/webrat/adapters/mechanize.rb', line 12 def initialize(*args) end |
Instance Attribute Details
- (Object) response Also known as: page
Returns the value of attribute response
9 10 11 |
# File 'lib/webrat/adapters/mechanize.rb', line 9 def response @response end |
Instance Method Details
- (Object) absolute_url(url)
:nodoc:
64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/webrat/adapters/mechanize.rb', line 64 def absolute_url(url) #:nodoc: current_host, current_path = split_current_url if url =~ Regexp.new('^https?://') url elsif url =~ Regexp.new('^/') current_host + url elsif url =~ Regexp.new('^\.') current_host + absolute_path(current_path, url) else url end end |
- (Object) get(url, data, headers_argument_not_used = nil)
19 20 21 |
# File 'lib/webrat/adapters/mechanize.rb', line 19 def get(url, data, headers_argument_not_used = nil) @response = mechanize.get(url, data) end |
- (Object) mechanize
54 55 56 57 58 59 60 |
# File 'lib/webrat/adapters/mechanize.rb', line 54 def mechanize @mechanize ||= begin mechanize = Mechanize.new mechanize.redirect_ok = false mechanize end end |
- (Object) post(url, data, headers_argument_not_used = nil)
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/webrat/adapters/mechanize.rb', line 23 def post(url, data, headers_argument_not_used = nil) post_data = data.inject({}) do |memo, param| case param when Hash param.each {|attribute, value| memo[attribute] = value } memo when Array case param.last when Hash param.last.each {|attribute, value| memo["#{param.first}[#{attribute}]"] = value } else memo[param.first] = param.last end memo end end @response = mechanize.post(url, post_data) end |
- (Object) request_page(url, http_method, data)
:nodoc:
15 16 17 |
# File 'lib/webrat/adapters/mechanize.rb', line 15 def request_page(url, http_method, data) #:nodoc: super(absolute_url(url), http_method, data) end |
- (Object) response_body
42 43 44 |
# File 'lib/webrat/adapters/mechanize.rb', line 42 def response_body @response.content end |
- (Object) response_code
46 47 48 |
# File 'lib/webrat/adapters/mechanize.rb', line 46 def response_code @response.code.to_i end |
- (Object) response_headers
50 51 52 |
# File 'lib/webrat/adapters/mechanize.rb', line 50 def response_headers @response.header end |