mechanize 2.0.pre.2 → 2.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.

Files changed (46) hide show
  1. data.tar.gz.sig +0 -0
  2. data/CHANGELOG.rdoc +22 -0
  3. data/Manifest.txt +11 -8
  4. data/Rakefile +2 -2
  5. data/examples/flickr_upload.rb +6 -7
  6. data/examples/mech-dump.rb +0 -2
  7. data/examples/proxy_req.rb +0 -2
  8. data/examples/rubyforge.rb +1 -3
  9. data/examples/spider.rb +2 -3
  10. data/lib/mechanize.rb +228 -680
  11. data/lib/mechanize/form/field.rb +1 -1
  12. data/lib/mechanize/history.rb +23 -5
  13. data/lib/mechanize/http.rb +3 -0
  14. data/lib/mechanize/http/agent.rb +738 -0
  15. data/lib/mechanize/inspect.rb +2 -2
  16. data/lib/mechanize/page.rb +101 -42
  17. data/lib/mechanize/page/frame.rb +24 -17
  18. data/lib/mechanize/page/link.rb +72 -54
  19. data/lib/mechanize/page/meta_refresh.rb +56 -0
  20. data/lib/mechanize/response_read_error.rb +27 -0
  21. data/test/htdocs/frame_referer_test.html +10 -0
  22. data/test/htdocs/tc_referer.html +4 -0
  23. data/test/test_frames.rb +9 -0
  24. data/test/test_history.rb +74 -98
  25. data/test/test_mechanize.rb +334 -812
  26. data/test/test_mechanize_form.rb +32 -3
  27. data/test/{test_textarea.rb → test_mechanize_form_textarea.rb} +1 -1
  28. data/test/test_mechanize_http_agent.rb +697 -0
  29. data/test/test_mechanize_link.rb +83 -0
  30. data/test/test_mechanize_page_encoding.rb +147 -0
  31. data/test/test_mechanize_page_link.rb +379 -0
  32. data/test/test_mechanize_page_meta_refresh.rb +115 -0
  33. data/test/test_pretty_print.rb +1 -1
  34. data/test/test_referer.rb +29 -5
  35. data/test/test_response_code.rb +21 -20
  36. data/test/test_robots.rb +13 -17
  37. data/test/test_scheme.rb +1 -1
  38. metadata +30 -31
  39. metadata.gz.sig +0 -0
  40. data/lib/mechanize/page/meta.rb +0 -48
  41. data/test/test_form_no_inputname.rb +0 -15
  42. data/test/test_links.rb +0 -146
  43. data/test/test_mechanize_page.rb +0 -224
  44. data/test/test_meta.rb +0 -67
  45. data/test/test_upload.rb +0 -109
  46. data/test/test_verbs.rb +0 -25
@@ -0,0 +1,115 @@
1
+ require 'helper'
2
+
3
+ class TestMechanizePageMetaRefresh < Test::Unit::TestCase
4
+
5
+ def setup
6
+ @MR = Mechanize::Page::MetaRefresh
7
+
8
+ @agent = Mechanize.new
9
+ @uri = URI 'http://example/here/'
10
+ end
11
+
12
+ def util_page delay, uri
13
+ body = <<-BODY
14
+ <head><meta http-equiv="refresh" content="#{delay};url=#{uri}"></head>
15
+ BODY
16
+
17
+ Mechanize::Page.new(@uri, { 'content-type' => 'text/html' }, body, 200,
18
+ @agent)
19
+ end
20
+
21
+ def util_meta_refresh page
22
+ node = page.search('meta').first
23
+ @MR.from_node node, page, @uri
24
+ end
25
+
26
+ def test_class_parse
27
+ delay, uri = @MR.parse "0; url=http://localhost:8080/path", @uri
28
+ assert_equal "0", delay
29
+ assert_equal "http://localhost:8080/path", uri.to_s
30
+
31
+ delay, uri = @MR.parse "100.001; url=http://localhost:8080/path", @uri
32
+ assert_equal "100.001", delay
33
+ assert_equal "http://localhost:8080/path", uri.to_s
34
+
35
+ delay, uri = @MR.parse "0; url='http://localhost:8080/path'", @uri
36
+ assert_equal "0", delay
37
+ assert_equal "http://localhost:8080/path", uri.to_s
38
+
39
+ delay, uri = @MR.parse "0; url=\"http://localhost:8080/path\"", @uri
40
+ assert_equal "0", delay
41
+ assert_equal "http://localhost:8080/path", uri.to_s
42
+
43
+ delay, uri = @MR.parse "0; url=", @uri
44
+ assert_equal "0", delay
45
+ assert_equal "http://example/here/", uri.to_s
46
+
47
+ delay, uri = @MR.parse "0", @uri
48
+ assert_equal "0", delay
49
+ assert_equal "http://example/here/", uri.to_s
50
+
51
+ delay, uri = @MR.parse " 0; ", @uri
52
+ assert_equal "0", delay
53
+ assert_equal "http://example/here/", uri.to_s
54
+
55
+ delay, uri = @MR.parse "0; UrL=http://localhost:8080/path", @uri
56
+ assert_equal "0", delay
57
+ assert_equal "http://localhost:8080/path", uri.to_s
58
+ end
59
+
60
+ def test_class_from_node
61
+ page = util_page 5, 'http://b.example'
62
+ link = util_meta_refresh page
63
+ assert_equal 5, link.delay
64
+ assert_equal 'http://b.example', link.href
65
+
66
+ page = util_page 5, 'http://example/a'
67
+ link = util_meta_refresh page
68
+ assert_equal 5, link.delay
69
+ assert_equal 'http://example/a', link.href
70
+
71
+ page = util_page 5, 'test'
72
+ link = util_meta_refresh page
73
+ assert_equal 5, link.delay
74
+ assert_equal 'http://example/here/test', link.href
75
+
76
+ page = util_page 5, '/test'
77
+ link = util_meta_refresh page
78
+ assert_equal 5, link.delay
79
+ assert_equal 'http://example/test', link.href
80
+
81
+ page = util_page 5, nil
82
+ link = util_meta_refresh page
83
+ assert_equal 5, link.delay
84
+ assert_equal 'http://example/here/', link.href
85
+
86
+ page = util_page 5, @uri
87
+ link = util_meta_refresh page
88
+ assert_equal 5, link.delay
89
+ assert_equal 'http://example/here/', link.href
90
+ end
91
+
92
+ def test_class_from_node_no_content
93
+ body = <<-BODY
94
+ <head><meta http-equiv="refresh"></head>
95
+ BODY
96
+
97
+ page = Mechanize::Page.new(@uri, { 'content-type' => 'text/html' }, body,
98
+ 200, @agent)
99
+
100
+ assert_nil util_meta_refresh page
101
+ end
102
+
103
+ def test_class_from_node_not_refresh
104
+ body = <<-BODY
105
+ <head><meta http-equiv="other-thing" content="0;"></head>
106
+ BODY
107
+
108
+ page = Mechanize::Page.new(@uri, { 'content-type' => 'text/html' }, body,
109
+ 200, @agent)
110
+
111
+ assert_nil util_meta_refresh page
112
+ end
113
+
114
+ end
115
+
@@ -4,7 +4,7 @@ class TestPrettyPrint < Test::Unit::TestCase
4
4
  def setup
5
5
  @agent = Mechanize.new
6
6
  end
7
-
7
+
8
8
  def test_pretty_print
9
9
  @agent.get("http://localhost/tc_pretty_print.html")
10
10
  pretty_string = @agent.pretty_print_inspect
@@ -12,21 +12,27 @@ class RefererTest < Test::Unit::TestCase
12
12
 
13
13
  def test_send_referer
14
14
  page = @agent.get("http://localhost/tc_referer.html")
15
- page = @agent.click page.links.first
15
+ page = @agent.click page.links[0]
16
16
  assert_equal("http://localhost/tc_referer.html", page.body)
17
17
  end
18
18
 
19
+ def test_send_referer_noreferrer
20
+ page = @agent.get("http://localhost/tc_referer.html")
21
+ page = @agent.click page.links[3]
22
+ assert_equal("", page.body)
23
+ end
24
+
19
25
  def test_fetch_two
20
26
  page1 = @agent.get("http://localhost/tc_referer.html")
21
27
  @agent.get("http://localhost/tc_pretty_print.html")
22
- page = @agent.click page1.links.first
28
+ page = @agent.click page1.links[0]
23
29
  assert_equal("http://localhost/tc_referer.html", page.body)
24
30
  end
25
31
 
26
32
  def test_fetch_two_first
27
33
  page1 = @agent.get("http://localhost/tc_referer.html")
28
34
  @agent.get("http://localhost/tc_pretty_print.html")
29
- page = @agent.click page1.links.first
35
+ page = @agent.click page1.links[0]
30
36
  assert_equal("http://localhost/tc_referer.html", page.body)
31
37
  end
32
38
 
@@ -39,19 +45,37 @@ class RefererTest < Test::Unit::TestCase
39
45
 
40
46
  def test_http_to_https
41
47
  page = @agent.get("http://localhost/tc_referer.html")
42
- page = @agent.click page.links.last
48
+ page = @agent.click page.links[2]
43
49
  assert_equal("http://localhost/tc_referer.html", page.body)
44
50
  end
45
51
 
52
+ def test_http_to_https_noreferrer
53
+ page = @agent.get("http://localhost/tc_referer.html")
54
+ page = @agent.click page.links[5]
55
+ assert_equal("", page.body)
56
+ end
57
+
46
58
  def test_https_to_https
47
59
  page = @agent.get("https://localhost/tc_referer.html")
48
- page = @agent.click page.links.last
60
+ page = @agent.click page.links[2]
49
61
  assert_equal("https://localhost/tc_referer.html", page.body)
50
62
  end
51
63
 
64
+ def test_https_to_https_noreferrer
65
+ page = @agent.get("https://localhost/tc_referer.html")
66
+ page = @agent.click page.links[5]
67
+ assert_equal("", page.body)
68
+ end
69
+
52
70
  def test_https_to_http
53
71
  page = @agent.get("https://localhost/tc_referer.html")
54
72
  page = @agent.click page.links[1]
55
73
  assert_equal("", page.body)
56
74
  end
75
+
76
+ def test_https_to_http_noreferrer
77
+ page = @agent.get("https://localhost/tc_referer.html")
78
+ page = @agent.click page.links[4]
79
+ assert_equal("", page.body)
80
+ end
57
81
  end
@@ -2,51 +2,52 @@ require "helper"
2
2
 
3
3
  class ResponseCodeMechTest < Test::Unit::TestCase
4
4
  def setup
5
- @agent = Mechanize.new
5
+ @mech = Mechanize.new
6
6
  end
7
7
 
8
8
  def test_eof_error_loop
9
9
  assert_raises(Net::HTTP::Persistent::Error) {
10
- @agent.get("http://localhost/http_headers?Content-Length=300")
10
+ @mech.get("http://localhost/http_headers?Content-Length=300")
11
11
  }
12
12
  end
13
13
 
14
14
  def test_redirect
15
- @agent.get("http://localhost/response_code?code=300")
15
+ @mech.get("http://localhost/response_code?code=300")
16
16
  assert_equal("http://localhost/index.html",
17
- @agent.current_page.uri.to_s)
17
+ @mech.current_page.uri.to_s)
18
18
 
19
- @agent.get("http://localhost/response_code?code=301")
19
+ @mech.get("http://localhost/response_code?code=301")
20
20
  assert_equal("http://localhost/index.html",
21
- @agent.current_page.uri.to_s)
21
+ @mech.current_page.uri.to_s)
22
22
 
23
- @agent.get("http://localhost/response_code?code=302")
23
+ @mech.get("http://localhost/response_code?code=302")
24
24
  assert_equal("http://localhost/index.html",
25
- @agent.current_page.uri.to_s)
25
+ @mech.current_page.uri.to_s)
26
26
 
27
- @agent.get("http://localhost/response_code?code=303")
27
+ @mech.get("http://localhost/response_code?code=303")
28
28
  assert_equal("http://localhost/index.html",
29
- @agent.current_page.uri.to_s)
29
+ @mech.current_page.uri.to_s)
30
30
 
31
- @agent.get("http://localhost/response_code?code=307")
31
+ @mech.get("http://localhost/response_code?code=307")
32
32
  assert_equal("http://localhost/index.html",
33
- @agent.current_page.uri.to_s)
33
+ @mech.current_page.uri.to_s)
34
34
  end
35
35
 
36
36
  def test_do_not_follow_redirect
37
- @agent.redirect_ok = false
37
+ @mech.redirect_ok = false
38
38
 
39
- @agent.get("http://localhost/response_code?code=302")
39
+ @mech.get("http://localhost/response_code?code=302")
40
40
  assert_equal("http://localhost/response_code?code=302",
41
- @agent.current_page.uri.to_s)
41
+ @mech.current_page.uri.to_s)
42
42
  end
43
43
 
44
44
  def test_error
45
- @agent = Mechanize.new
46
- begin
47
- @agent.get("http://localhost/response_code?code=500")
48
- rescue Mechanize::ResponseCodeError => err
49
- assert_equal("500", err.response_code)
45
+ e = assert_raises Mechanize::ResponseCodeError do
46
+ @mech.get "http://localhost/response_code?code=500"
50
47
  end
48
+
49
+ assert_equal "500", e.response_code
51
50
  end
51
+
52
52
  end
53
+
@@ -1,21 +1,14 @@
1
1
  require "helper"
2
2
 
3
3
  class TestRobots < Test::Unit::TestCase
4
+
4
5
  def setup
5
- @agent = Mechanize.new
6
+ @mech = Mechanize.new
6
7
  @robot = Mechanize.new { |a|
7
8
  a.robots = true
8
9
  }
9
10
  end
10
11
 
11
- def test_mechanize_webrobots_http_get
12
- robotstxt = @agent.__send__(:webrobots_http_get, 'http://localhost/robots.txt')
13
- assert_not_equal '', robotstxt
14
-
15
- robotstxt = @agent.__send__(:webrobots_http_get, 'http://localhost/response_code?code=404')
16
- assert_equal '', robotstxt
17
- end
18
-
19
12
  def test_robots
20
13
  assert_equal "Welcome!", @robot.get("http://localhost/robots.html").title
21
14
 
@@ -27,26 +20,27 @@ class TestRobots < Test::Unit::TestCase
27
20
  def test_robots_allowed_eh
28
21
  allowed = URI.parse 'http://localhost/robots.html'
29
22
  disallowed = URI.parse 'http://localhost/norobots.html'
30
- assert @agent.robots_allowed?(allowed)
31
- assert !@agent.robots_allowed?(disallowed)
23
+ assert @mech.agent.robots_allowed?(allowed)
24
+ assert !@mech.agent.robots_allowed?(disallowed)
32
25
 
33
- assert !@agent.robots_disallowed?(allowed)
34
- assert @agent.robots_disallowed?(disallowed)
26
+ assert !@mech.agent.robots_disallowed?(allowed)
27
+ assert @mech.agent.robots_disallowed?(disallowed)
35
28
  end
36
29
 
37
30
  def test_noindex
38
31
  assert_nothing_raised {
39
- @agent.get("http://localhost/noindex.html")
32
+ @mech.get("http://localhost/noindex.html")
40
33
  }
41
34
 
42
- assert @robot.robots_allowed?(URI.parse("http://localhost/noindex.html"))
35
+ assert @robot.agent.robots_allowed? URI("http://localhost/noindex.html")
36
+
43
37
  assert_raise(Mechanize::RobotsDisallowedError) {
44
38
  @robot.get("http://localhost/noindex.html")
45
39
  }
46
40
  end
47
41
 
48
42
  def test_nofollow
49
- page = @agent.get("http://localhost/nofollow.html")
43
+ page = @mech.get("http://localhost/nofollow.html")
50
44
 
51
45
  assert_nothing_raised {
52
46
  page.links[0].click
@@ -66,7 +60,7 @@ class TestRobots < Test::Unit::TestCase
66
60
  end
67
61
 
68
62
  def test_rel_nofollow
69
- page = @agent.get("http://localhost/rel_nofollow.html")
63
+ page = @mech.get("http://localhost/rel_nofollow.html")
70
64
 
71
65
  assert_nothing_raised {
72
66
  page.links[0].click
@@ -84,4 +78,6 @@ class TestRobots < Test::Unit::TestCase
84
78
  page.links[1].click
85
79
  }
86
80
  end
81
+
87
82
  end
83
+
@@ -40,7 +40,7 @@ class SchemeTest < Test::Unit::TestCase
40
40
  page = link.click
41
41
  assert_equal(File.read(path), page.body)
42
42
 
43
- link = page.meta.first
43
+ link = page.meta_refresh.first
44
44
  assert_not_nil(link)
45
45
  page = @agent.click(link)
46
46
  assert_equal("http://localhost/index.html", @agent.history.last.uri.to_s)
metadata CHANGED
@@ -1,14 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mechanize
3
3
  version: !ruby/object:Gem::Version
4
- hash: 1923831933
4
+ hash: 3
5
5
  prerelease:
6
6
  segments:
7
7
  - 2
8
8
  - 0
9
- - pre
10
- - 2
11
- version: 2.0.pre.2
9
+ version: "2.0"
12
10
  platform: ruby
13
11
  authors:
14
12
  - Eric Hodel
@@ -39,7 +37,7 @@ cert_chain:
39
37
  x52qPcexcYZR7w==
40
38
  -----END CERTIFICATE-----
41
39
 
42
- date: 2011-04-18 00:00:00 Z
40
+ date: 2011-06-27 00:00:00 Z
43
41
  dependencies:
44
42
  - !ruby/object:Gem::Dependency
45
43
  name: nokogiri
@@ -64,11 +62,11 @@ dependencies:
64
62
  requirements:
65
63
  - - ~>
66
64
  - !ruby/object:Gem::Version
67
- hash: 3
65
+ hash: 31
68
66
  segments:
69
67
  - 1
70
- - 6
71
- version: "1.6"
68
+ - 8
69
+ version: "1.8"
72
70
  type: :runtime
73
71
  version_requirements: *id002
74
72
  - !ruby/object:Gem::Dependency
@@ -109,12 +107,12 @@ dependencies:
109
107
  version: "0.0"
110
108
  - - ">="
111
109
  - !ruby/object:Gem::Version
112
- hash: 19
110
+ hash: 13
113
111
  segments:
114
112
  - 0
115
113
  - 0
116
- - 6
117
- version: 0.0.6
114
+ - 9
115
+ version: 0.0.9
118
116
  type: :runtime
119
117
  version_requirements: *id004
120
118
  - !ruby/object:Gem::Dependency
@@ -123,14 +121,13 @@ dependencies:
123
121
  requirement: &id005 !ruby/object:Gem::Requirement
124
122
  none: false
125
123
  requirements:
126
- - - ">="
124
+ - - ~>
127
125
  - !ruby/object:Gem::Version
128
- hash: 35
126
+ hash: 17
129
127
  segments:
130
128
  - 2
131
129
  - 9
132
- - 4
133
- version: 2.9.4
130
+ version: "2.9"
134
131
  type: :development
135
132
  version_requirements: *id005
136
133
  description: |-
@@ -191,6 +188,8 @@ files:
191
188
  - lib/mechanize/form/select_list.rb
192
189
  - lib/mechanize/headers.rb
193
190
  - lib/mechanize/history.rb
191
+ - lib/mechanize/http.rb
192
+ - lib/mechanize/http/agent.rb
194
193
  - lib/mechanize/inspect.rb
195
194
  - lib/mechanize/monkey_patch.rb
196
195
  - lib/mechanize/page.rb
@@ -199,11 +198,12 @@ files:
199
198
  - lib/mechanize/page/image.rb
200
199
  - lib/mechanize/page/label.rb
201
200
  - lib/mechanize/page/link.rb
202
- - lib/mechanize/page/meta.rb
201
+ - lib/mechanize/page/meta_refresh.rb
203
202
  - lib/mechanize/pluggable_parsers.rb
204
203
  - lib/mechanize/redirect_limit_reached_error.rb
205
204
  - lib/mechanize/redirect_not_get_or_head_error.rb
206
205
  - lib/mechanize/response_code_error.rb
206
+ - lib/mechanize/response_read_error.rb
207
207
  - lib/mechanize/robots_disallowed_error.rb
208
208
  - lib/mechanize/unsupported_scheme_error.rb
209
209
  - lib/mechanize/util.rb
@@ -231,6 +231,7 @@ files:
231
231
  - test/htdocs/form_select_noopts.html
232
232
  - test/htdocs/form_set_fields.html
233
233
  - test/htdocs/form_test.html
234
+ - test/htdocs/frame_referer_test.html
234
235
  - test/htdocs/frame_test.html
235
236
  - test/htdocs/google.html
236
237
  - test/htdocs/iframe_test.html
@@ -275,7 +276,6 @@ files:
275
276
  - test/test_form_action.rb
276
277
  - test/test_form_as_hash.rb
277
278
  - test/test_form_button.rb
278
- - test/test_form_no_inputname.rb
279
279
  - test/test_frames.rb
280
280
  - test/test_headers.rb
281
281
  - test/test_history.rb
@@ -283,7 +283,6 @@ files:
283
283
  - test/test_html_unscape_forms.rb
284
284
  - test/test_if_modified_since.rb
285
285
  - test/test_images.rb
286
- - test/test_links.rb
287
286
  - test/test_mechanize.rb
288
287
  - test/test_mechanize_cookie.rb
289
288
  - test/test_mechanize_cookie_jar.rb
@@ -295,11 +294,15 @@ files:
295
294
  - test/test_mechanize_form_encoding.rb
296
295
  - test/test_mechanize_form_field.rb
297
296
  - test/test_mechanize_form_image_button.rb
298
- - test/test_mechanize_page.rb
297
+ - test/test_mechanize_form_textarea.rb
298
+ - test/test_mechanize_http_agent.rb
299
+ - test/test_mechanize_link.rb
300
+ - test/test_mechanize_page_encoding.rb
301
+ - test/test_mechanize_page_link.rb
302
+ - test/test_mechanize_page_meta_refresh.rb
299
303
  - test/test_mechanize_redirect_not_get_or_head_error.rb
300
304
  - test/test_mechanize_subclass.rb
301
305
  - test/test_mechanize_util.rb
302
- - test/test_meta.rb
303
306
  - test/test_multi_select.rb
304
307
  - test/test_no_attributes.rb
305
308
  - test/test_option.rb
@@ -321,9 +324,6 @@ files:
321
324
  - test/test_select_noopts.rb
322
325
  - test/test_set_fields.rb
323
326
  - test/test_ssl_server.rb
324
- - test/test_textarea.rb
325
- - test/test_upload.rb
326
- - test/test_verbs.rb
327
327
  - .gemtest
328
328
  homepage: http://mechanize.rubyforge.org
329
329
  licenses: []
@@ -357,7 +357,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
357
357
  requirements: []
358
358
 
359
359
  rubyforge_project: mechanize
360
- rubygems_version: 1.7.2
360
+ rubygems_version: 1.8.5
361
361
  signing_key:
362
362
  specification_version: 3
363
363
  summary: The Mechanize library is used for automating interaction with websites
@@ -366,7 +366,6 @@ test_files:
366
366
  - test/test_form_action.rb
367
367
  - test/test_form_as_hash.rb
368
368
  - test/test_form_button.rb
369
- - test/test_form_no_inputname.rb
370
369
  - test/test_frames.rb
371
370
  - test/test_headers.rb
372
371
  - test/test_history.rb
@@ -374,7 +373,6 @@ test_files:
374
373
  - test/test_html_unscape_forms.rb
375
374
  - test/test_if_modified_since.rb
376
375
  - test/test_images.rb
377
- - test/test_links.rb
378
376
  - test/test_mechanize.rb
379
377
  - test/test_mechanize_cookie.rb
380
378
  - test/test_mechanize_cookie_jar.rb
@@ -386,11 +384,15 @@ test_files:
386
384
  - test/test_mechanize_form_encoding.rb
387
385
  - test/test_mechanize_form_field.rb
388
386
  - test/test_mechanize_form_image_button.rb
389
- - test/test_mechanize_page.rb
387
+ - test/test_mechanize_form_textarea.rb
388
+ - test/test_mechanize_http_agent.rb
389
+ - test/test_mechanize_link.rb
390
+ - test/test_mechanize_page_encoding.rb
391
+ - test/test_mechanize_page_link.rb
392
+ - test/test_mechanize_page_meta_refresh.rb
390
393
  - test/test_mechanize_redirect_not_get_or_head_error.rb
391
394
  - test/test_mechanize_subclass.rb
392
395
  - test/test_mechanize_util.rb
393
- - test/test_meta.rb
394
396
  - test/test_multi_select.rb
395
397
  - test/test_no_attributes.rb
396
398
  - test/test_option.rb
@@ -412,6 +414,3 @@ test_files:
412
414
  - test/test_select_noopts.rb
413
415
  - test/test_set_fields.rb
414
416
  - test/test_ssl_server.rb
415
- - test/test_textarea.rb
416
- - test/test_upload.rb
417
- - test/test_verbs.rb