mechanize 0.5.4 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of mechanize might be problematic. Click here for more details.

@@ -7,6 +7,14 @@ require 'test_includes'
7
7
  require 'fileutils'
8
8
 
9
9
  class CookieJarTest < Test::Unit::TestCase
10
+ def cookie_from_hash(hash)
11
+ c = WWW::Mechanize::Cookie.new(hash[:name], hash[:value])
12
+ hash.each { |k,v|
13
+ next if k == :name || k == :value
14
+ c.send("#{k}=", v)
15
+ }
16
+ c
17
+ end
10
18
  def test_add_future_cookies
11
19
  values = { :name => 'Foo',
12
20
  :value => 'Bar',
@@ -20,12 +28,12 @@ class CookieJarTest < Test::Unit::TestCase
20
28
  assert_equal(0, jar.cookies(url).length)
21
29
 
22
30
  # Add one cookie with an expiration date in the future
23
- cookie = WWW::Mechanize::Cookie.new(values)
24
- jar.add(cookie)
31
+ cookie = cookie_from_hash(values)
32
+ jar.add(url, cookie)
25
33
  assert_equal(1, jar.cookies(url).length)
26
34
 
27
35
  # Add the same cookie, and we should still only have one
28
- jar.add(WWW::Mechanize::Cookie.new(values))
36
+ jar.add(url, cookie_from_hash(values))
29
37
  assert_equal(1, jar.cookies(url).length)
30
38
 
31
39
  # Make sure we can get the cookie from different paths
@@ -48,12 +56,12 @@ class CookieJarTest < Test::Unit::TestCase
48
56
  assert_equal(0, jar.cookies(url).length)
49
57
 
50
58
  # Add one cookie with an expiration date in the future
51
- cookie = WWW::Mechanize::Cookie.new(values)
52
- jar.add(cookie)
59
+ cookie = cookie_from_hash(values)
60
+ jar.add(url, cookie)
53
61
  assert_equal(1, jar.cookies(url).length)
54
62
 
55
63
  # Add the same cookie, and we should still only have one
56
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :name => 'Baz' )))
64
+ jar.add(url, cookie_from_hash(values.merge( :name => 'Baz' )))
57
65
  assert_equal(2, jar.cookies(url).length)
58
66
 
59
67
  # Make sure we can get the cookie from different paths
@@ -76,9 +84,9 @@ class CookieJarTest < Test::Unit::TestCase
76
84
  assert_equal(0, jar.cookies(url).length)
77
85
 
78
86
  # Add one cookie with an expiration date in the future
79
- cookie = WWW::Mechanize::Cookie.new(values)
80
- jar.add(cookie)
81
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :name => 'Baz' )))
87
+ cookie = cookie_from_hash(values)
88
+ jar.add(url, cookie)
89
+ jar.add(url, cookie_from_hash(values.merge( :name => 'Baz' )))
82
90
  assert_equal(2, jar.cookies(url).length)
83
91
 
84
92
  jar.clear!
@@ -99,9 +107,9 @@ class CookieJarTest < Test::Unit::TestCase
99
107
  assert_equal(0, jar.cookies(url).length)
100
108
 
101
109
  # Add one cookie with an expiration date in the future
102
- cookie = WWW::Mechanize::Cookie.new(values)
103
- jar.add(cookie)
104
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :name => 'Baz' )))
110
+ cookie = cookie_from_hash(values)
111
+ jar.add(url, cookie)
112
+ jar.add(url, cookie_from_hash(values.merge( :name => 'Baz' )))
105
113
  assert_equal(2, jar.cookies(url).length)
106
114
 
107
115
  jar.save_as("cookies.yml")
@@ -126,23 +134,23 @@ class CookieJarTest < Test::Unit::TestCase
126
134
  assert_equal(0, jar.cookies(url).length)
127
135
 
128
136
  # Add one cookie with an expiration date in the future
129
- cookie = WWW::Mechanize::Cookie.new(values)
130
- jar.add(cookie)
137
+ cookie = cookie_from_hash(values)
138
+ jar.add(url, cookie)
131
139
  assert_equal(1, jar.cookies(url).length)
132
140
 
133
141
  # Add a second cookie
134
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :name => 'Baz' )))
142
+ jar.add(url, cookie_from_hash(values.merge( :name => 'Baz' )))
135
143
  assert_equal(2, jar.cookies(url).length)
136
144
 
137
145
  # Make sure we can get the cookie from different paths
138
146
  assert_equal(2, jar.cookies(URI.parse('http://rubyforge.org/login')).length)
139
147
 
140
148
  # Expire the first cookie
141
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :expires => Time.now - (10 * 86400))))
149
+ jar.add(url, cookie_from_hash(values.merge( :expires => Time.now - (10 * 86400))))
142
150
  assert_equal(1, jar.cookies(url).length)
143
151
 
144
152
  # Expire the second cookie
145
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :name => 'Baz',
153
+ jar.add(url, cookie_from_hash(values.merge( :name => 'Baz',
146
154
  :expires => Time.now - (10 * 86400))))
147
155
  assert_equal(0, jar.cookies(url).length)
148
156
  end
@@ -160,23 +168,23 @@ class CookieJarTest < Test::Unit::TestCase
160
168
  assert_equal(0, jar.cookies(url).length)
161
169
 
162
170
  # Add one cookie with an expiration date in the future
163
- cookie = WWW::Mechanize::Cookie.new(values)
164
- jar.add(cookie)
171
+ cookie = cookie_from_hash(values)
172
+ jar.add(url, cookie)
165
173
  assert_equal(1, jar.cookies(url).length)
166
174
 
167
175
  # Add a second cookie
168
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :name => 'Baz' )))
176
+ jar.add(url, cookie_from_hash(values.merge( :name => 'Baz' )))
169
177
  assert_equal(2, jar.cookies(url).length)
170
178
 
171
179
  # Make sure we can get the cookie from different paths
172
180
  assert_equal(2, jar.cookies(URI.parse('http://rubyforge.org/login')).length)
173
181
 
174
182
  # Expire the first cookie
175
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :expires => Time.now - (10 * 86400))))
183
+ jar.add(url, cookie_from_hash(values.merge( :expires => Time.now - (10 * 86400))))
176
184
  assert_equal(1, jar.cookies(url).length)
177
185
 
178
186
  # Expire the second cookie
179
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :name => 'Baz',
187
+ jar.add(url, cookie_from_hash(values.merge( :name => 'Baz',
180
188
  :expires => Time.now - (10 * 86400))))
181
189
  assert_equal(0, jar.cookies(url).length)
182
190
 
@@ -186,7 +194,7 @@ class CookieJarTest < Test::Unit::TestCase
186
194
  assert_equal '', url.path
187
195
  assert_equal(0, jar.cookies(url).length)
188
196
  # Now add a cookie with the path set to '/':
189
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :name => 'has_root_path',
197
+ jar.add(url, cookie_from_hash(values.merge( :name => 'has_root_path',
190
198
  :path => '/')))
191
199
  assert_equal(1, jar.cookies(url).length)
192
200
  end
@@ -204,12 +212,12 @@ class CookieJarTest < Test::Unit::TestCase
204
212
  assert_equal(0, jar.cookies(url).length)
205
213
 
206
214
  # Add one cookie with an expiration date in the future
207
- cookie = WWW::Mechanize::Cookie.new(values)
208
- jar.add(cookie)
215
+ cookie = cookie_from_hash(values)
216
+ jar.add(url, cookie)
209
217
  assert_equal(1, jar.cookies(url).length)
210
218
 
211
219
  # Add a second cookie
212
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :name => 'Baz' )))
220
+ jar.add(url, cookie_from_hash(values.merge( :name => 'Baz' )))
213
221
  assert_equal(2, jar.cookies(url).length)
214
222
 
215
223
  # Make sure we don't get the cookie in a different path
@@ -217,11 +225,11 @@ class CookieJarTest < Test::Unit::TestCase
217
225
  assert_equal(0, jar.cookies(URI.parse('http://rubyforge.org/')).length)
218
226
 
219
227
  # Expire the first cookie
220
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :expires => Time.now - (10 * 86400))))
228
+ jar.add(url, cookie_from_hash(values.merge( :expires => Time.now - (10 * 86400))))
221
229
  assert_equal(1, jar.cookies(url).length)
222
230
 
223
231
  # Expire the second cookie
224
- jar.add(WWW::Mechanize::Cookie.new(values.merge( :name => 'Baz',
232
+ jar.add(url, cookie_from_hash(values.merge( :name => 'Baz',
225
233
  :expires => Time.now - (10 * 86400))))
226
234
  assert_equal(0, jar.cookies(url).length)
227
235
  end
data/test/tc_mech.rb CHANGED
@@ -6,7 +6,7 @@ require 'rubygems'
6
6
  require 'mechanize'
7
7
  require 'test_includes'
8
8
 
9
- class MechMethodsTest < Test::Unit::TestCase
9
+ class TestMechMethods < Test::Unit::TestCase
10
10
  include TestMethods
11
11
 
12
12
  def setup
@@ -83,6 +83,26 @@ class MechMethodsTest < Test::Unit::TestCase
83
83
  @agent.history.last.uri.to_s)
84
84
  end
85
85
 
86
+ def test_click_hpricot
87
+ page = @agent.get("http://localhost:#{PORT}/frame_test.html")
88
+
89
+ link = (page/"a[@class=bar]").first
90
+ assert_not_nil(link)
91
+ page = @agent.click(link)
92
+ assert_equal("http://localhost:#{PORT}/form_test.html",
93
+ @agent.history.last.uri.to_s)
94
+ end
95
+
96
+ def test_click_hpricot_frame
97
+ page = @agent.get("http://localhost:#{PORT}/frame_test.html")
98
+
99
+ link = (page/"frame[@name=frame2]").first
100
+ assert_not_nil(link)
101
+ page = @agent.click(link)
102
+ assert_equal("http://localhost:#{PORT}/form_test.html",
103
+ @agent.history.last.uri.to_s)
104
+ end
105
+
86
106
  def test_new_find
87
107
  page = @agent.get("http://localhost:#{PORT}/frame_test.html")
88
108
  assert_equal(3, page.frames.size)
@@ -0,0 +1,20 @@
1
+ $:.unshift File.join(File.dirname(__FILE__), "..", "lib")
2
+
3
+ require 'test/unit'
4
+ require 'rubygems'
5
+ require 'mechanize'
6
+ require 'test_includes'
7
+
8
+ class TestNoAttributes < Test::Unit::TestCase
9
+ include TestMethods
10
+
11
+ def setup
12
+ @agent = WWW::Mechanize.new
13
+ end
14
+
15
+ def test_parse_no_attributes
16
+ assert_nothing_raised do
17
+ page = @agent.get("http://localhost:#{PORT}/tc_no_attributes.html")
18
+ end
19
+ end
20
+ end
data/test/tc_page.rb CHANGED
@@ -5,7 +5,7 @@ require 'rubygems'
5
5
  require 'mechanize'
6
6
  require 'test_includes'
7
7
 
8
- class PageTest < Test::Unit::TestCase
8
+ class TestPage < Test::Unit::TestCase
9
9
  include TestMethods
10
10
 
11
11
  def setup
@@ -14,17 +14,21 @@ class PluggableParserTest < Test::Unit::TestCase
14
14
 
15
15
  def test_content_type_error
16
16
  page = @agent.get("http://localhost:#{PORT}/bad_content_type")
17
- page = WWW::Mechanize::Page.new(
18
- page.uri,
19
- page.response,
20
- page.body,
21
- page.code
22
- )
23
17
  assert_raise(WWW::Mechanize::ContentTypeError) {
24
- page.root
18
+ page = WWW::Mechanize::Page.new(
19
+ page.uri,
20
+ page.response,
21
+ page.body,
22
+ page.code
23
+ )
25
24
  }
26
25
  begin
27
- page.root
26
+ page = WWW::Mechanize::Page.new(
27
+ page.uri,
28
+ page.response,
29
+ page.body,
30
+ page.code
31
+ )
28
32
  rescue WWW::Mechanize::ContentTypeError => ex
29
33
  assert_equal('text/xml', ex.content_type)
30
34
  end
@@ -45,6 +49,16 @@ class PluggableParserTest < Test::Unit::TestCase
45
49
  end
46
50
  end
47
51
 
52
+ class FileFilter < WWW::Mechanize::File
53
+ def initialize(uri=nil, response=nil, body=nil, code=nil)
54
+ super( uri,
55
+ response,
56
+ body.gsub(/<body>/, '<body><a href="http://daapclient.rubyforge.org">Net::DAAP::Client</a>'),
57
+ code
58
+ )
59
+ end
60
+ end
61
+
48
62
  def test_filter
49
63
  @agent.pluggable_parser.html = Filter
50
64
  page = @agent.get("http://localhost:#{PORT}/find_link.html")
@@ -78,27 +92,27 @@ class PluggableParserTest < Test::Unit::TestCase
78
92
  end
79
93
 
80
94
  def test_content_type_pdf
81
- @agent.pluggable_parser.pdf = Filter
95
+ @agent.pluggable_parser.pdf = FileFilter
82
96
  page = @agent.get("http://localhost:#{PORT}/content_type_test?ct=application/pdf")
83
97
  assert_kind_of(Class, @agent.pluggable_parser['application/pdf'])
84
- assert_equal(Filter, @agent.pluggable_parser['application/pdf'])
85
- assert_kind_of(Filter, page)
98
+ assert_equal(FileFilter, @agent.pluggable_parser['application/pdf'])
99
+ assert_kind_of(FileFilter, page)
86
100
  end
87
101
 
88
102
  def test_content_type_csv
89
- @agent.pluggable_parser.csv = Filter
103
+ @agent.pluggable_parser.csv = FileFilter
90
104
  page = @agent.get("http://localhost:#{PORT}/content_type_test?ct=text/csv")
91
105
  assert_kind_of(Class, @agent.pluggable_parser['text/csv'])
92
- assert_equal(Filter, @agent.pluggable_parser['text/csv'])
93
- assert_kind_of(Filter, page)
106
+ assert_equal(FileFilter, @agent.pluggable_parser['text/csv'])
107
+ assert_kind_of(FileFilter, page)
94
108
  end
95
109
 
96
110
  def test_content_type_xml
97
- @agent.pluggable_parser.xml = Filter
111
+ @agent.pluggable_parser.xml = FileFilter
98
112
  page = @agent.get("http://localhost:#{PORT}/content_type_test?ct=text/xml")
99
113
  assert_kind_of(Class, @agent.pluggable_parser['text/xml'])
100
- assert_equal(Filter, @agent.pluggable_parser['text/xml'])
101
- assert_kind_of(Filter, page)
114
+ assert_equal(FileFilter, @agent.pluggable_parser['text/xml'])
115
+ assert_kind_of(FileFilter, page)
102
116
  end
103
117
 
104
118
  def test_file_saver_no_path
@@ -14,7 +14,7 @@ class TestPrettyPrint < Test::Unit::TestCase
14
14
 
15
15
  def test_pretty_print
16
16
  @agent.get("http://localhost:#{PORT}/tc_pretty_print.html")
17
- pretty_string = @agent.inspect
17
+ pretty_string = @agent.pretty_print_inspect
18
18
  assert_match("{title \"tc_pretty_print.html\"}", pretty_string)
19
19
  assert_match(/\{frames[^"]*"http:\/\/meme/, pretty_string)
20
20
  assert_match(/\{iframes[^"]*"http:\/\/meme/, pretty_string)
@@ -16,7 +16,7 @@ class TestRadioButtons < Test::Unit::TestCase
16
16
  def test_select_one
17
17
  form = @page.forms.first
18
18
  button = form.radiobuttons.name('color')
19
- form.radiobuttons.name('color').value('green').tick
19
+ form.radiobuttons.name('color').value('green').check
20
20
  assert_equal(true, button.value('green').checked)
21
21
  assert_equal(false, button.value('red').checked)
22
22
  assert_equal(false, button.value('blue').checked)
@@ -28,9 +28,9 @@ class TestRadioButtons < Test::Unit::TestCase
28
28
  form = @page.forms.first
29
29
  button = form.radiobuttons.name('color')
30
30
  form.radiobuttons.name('color').each do |b|
31
- b.tick
31
+ b.check
32
32
  end
33
- form.radiobuttons.name('color').value('green').tick
33
+ form.radiobuttons.name('color').value('green').check
34
34
  assert_equal(true, button.value('green').checked)
35
35
  assert_equal(false, button.value('red').checked)
36
36
  assert_equal(false, button.value('blue').checked)
@@ -42,7 +42,7 @@ class TestRadioButtons < Test::Unit::TestCase
42
42
  form = @page.forms.first
43
43
  button = form.radiobuttons.name('color')
44
44
  form.radiobuttons.name('color').each do |b|
45
- b.untick
45
+ b.uncheck
46
46
  end
47
47
  assert_equal(false, button.value('green').checked)
48
48
  assert_equal(false, button.value('red').checked)
data/test/ts_mech.rb CHANGED
@@ -18,7 +18,6 @@ require 'tc_response_code'
18
18
  require 'tc_upload'
19
19
  require 'tc_forms'
20
20
  require 'tc_watches'
21
- require 'tc_parsing'
22
21
  require 'tc_authenticate'
23
22
  require 'tc_cookie_class'
24
23
  require 'tc_cookie_jar'
@@ -39,6 +38,7 @@ require 'tc_radiobutton'
39
38
  require 'tc_checkboxes'
40
39
  require 'tc_pretty_print'
41
40
  require 'tc_textarea'
41
+ require 'tc_no_attributes'
42
42
  require 'tc_gzipping'
43
43
  #require 'tc_proxy'
44
44
  #require 'tc_ssl_server'
metadata CHANGED
@@ -3,11 +3,11 @@ rubygems_version: 0.9.0
3
3
  specification_version: 1
4
4
  name: mechanize
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.5.4
7
- date: 2006-08-29 00:00:00 -07:00
6
+ version: 0.6.0
7
+ date: 2006-09-06 00:00:00 -07:00
8
8
  summary: Mechanize provides automated web-browsing
9
9
  require_paths:
10
- - lib
10
+ - lib
11
11
  email: aaronp@rubyforge.org
12
12
  homepage: mechanize.rubyforge.org
13
13
  rubyforge_project: mechanize
@@ -18,148 +18,140 @@ bindir: bin
18
18
  has_rdoc: true
19
19
  required_ruby_version: !ruby/object:Gem::Version::Requirement
20
20
  requirements:
21
- -
22
- - ">"
23
- - !ruby/object:Gem::Version
24
- version: 0.0.0
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
25
24
  version:
26
25
  platform: ruby
27
26
  signing_key:
28
27
  cert_chain:
29
28
  post_install_message:
30
29
  authors:
31
- - Aaron Patterson
30
+ - Aaron Patterson
32
31
  files:
33
- - test/data
34
- - test/htdocs
35
- - test/parse.rb
36
- - test/proxy.rb
37
- - test/README
38
- - test/server.rb
39
- - test/servlets.rb
40
- - test/ssl_server.rb
41
- - test/tc_authenticate.rb
42
- - test/tc_bad_links.rb
43
- - test/tc_checkboxes.rb
44
- - test/tc_cookie_class.rb
45
- - test/tc_cookie_jar.rb
46
- - test/tc_cookies.rb
47
- - test/tc_errors.rb
48
- - test/tc_form_no_inputname.rb
49
- - test/tc_forms.rb
50
- - test/tc_frames.rb
51
- - test/tc_gzipping.rb
52
- - test/tc_links.rb
53
- - test/tc_mech.rb
54
- - test/tc_multi_select.rb
55
- - test/tc_page.rb
56
- - test/tc_parsing.rb
57
- - test/tc_pluggable_parser.rb
58
- - test/tc_post_form.rb
59
- - test/tc_pretty_print.rb
60
- - test/tc_proxy.rb
61
- - test/tc_radiobutton.rb
62
- - test/tc_response_code.rb
63
- - test/tc_save_file.rb
64
- - test/tc_select.rb
65
- - test/tc_select_all.rb
66
- - test/tc_select_none.rb
67
- - test/tc_select_noopts.rb
68
- - test/tc_set_fields.rb
69
- - test/tc_ssl_server.rb
70
- - test/tc_textarea.rb
71
- - test/tc_upload.rb
72
- - test/tc_watches.rb
73
- - test/test_includes.rb
74
- - test/test_mech.rb
75
- - test/ts_mech.rb
76
- - test/data/htpasswd
77
- - test/data/server.crt
78
- - test/data/server.csr
79
- - test/data/server.key
80
- - test/data/server.pem
81
- - test/htdocs/alt_text.html
82
- - test/htdocs/bad_form_test.html
83
- - test/htdocs/button.jpg
84
- - test/htdocs/file_upload.html
85
- - test/htdocs/find_link.html
86
- - test/htdocs/form_multi_select.html
87
- - test/htdocs/form_multival.html
88
- - test/htdocs/form_no_action.html
89
- - test/htdocs/form_no_input_name.html
90
- - test/htdocs/form_select.html
91
- - test/htdocs/form_select_all.html
92
- - test/htdocs/form_select_none.html
93
- - test/htdocs/form_select_noopts.html
94
- - test/htdocs/form_set_fields.html
95
- - test/htdocs/form_test.html
96
- - test/htdocs/frame_test.html
97
- - test/htdocs/google.html
98
- - test/htdocs/iframe_test.html
99
- - test/htdocs/index.html
100
- - test/htdocs/no_title_test.html
101
- - test/htdocs/tc_bad_links.html
102
- - test/htdocs/tc_checkboxes.html
103
- - test/htdocs/tc_pretty_print.html
104
- - test/htdocs/tc_radiobuttons.html
105
- - test/htdocs/tc_textarea.html
106
- - lib/mechanize
107
- - lib/mechanize.rb
108
- - lib/mechanize/cookie.rb
109
- - lib/mechanize/errors.rb
110
- - lib/mechanize/form.rb
111
- - lib/mechanize/form_elements.rb
112
- - lib/mechanize/inspect.rb
113
- - lib/mechanize/list.rb
114
- - lib/mechanize/mech_version.rb
115
- - lib/mechanize/module.rb
116
- - lib/mechanize/net-overrides
117
- - lib/mechanize/page.rb
118
- - lib/mechanize/page_elements.rb
119
- - lib/mechanize/parsing.rb
120
- - lib/mechanize/pluggable_parsers.rb
121
- - lib/mechanize/net-overrides/net
122
- - lib/mechanize/net-overrides/net/http.rb
123
- - lib/mechanize/net-overrides/net/https.rb
124
- - lib/mechanize/net-overrides/net/protocol.rb
125
- - README
126
- - EXAMPLES
127
- - CHANGELOG
128
- - LICENSE
129
- - NOTES
32
+ - test/tc_mech.rb
33
+ - test/ts_mech.rb
34
+ - test/tc_no_attributes.rb
35
+ - test/tc_links.rb
36
+ - test/tc_select_all.rb
37
+ - test/tc_page.rb
38
+ - test/test_includes.rb
39
+ - test/tc_checkboxes.rb
40
+ - test/tc_watches.rb
41
+ - test/tc_cookies.rb
42
+ - test/proxy.rb
43
+ - test/data
44
+ - test/tc_cookie_jar.rb
45
+ - test/tc_forms.rb
46
+ - test/tc_select_none.rb
47
+ - test/tc_multi_select.rb
48
+ - test/tc_pluggable_parser.rb
49
+ - test/tc_select_noopts.rb
50
+ - test/ssl_server.rb
51
+ - test/tc_pretty_print.rb
52
+ - test/tc_post_form.rb
53
+ - test/tc_errors.rb
54
+ - test/tc_gzipping.rb
55
+ - test/tc_authenticate.rb
56
+ - test/README
57
+ - test/tc_radiobutton.rb
58
+ - test/tc_form_no_inputname.rb
59
+ - test/tc_upload.rb
60
+ - test/tc_cookie_class.rb
61
+ - test/tc_set_fields.rb
62
+ - test/tc_select.rb
63
+ - test/server.rb
64
+ - test/htdocs
65
+ - test/tc_ssl_server.rb
66
+ - test/tc_textarea.rb
67
+ - test/tc_proxy.rb
68
+ - test/tc_frames.rb
69
+ - test/tc_bad_links.rb
70
+ - test/tc_response_code.rb
71
+ - test/servlets.rb
72
+ - test/tc_save_file.rb
73
+ - test/data/server.key
74
+ - test/data/server.csr
75
+ - test/data/server.pem
76
+ - test/data/server.crt
77
+ - test/data/htpasswd
78
+ - test/htdocs/file_upload.html
79
+ - test/htdocs/tc_no_attributes.html
80
+ - test/htdocs/iframe_test.html
81
+ - test/htdocs/form_select_all.html
82
+ - test/htdocs/form_no_action.html
83
+ - test/htdocs/form_test.html
84
+ - test/htdocs/bad_form_test.html
85
+ - test/htdocs/alt_text.html
86
+ - test/htdocs/frame_test.html
87
+ - test/htdocs/tc_radiobuttons.html
88
+ - test/htdocs/form_multi_select.html
89
+ - test/htdocs/form_set_fields.html
90
+ - test/htdocs/index.html
91
+ - test/htdocs/find_link.html
92
+ - test/htdocs/google.html
93
+ - test/htdocs/no_title_test.html
94
+ - test/htdocs/button.jpg
95
+ - test/htdocs/form_multival.html
96
+ - test/htdocs/tc_bad_links.html
97
+ - test/htdocs/tc_checkboxes.html
98
+ - test/htdocs/tc_textarea.html
99
+ - test/htdocs/form_select_none.html
100
+ - test/htdocs/form_select_noopts.html
101
+ - test/htdocs/form_select.html
102
+ - test/htdocs/form_no_input_name.html
103
+ - test/htdocs/tc_pretty_print.html
104
+ - lib/mechanize.rb
105
+ - lib/mechanize
106
+ - lib/mechanize/errors.rb
107
+ - lib/mechanize/page.rb
108
+ - lib/mechanize/form_elements.rb
109
+ - lib/mechanize/net-overrides
110
+ - lib/mechanize/cookie.rb
111
+ - lib/mechanize/inspect.rb
112
+ - lib/mechanize/mech_version.rb
113
+ - lib/mechanize/list.rb
114
+ - lib/mechanize/hpricot.rb
115
+ - lib/mechanize/pluggable_parsers.rb
116
+ - lib/mechanize/page_elements.rb
117
+ - lib/mechanize/form.rb
118
+ - lib/mechanize/net-overrides/net
119
+ - lib/mechanize/net-overrides/net/http.rb
120
+ - lib/mechanize/net-overrides/net/https.rb
121
+ - lib/mechanize/net-overrides/net/protocol.rb
122
+ - README
123
+ - EXAMPLES
124
+ - CHANGELOG
125
+ - LICENSE
126
+ - NOTES
127
+ - GUIDE
130
128
  test_files: []
129
+
131
130
  rdoc_options:
132
- - "--main"
133
- - README
134
- - "--title"
135
- - "'WWW::Mechanize RDoc'"
131
+ - --main
132
+ - README
133
+ - --title
134
+ - "'WWW::Mechanize RDoc'"
136
135
  extra_rdoc_files:
137
- - README
138
- - EXAMPLES
139
- - CHANGELOG
140
- - LICENSE
141
- - NOTES
136
+ - README
137
+ - EXAMPLES
138
+ - CHANGELOG
139
+ - LICENSE
140
+ - NOTES
141
+ - GUIDE
142
142
  executables: []
143
+
143
144
  extensions: []
145
+
144
146
  requirements: []
147
+
145
148
  dependencies:
146
- - !ruby/object:Gem::Dependency
147
- name: ruby-web
148
- version_requirement:
149
- version_requirements: !ruby/object:Gem::Version::Requirement
150
- requirements:
151
- -
152
- - ">="
153
- - !ruby/object:Gem::Version
154
- version: 1.1.0
155
- version:
156
- - !ruby/object:Gem::Dependency
157
- name: mime-types
158
- version_requirement:
159
- version_requirements: !ruby/object:Gem::Version::Requirement
160
- requirements:
161
- -
162
- - ">"
163
- - !ruby/object:Gem::Version
164
- version: 0.0.0
165
- version:
149
+ - !ruby/object:Gem::Dependency
150
+ name: hpricot
151
+ version_requirement:
152
+ version_requirements: !ruby/object:Gem::Version::Requirement
153
+ requirements:
154
+ - - ">"
155
+ - !ruby/object:Gem::Version
156
+ version: 0.0.0
157
+ version: