mechanize 2.0.pre.1 → 2.0.pre.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mechanize might be problematic. Click here for more details.
- data.tar.gz.sig +2 -2
- data/CHANGELOG.rdoc +24 -2
- data/Manifest.txt +15 -19
- data/Rakefile +6 -3
- data/lib/mechanize.rb +168 -28
- data/lib/mechanize/form.rb +14 -2
- data/lib/mechanize/page.rb +43 -14
- data/lib/mechanize/page/link.rb +10 -0
- data/lib/mechanize/redirect_not_get_or_head_error.rb +2 -1
- data/lib/mechanize/robots_disallowed_error.rb +29 -0
- data/lib/mechanize/util.rb +30 -6
- data/test/helper.rb +6 -0
- data/test/htdocs/canonical_uri.html +9 -0
- data/test/htdocs/nofollow.html +9 -0
- data/test/htdocs/noindex.html +9 -0
- data/test/htdocs/norobots.html +8 -0
- data/test/htdocs/rel_nofollow.html +8 -0
- data/test/htdocs/robots.html +8 -0
- data/test/htdocs/robots.txt +2 -0
- data/test/htdocs/tc_links.html +3 -3
- data/test/test_links.rb +9 -0
- data/test/test_mechanize.rb +617 -2
- data/test/{test_forms.rb → test_mechanize_form.rb} +45 -1
- data/test/test_mechanize_form_check_box.rb +37 -0
- data/test/test_mechanize_form_encoding.rb +118 -0
- data/test/{test_field_precedence.rb → test_mechanize_form_field.rb} +4 -16
- data/test/test_mechanize_page.rb +60 -1
- data/test/test_mechanize_redirect_not_get_or_head_error.rb +18 -0
- data/test/test_mechanize_subclass.rb +22 -0
- data/test/test_mechanize_util.rb +87 -2
- data/test/test_robots.rb +87 -0
- metadata +51 -43
- metadata.gz.sig +0 -0
- data/lib/mechanize/uri_resolver.rb +0 -82
- data/test/test_authenticate.rb +0 -71
- data/test/test_bad_links.rb +0 -25
- data/test/test_blank_form.rb +0 -16
- data/test/test_checkboxes.rb +0 -61
- data/test/test_content_type.rb +0 -13
- data/test/test_encoded_links.rb +0 -20
- data/test/test_errors.rb +0 -49
- data/test/test_follow_meta.rb +0 -119
- data/test/test_get_headers.rb +0 -52
- data/test/test_gzipping.rb +0 -22
- data/test/test_hash_api.rb +0 -45
- data/test/test_mech.rb +0 -283
- data/test/test_mech_proxy.rb +0 -16
- data/test/test_mechanize_uri_resolver.rb +0 -29
- data/test/test_redirect_verb_handling.rb +0 -49
- data/test/test_subclass.rb +0 -30
data/test/test_mech_proxy.rb
DELETED
@@ -1,16 +0,0 @@
|
|
1
|
-
require "helper"
|
2
|
-
|
3
|
-
class TestMechProxy< Test::Unit::TestCase
|
4
|
-
def setup
|
5
|
-
@agent = Mechanize.new
|
6
|
-
end
|
7
|
-
|
8
|
-
def test_set_proxy
|
9
|
-
@agent.set_proxy('www.example.com', 9001, 'joe', 'lol')
|
10
|
-
|
11
|
-
assert_equal(@agent.http.proxy_uri.host, 'www.example.com')
|
12
|
-
assert_equal(@agent.http.proxy_uri.port, 9001)
|
13
|
-
assert_equal(@agent.http.proxy_uri.user, 'joe')
|
14
|
-
assert_equal(@agent.http.proxy_uri.password, 'lol')
|
15
|
-
end
|
16
|
-
end
|
@@ -1,29 +0,0 @@
|
|
1
|
-
# coding: utf-8
|
2
|
-
|
3
|
-
require 'helper'
|
4
|
-
require 'mechanize/uri_resolver'
|
5
|
-
|
6
|
-
class TestMechanizeURIResolver < Test::Unit::TestCase
|
7
|
-
|
8
|
-
def setup
|
9
|
-
@r = Mechanize::URIResolver.new
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_resolve_bad_uri
|
13
|
-
e = assert_raises ArgumentError do
|
14
|
-
@r.resolve 'google'
|
15
|
-
end
|
16
|
-
|
17
|
-
assert_equal 'absolute URL needed (not google)', e.message
|
18
|
-
end
|
19
|
-
|
20
|
-
def test_resolve_utf8
|
21
|
-
uri = 'http://example?q=ü'
|
22
|
-
|
23
|
-
resolved = @r.resolve uri
|
24
|
-
|
25
|
-
assert_equal '/?q=%C3%BC', resolved.request_uri
|
26
|
-
end
|
27
|
-
|
28
|
-
end
|
29
|
-
|
@@ -1,49 +0,0 @@
|
|
1
|
-
require "helper"
|
2
|
-
|
3
|
-
class TestRedirectNotGetOrHead < Test::Unit::TestCase
|
4
|
-
def setup
|
5
|
-
@agent = Mechanize.new
|
6
|
-
end
|
7
|
-
|
8
|
-
def test_to_s
|
9
|
-
page = MechTestHelper.fake_page(@agent)
|
10
|
-
error = Mechanize::RedirectNotGetOrHeadError.new(page, :put)
|
11
|
-
assert_match(/put/, error.to_s)
|
12
|
-
end
|
13
|
-
|
14
|
-
def test_head_redirect_results_in_head_request
|
15
|
-
page = @agent.head('http://localhost/redirect')
|
16
|
-
assert_equal(page.uri.to_s, 'http://localhost/verb')
|
17
|
-
assert_equal 'HEAD', page.header['X-Request-Method']
|
18
|
-
end
|
19
|
-
|
20
|
-
def test_get_takes_a_verb
|
21
|
-
page = @agent.get(:url => 'http://localhost/redirect', :verb => :head)
|
22
|
-
assert_equal(page.uri.to_s, 'http://localhost/verb')
|
23
|
-
assert_equal 'HEAD', page.header['X-Request-Method']
|
24
|
-
end
|
25
|
-
|
26
|
-
def test_get_redirect_results_in_get_request
|
27
|
-
page = @agent.get('http://localhost/redirect')
|
28
|
-
assert_equal(page.uri.to_s, 'http://localhost/verb')
|
29
|
-
assert_equal 'GET', page.header['X-Request-Method']
|
30
|
-
end
|
31
|
-
|
32
|
-
def test_post_redirect_results_in_get_request
|
33
|
-
page = @agent.post('http://localhost/redirect')
|
34
|
-
assert_equal(page.uri.to_s, 'http://localhost/verb')
|
35
|
-
assert_equal 'GET', page.header['X-Request-Method']
|
36
|
-
end
|
37
|
-
|
38
|
-
def test_put_redirect_results_in_get_request
|
39
|
-
page = @agent.put('http://localhost/redirect', 'foo')
|
40
|
-
assert_equal(page.uri.to_s, 'http://localhost/verb')
|
41
|
-
assert_equal 'GET', page.header['X-Request-Method']
|
42
|
-
end
|
43
|
-
|
44
|
-
def test_delete_redirect_results_in_get_request
|
45
|
-
page = @agent.delete('http://localhost/redirect')
|
46
|
-
assert_equal(page.uri.to_s, 'http://localhost/verb')
|
47
|
-
assert_equal 'GET', page.header['X-Request-Method']
|
48
|
-
end
|
49
|
-
end
|
data/test/test_subclass.rb
DELETED
@@ -1,30 +0,0 @@
|
|
1
|
-
require "helper"
|
2
|
-
|
3
|
-
class TestSubclass < Test::Unit::TestCase
|
4
|
-
def setup
|
5
|
-
@agent = Mechanize.new
|
6
|
-
end
|
7
|
-
|
8
|
-
def test_send_cookie
|
9
|
-
page = @agent.get( :url => "http://localhost/send_cookies",
|
10
|
-
:headers => {'Cookie' => 'name=Aaron'} )
|
11
|
-
assert_equal(1, page.links.length)
|
12
|
-
assert_not_nil(page.links.find { |l| l.text == "name:Aaron" })
|
13
|
-
end
|
14
|
-
|
15
|
-
class Parent < Mechanize
|
16
|
-
@html_parser = :parser
|
17
|
-
@log = :log
|
18
|
-
end
|
19
|
-
|
20
|
-
class Child < Parent
|
21
|
-
end
|
22
|
-
|
23
|
-
def test_subclass_inherits_html_parser
|
24
|
-
assert_equal :parser, Child.html_parser
|
25
|
-
end
|
26
|
-
|
27
|
-
def test_subclass_inherits_log
|
28
|
-
assert_equal :log, Child.log
|
29
|
-
end
|
30
|
-
end
|