mechanize 2.14.0 → 2.14.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.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +27 -1
  3. data/README.md +7 -0
  4. data/SECURITY.md +11 -0
  5. data/lib/mechanize/directory_saver.rb +2 -1
  6. data/lib/mechanize/file_saver.rb +2 -0
  7. data/lib/mechanize/http/agent.rb +83 -29
  8. data/lib/mechanize/parser.rb +33 -3
  9. data/lib/mechanize/test_case.rb +2 -9
  10. data/lib/mechanize/version.rb +1 -1
  11. data/lib/mechanize.rb +12 -2
  12. data/test/htdocs/frame_test.html +8 -6
  13. data/test/htdocs/relative/tc_relative_links.html +1 -1
  14. metadata +7 -174
  15. data/.autotest +0 -6
  16. data/.github/dependabot.yml +0 -11
  17. data/.github/workflows/ci.yml +0 -43
  18. data/.github/workflows/upstream.yml +0 -51
  19. data/.gitignore +0 -15
  20. data/.yardopts +0 -8
  21. data/Gemfile +0 -12
  22. data/Rakefile +0 -56
  23. data/examples/flickr_upload.rb +0 -22
  24. data/examples/latest_user_agents.rb +0 -100
  25. data/examples/mech-dump.rb +0 -5
  26. data/examples/proxy_req.rb +0 -7
  27. data/examples/rubygems.rb +0 -23
  28. data/examples/spider.rb +0 -22
  29. data/examples/wikipedia_links_to_philosophy.rb +0 -158
  30. data/mechanize.gemspec +0 -74
  31. data/test/data/htpasswd +0 -1
  32. data/test/data/server.crt +0 -16
  33. data/test/data/server.csr +0 -12
  34. data/test/data/server.key +0 -15
  35. data/test/data/server.pem +0 -15
  36. data/test/test_mechanize.rb +0 -1382
  37. data/test/test_mechanize_cookie.rb +0 -559
  38. data/test/test_mechanize_cookie_jar.rb +0 -615
  39. data/test/test_mechanize_directory_saver.rb +0 -60
  40. data/test/test_mechanize_download.rb +0 -102
  41. data/test/test_mechanize_element_not_found_error.rb +0 -16
  42. data/test/test_mechanize_file.rb +0 -118
  43. data/test/test_mechanize_file_connection.rb +0 -40
  44. data/test/test_mechanize_file_request.rb +0 -26
  45. data/test/test_mechanize_file_response.rb +0 -48
  46. data/test/test_mechanize_file_saver.rb +0 -22
  47. data/test/test_mechanize_form.rb +0 -1025
  48. data/test/test_mechanize_form_check_box.rb +0 -49
  49. data/test/test_mechanize_form_encoding.rb +0 -110
  50. data/test/test_mechanize_form_field.rb +0 -78
  51. data/test/test_mechanize_form_file_upload.rb +0 -21
  52. data/test/test_mechanize_form_image_button.rb +0 -13
  53. data/test/test_mechanize_form_keygen.rb +0 -34
  54. data/test/test_mechanize_form_multi_select_list.rb +0 -98
  55. data/test/test_mechanize_form_option.rb +0 -60
  56. data/test/test_mechanize_form_radio_button.rb +0 -96
  57. data/test/test_mechanize_form_select_list.rb +0 -81
  58. data/test/test_mechanize_form_textarea.rb +0 -53
  59. data/test/test_mechanize_headers.rb +0 -36
  60. data/test/test_mechanize_history.rb +0 -104
  61. data/test/test_mechanize_http_agent.rb +0 -1915
  62. data/test/test_mechanize_http_auth_challenge.rb +0 -64
  63. data/test/test_mechanize_http_auth_realm.rb +0 -56
  64. data/test/test_mechanize_http_auth_store.rb +0 -233
  65. data/test/test_mechanize_http_content_disposition_parser.rb +0 -167
  66. data/test/test_mechanize_http_www_authenticate_parser.rb +0 -204
  67. data/test/test_mechanize_image.rb +0 -9
  68. data/test/test_mechanize_link.rb +0 -171
  69. data/test/test_mechanize_page.rb +0 -295
  70. data/test/test_mechanize_page_encoding.rb +0 -215
  71. data/test/test_mechanize_page_frame.rb +0 -17
  72. data/test/test_mechanize_page_image.rb +0 -191
  73. data/test/test_mechanize_page_link.rb +0 -377
  74. data/test/test_mechanize_page_meta_refresh.rb +0 -151
  75. data/test/test_mechanize_parser.rb +0 -316
  76. data/test/test_mechanize_pluggable_parser.rb +0 -68
  77. data/test/test_mechanize_redirect_limit_reached_error.rb +0 -25
  78. data/test/test_mechanize_redirect_not_get_or_head_error.rb +0 -15
  79. data/test/test_mechanize_response_read_error.rb +0 -29
  80. data/test/test_mechanize_subclass.rb +0 -23
  81. data/test/test_mechanize_util.rb +0 -144
  82. data/test/test_mechanize_xml_file.rb +0 -30
  83. data/test/test_multi_select.rb +0 -120
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'mechanize/test_case'
3
-
4
- class TestMechanizeHeaders < Mechanize::TestCase
5
- def setup
6
- super
7
-
8
- @headers = Mechanize::Headers.new
9
- @headers['content-type'] = 'text/html'
10
- @headers['Content-encoding'] = 'gzip'
11
- @headers['SERVER'] = 'Apache/2.2'
12
- end
13
-
14
- def test_aref
15
- assert_equal('Apache/2.2', @headers['server'])
16
- assert_equal('text/html', @headers['Content-Type'])
17
- end
18
-
19
- def test_key?
20
- assert_equal(true, @headers.key?('content-Encoding'))
21
- end
22
-
23
- def test_canonical_each
24
- all_keys = ['Content-Type', 'Content-Encoding', 'Server']
25
- keys = all_keys.dup
26
- @headers.canonical_each { |key, value|
27
- case keys.delete(key)
28
- when *all_keys
29
- # ok
30
- else
31
- flunk "unexpected key: #{key}"
32
- end
33
- }
34
- assert_equal([], keys)
35
- end
36
- end
@@ -1,104 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'mechanize/test_case'
3
-
4
- class TestMechanizeHistory < Mechanize::TestCase
5
-
6
- def setup
7
- super
8
-
9
- @uri = URI 'http://example/'
10
- @uri2 = @uri + '/a'
11
- @history = Mechanize::History.new
12
- end
13
-
14
- def test_initialize
15
- assert_empty @history
16
- end
17
-
18
- def test_clear
19
- @history.push :page, @uri
20
-
21
- @history.clear
22
-
23
- assert_empty @history
24
- end
25
-
26
- def test_pop
27
- assert_nil @history.pop
28
-
29
- @history.push :page1, @uri
30
- @history.push :page2, @uri2
31
-
32
- assert_equal :page2, @history.pop
33
- refute_empty @history
34
- end
35
-
36
- def test_push
37
- p1 = page @uri
38
-
39
- obj = @history.push p1
40
-
41
- assert_same @history, obj
42
- assert_equal 1, @history.length
43
-
44
- p2 = page @uri2
45
-
46
- @history.push p2
47
-
48
- assert_equal 2, @history.length
49
- end
50
-
51
- def test_push_max_size
52
- @history = Mechanize::History.new 2
53
-
54
- @history.push :page1, @uri
55
-
56
- assert_equal 1, @history.length
57
-
58
- @history.push :page2, @uri
59
-
60
- assert_equal 2, @history.length
61
-
62
- @history.push :page3, @uri
63
-
64
- assert_equal 2, @history.length
65
- end
66
-
67
- def test_push_uri
68
- obj = @history.push :page, @uri
69
-
70
- assert_same @history, obj
71
- assert_equal 1, @history.length
72
-
73
- @history.push :page2, @uri
74
-
75
- assert_equal 2, @history.length
76
- end
77
-
78
- def test_shift
79
- assert_nil @history.shift
80
-
81
- @history.push :page1, @uri
82
- @history.push :page2, @uri2
83
-
84
- page = @history.shift
85
-
86
- assert_equal :page1, page
87
- refute_empty @history
88
-
89
- @history.shift
90
-
91
- assert_empty @history
92
- end
93
-
94
- def test_visited_eh
95
- refute @history.visited? @uri
96
-
97
- @history.push page @uri
98
-
99
- assert @history.visited? URI('http://example')
100
- assert @history.visited? URI('http://example/')
101
- end
102
-
103
- end
104
-