htty 1.5.4 → 1.5.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (209) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +12 -9
  3. data/.rspec +2 -1
  4. data/.travis.yml +11 -8
  5. data/.yardopts +1 -1
  6. data/Gemfile +22 -10
  7. data/Guardfile +31 -13
  8. data/History.markdown +6 -0
  9. data/README.markdown +29 -13
  10. data/Rakefile +2 -64
  11. data/bin/console +10 -0
  12. data/bin/setup +8 -0
  13. data/exe/htty +5 -0
  14. data/htty.gemspec +27 -29
  15. data/lib/htty.rb +29 -4
  16. data/lib/htty/cli.rb +9 -16
  17. data/lib/htty/cli/body_open_command.rb +2 -7
  18. data/lib/htty/cli/command.rb +10 -18
  19. data/lib/htty/cli/commands.rb +76 -11
  20. data/lib/htty/cli/commands/address.rb +1 -14
  21. data/lib/htty/cli/commands/body_clear.rb +1 -8
  22. data/lib/htty/cli/commands/body_edit.rb +1 -11
  23. data/lib/htty/cli/commands/body_request.rb +1 -12
  24. data/lib/htty/cli/commands/body_request_open.rb +1 -10
  25. data/lib/htty/cli/commands/body_response.rb +1 -12
  26. data/lib/htty/cli/commands/body_response_open.rb +1 -11
  27. data/lib/htty/cli/commands/body_set.rb +1 -10
  28. data/lib/htty/cli/commands/body_unset.rb +1 -9
  29. data/lib/htty/cli/commands/cd.rb +1 -8
  30. data/lib/htty/cli/commands/cookie_add.rb +1 -8
  31. data/lib/htty/cli/commands/cookie_remove.rb +1 -8
  32. data/lib/htty/cli/commands/cookies.rb +1 -15
  33. data/lib/htty/cli/commands/cookies_add.rb +1 -11
  34. data/lib/htty/cli/commands/cookies_clear.rb +1 -8
  35. data/lib/htty/cli/commands/cookies_remove.rb +1 -11
  36. data/lib/htty/cli/commands/cookies_remove_all.rb +1 -11
  37. data/lib/htty/cli/commands/cookies_use.rb +1 -14
  38. data/lib/htty/cli/commands/delete.rb +1 -8
  39. data/lib/htty/cli/commands/exit.rb +1 -8
  40. data/lib/htty/cli/commands/follow.rb +1 -10
  41. data/lib/htty/cli/commands/form.rb +1 -7
  42. data/lib/htty/cli/commands/form_add.rb +1 -7
  43. data/lib/htty/cli/commands/form_clear.rb +1 -8
  44. data/lib/htty/cli/commands/form_remove.rb +1 -7
  45. data/lib/htty/cli/commands/form_remove_all.rb +1 -7
  46. data/lib/htty/cli/commands/fragment_clear.rb +1 -8
  47. data/lib/htty/cli/commands/fragment_set.rb +1 -10
  48. data/lib/htty/cli/commands/fragment_unset.rb +1 -9
  49. data/lib/htty/cli/commands/get.rb +1 -8
  50. data/lib/htty/cli/commands/header_set.rb +1 -8
  51. data/lib/htty/cli/commands/header_unset.rb +1 -8
  52. data/lib/htty/cli/commands/headers_clear.rb +1 -8
  53. data/lib/htty/cli/commands/headers_request.rb +1 -15
  54. data/lib/htty/cli/commands/headers_response.rb +1 -15
  55. data/lib/htty/cli/commands/headers_set.rb +1 -10
  56. data/lib/htty/cli/commands/headers_unset.rb +1 -10
  57. data/lib/htty/cli/commands/headers_unset_all.rb +1 -10
  58. data/lib/htty/cli/commands/help.rb +4 -12
  59. data/lib/htty/cli/commands/history.rb +1 -10
  60. data/lib/htty/cli/commands/history_verbose.rb +1 -12
  61. data/lib/htty/cli/commands/host_set.rb +1 -8
  62. data/lib/htty/cli/commands/http_delete.rb +1 -12
  63. data/lib/htty/cli/commands/http_get.rb +1 -13
  64. data/lib/htty/cli/commands/http_head.rb +1 -9
  65. data/lib/htty/cli/commands/http_options.rb +1 -9
  66. data/lib/htty/cli/commands/http_patch.rb +1 -13
  67. data/lib/htty/cli/commands/http_post.rb +1 -13
  68. data/lib/htty/cli/commands/http_put.rb +1 -12
  69. data/lib/htty/cli/commands/http_trace.rb +1 -9
  70. data/lib/htty/cli/commands/patch.rb +1 -8
  71. data/lib/htty/cli/commands/path_set.rb +11 -11
  72. data/lib/htty/cli/commands/port_set.rb +1 -9
  73. data/lib/htty/cli/commands/post.rb +1 -8
  74. data/lib/htty/cli/commands/put.rb +1 -8
  75. data/lib/htty/cli/commands/query_add.rb +1 -13
  76. data/lib/htty/cli/commands/query_clear.rb +1 -8
  77. data/lib/htty/cli/commands/query_remove.rb +1 -13
  78. data/lib/htty/cli/commands/query_set.rb +1 -13
  79. data/lib/htty/cli/commands/query_unset.rb +1 -13
  80. data/lib/htty/cli/commands/query_unset_all.rb +1 -10
  81. data/lib/htty/cli/commands/quit.rb +1 -7
  82. data/lib/htty/cli/commands/reuse.rb +5 -12
  83. data/lib/htty/cli/commands/scheme_set.rb +1 -9
  84. data/lib/htty/cli/commands/ssl_verification.rb +1 -11
  85. data/lib/htty/cli/commands/ssl_verification_off.rb +1 -10
  86. data/lib/htty/cli/commands/ssl_verification_on.rb +1 -10
  87. data/lib/htty/cli/commands/status.rb +1 -11
  88. data/lib/htty/cli/commands/undo.rb +1 -7
  89. data/lib/htty/cli/commands/userinfo_clear.rb +1 -8
  90. data/lib/htty/cli/commands/userinfo_set.rb +1 -11
  91. data/lib/htty/cli/commands/userinfo_unset.rb +1 -9
  92. data/lib/htty/cli/display.rb +4 -6
  93. data/lib/htty/cli/http_method_command.rb +1 -10
  94. data/lib/htty/cli/input_device.rb +1 -0
  95. data/lib/htty/cli/url_escaping.rb +1 -6
  96. data/lib/htty/cookies_util.rb +3 -3
  97. data/lib/htty/headers.rb +3 -4
  98. data/lib/htty/http_patch.rb +20 -23
  99. data/lib/htty/no_header_error.rb +1 -1
  100. data/lib/htty/no_location_header_error.rb +1 -3
  101. data/lib/htty/no_response_error.rb +1 -1
  102. data/lib/htty/no_set_cookie_header_error.rb +1 -3
  103. data/lib/htty/payload.rb +1 -5
  104. data/lib/htty/platform.rb +1 -1
  105. data/lib/htty/preferences.rb +1 -1
  106. data/lib/htty/request.rb +3 -13
  107. data/lib/htty/requests_util.rb +1 -5
  108. data/lib/htty/response.rb +1 -4
  109. data/lib/htty/session.rb +1 -3
  110. data/lib/htty/tempfile_preserving_extname.rb +1 -2
  111. data/lib/htty/uri.rb +1 -2
  112. data/lib/htty/version.rb +1 -1
  113. data/lib/tasks.rb +3 -0
  114. data/lib/tasks/build_doc.rake +8 -0
  115. data/lib/tasks/lib_each.rake +25 -0
  116. data/lib/tasks/spec.rake +68 -0
  117. data/lib/tasks/spec_each.rake +19 -0
  118. metadata +48 -209
  119. data/bin/htty +0 -5
  120. data/spec/integration/htty/cli/commands/query_add_spec.rb +0 -57
  121. data/spec/integration/htty/cli/commands/query_remove_spec.rb +0 -55
  122. data/spec/integration/htty/cli/commands/query_set_spec.rb +0 -78
  123. data/spec/integration/htty/cli/commands/query_unset_spec.rb +0 -43
  124. data/spec/spec_helper.rb +0 -76
  125. data/spec/unit/htty/cli/commands/address_spec.rb +0 -103
  126. data/spec/unit/htty/cli/commands/body_clear_spec.rb +0 -64
  127. data/spec/unit/htty/cli/commands/body_edit_spec.rb +0 -18
  128. data/spec/unit/htty/cli/commands/body_request_spec.rb +0 -67
  129. data/spec/unit/htty/cli/commands/body_response_spec.rb +0 -72
  130. data/spec/unit/htty/cli/commands/body_set_spec.rb +0 -71
  131. data/spec/unit/htty/cli/commands/body_unset_spec.rb +0 -69
  132. data/spec/unit/htty/cli/commands/cd_spec.rb +0 -57
  133. data/spec/unit/htty/cli/commands/cookie_add_spec.rb +0 -64
  134. data/spec/unit/htty/cli/commands/cookie_remove_spec.rb +0 -64
  135. data/spec/unit/htty/cli/commands/cookies_add_spec.rb +0 -78
  136. data/spec/unit/htty/cli/commands/cookies_clear_spec.rb +0 -64
  137. data/spec/unit/htty/cli/commands/cookies_remove_all_spec.rb +0 -73
  138. data/spec/unit/htty/cli/commands/cookies_remove_spec.rb +0 -69
  139. data/spec/unit/htty/cli/commands/cookies_spec.rb +0 -76
  140. data/spec/unit/htty/cli/commands/cookies_use_spec.rb +0 -75
  141. data/spec/unit/htty/cli/commands/delete_spec.rb +0 -64
  142. data/spec/unit/htty/cli/commands/exit_spec.rb +0 -64
  143. data/spec/unit/htty/cli/commands/follow_spec.rb +0 -70
  144. data/spec/unit/htty/cli/commands/form_add_spec.rb +0 -64
  145. data/spec/unit/htty/cli/commands/form_clear_spec.rb +0 -64
  146. data/spec/unit/htty/cli/commands/form_remove_all_spec.rb +0 -66
  147. data/spec/unit/htty/cli/commands/form_remove_spec.rb +0 -57
  148. data/spec/unit/htty/cli/commands/form_spec.rb +0 -57
  149. data/spec/unit/htty/cli/commands/fragment_clear_spec.rb +0 -64
  150. data/spec/unit/htty/cli/commands/fragment_set_spec.rb +0 -73
  151. data/spec/unit/htty/cli/commands/fragment_unset_spec.rb +0 -72
  152. data/spec/unit/htty/cli/commands/get_spec.rb +0 -64
  153. data/spec/unit/htty/cli/commands/header_set_spec.rb +0 -64
  154. data/spec/unit/htty/cli/commands/header_unset_spec.rb +0 -64
  155. data/spec/unit/htty/cli/commands/headers_clear_spec.rb +0 -64
  156. data/spec/unit/htty/cli/commands/headers_request_spec.rb +0 -81
  157. data/spec/unit/htty/cli/commands/headers_response_spec.rb +0 -77
  158. data/spec/unit/htty/cli/commands/headers_set_spec.rb +0 -74
  159. data/spec/unit/htty/cli/commands/headers_unset_all_spec.rb +0 -71
  160. data/spec/unit/htty/cli/commands/headers_unset_spec.rb +0 -63
  161. data/spec/unit/htty/cli/commands/help_spec.rb +0 -67
  162. data/spec/unit/htty/cli/commands/history_spec.rb +0 -65
  163. data/spec/unit/htty/cli/commands/history_verbose_spec.rb +0 -72
  164. data/spec/unit/htty/cli/commands/host_set_spec.rb +0 -71
  165. data/spec/unit/htty/cli/commands/http_delete_spec.rb +0 -75
  166. data/spec/unit/htty/cli/commands/http_get_spec.rb +0 -77
  167. data/spec/unit/htty/cli/commands/http_head_spec.rb +0 -69
  168. data/spec/unit/htty/cli/commands/http_options_spec.rb +0 -69
  169. data/spec/unit/htty/cli/commands/http_patch_spec.rb +0 -73
  170. data/spec/unit/htty/cli/commands/http_post_spec.rb +0 -73
  171. data/spec/unit/htty/cli/commands/http_put_spec.rb +0 -71
  172. data/spec/unit/htty/cli/commands/http_trace_spec.rb +0 -69
  173. data/spec/unit/htty/cli/commands/patch_spec.rb +0 -64
  174. data/spec/unit/htty/cli/commands/path_set_spec.rb +0 -72
  175. data/spec/unit/htty/cli/commands/port_set_spec.rb +0 -73
  176. data/spec/unit/htty/cli/commands/post_spec.rb +0 -64
  177. data/spec/unit/htty/cli/commands/put_spec.rb +0 -64
  178. data/spec/unit/htty/cli/commands/query_add_spec.rb +0 -82
  179. data/spec/unit/htty/cli/commands/query_clear_spec.rb +0 -64
  180. data/spec/unit/htty/cli/commands/query_remove_spec.rb +0 -82
  181. data/spec/unit/htty/cli/commands/query_set_spec.rb +0 -82
  182. data/spec/unit/htty/cli/commands/query_unset_all_spec.rb +0 -74
  183. data/spec/unit/htty/cli/commands/query_unset_spec.rb +0 -75
  184. data/spec/unit/htty/cli/commands/quit_spec.rb +0 -64
  185. data/spec/unit/htty/cli/commands/reuse_spec.rb +0 -72
  186. data/spec/unit/htty/cli/commands/scheme_set_spec.rb +0 -74
  187. data/spec/unit/htty/cli/commands/shared_examples_for_commands.rb +0 -55
  188. data/spec/unit/htty/cli/commands/ssl_verification_off_spec.rb +0 -67
  189. data/spec/unit/htty/cli/commands/ssl_verification_on_spec.rb +0 -60
  190. data/spec/unit/htty/cli/commands/ssl_verification_spec.rb +0 -65
  191. data/spec/unit/htty/cli/commands/status_spec.rb +0 -73
  192. data/spec/unit/htty/cli/commands/undo_spec.rb +0 -57
  193. data/spec/unit/htty/cli/commands/userinfo_clear_spec.rb +0 -64
  194. data/spec/unit/htty/cli/commands/userinfo_set_spec.rb +0 -97
  195. data/spec/unit/htty/cli/commands/userinfo_unset_spec.rb +0 -72
  196. data/spec/unit/htty/cli/display_spec.rb +0 -84
  197. data/spec/unit/htty/cli_spec.rb +0 -28
  198. data/spec/unit/htty/command.rb +0 -47
  199. data/spec/unit/htty/headers_spec.rb +0 -40
  200. data/spec/unit/htty/payload_spec.rb +0 -60
  201. data/spec/unit/htty/preferences_spec.rb +0 -8
  202. data/spec/unit/htty/request_follow_spec.rb +0 -94
  203. data/spec/unit/htty/request_spec.rb +0 -1232
  204. data/spec/unit/htty/request_userinfo_spec.rb +0 -208
  205. data/spec/unit/htty/response_spec.rb +0 -0
  206. data/spec/unit/htty/session_spec.rb +0 -10
  207. data/spec/unit/htty/shared_examples_for_requests.rb +0 -32
  208. data/spec/unit/htty/url_escaping.rb +0 -70
  209. data/spec/unit/htty/version_spec.rb +0 -8
@@ -1,82 +0,0 @@
1
- require 'spec_helper'
2
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/address")
3
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_add")
4
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_remove")
5
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_set")
6
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset")
7
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset_all")
8
-
9
- describe HTTY::CLI::Commands::QueryAdd do
10
- describe 'class' do
11
- let :klass do
12
- subject.class
13
- end
14
-
15
- it 'should be an alias_for the expected command' do
16
- klass.alias_for.should == nil
17
- end
18
-
19
- it 'should have the expected aliases' do
20
- klass.aliases.should == []
21
- end
22
-
23
- it 'should belong to the expected category' do
24
- klass.category.should == 'Navigation'
25
- end
26
-
27
- it 'should have the expected command_line' do
28
- klass.command_line.should == 'query-a[dd]'
29
- end
30
-
31
- it 'should have the expected command_line_arguments' do
32
- klass.command_line_arguments.should == 'NAME [VALUE [NAME [VALUE ...]]]'
33
- end
34
-
35
- it 'should have the expected help' do
36
- klass.help.should == "Adds query-string parameters to the request's " +
37
- 'address'
38
- end
39
-
40
- it 'should have the expected help_extended' do
41
- expected = <<-end_help_extended
42
- Adds one or more query-string parameters used for the request. Does not communicate with the host.
43
-
44
- The difference between this command and \e[1mquery-s[et]\e[0m is that this command adds duplicate parameters instead of replacing any of them.
45
-
46
- The name(s) and value(s) of the query-string parameter(s) will be URL-encoded if necessary.
47
-
48
- The console prompt shows the address for the current request.
49
- end_help_extended
50
- klass.help_extended.should == expected.chomp
51
- end
52
-
53
- it 'should have the expected see_also_commands' do
54
- klass.see_also_commands.should == [HTTY::CLI::Commands::QueryRemove,
55
- HTTY::CLI::Commands::QuerySet,
56
- HTTY::CLI::Commands::QueryUnset,
57
- HTTY::CLI::Commands::QueryUnsetAll,
58
- HTTY::CLI::Commands::Address]
59
- end
60
-
61
- describe 'build_for' do
62
- it 'should correctly handle a valid, unabbreviated command line' do
63
- built = klass.build_for('query-add foo bar', :session => :the_session)
64
- built.should be_instance_of(klass)
65
- built.arguments.should == %w(foo bar)
66
- built.session.should == :the_session
67
- end
68
-
69
- it 'should correctly handle a valid, abbreviated command line' do
70
- built = klass.build_for('query-a baz', :session => :a_session)
71
- built.should be_instance_of(klass)
72
- built.arguments.should == ['baz']
73
- built.session.should == :a_session
74
- end
75
-
76
- it 'should correctly handle a command line with a bad command' do
77
- built = klass.build_for('x qux', :session => :another_session)
78
- built.should == nil
79
- end
80
- end
81
- end
82
- end
@@ -1,64 +0,0 @@
1
- require 'spec_helper'
2
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_clear")
3
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset_all")
4
-
5
- describe HTTY::CLI::Commands::QueryClear do
6
- describe 'class' do
7
- let :klass do
8
- subject.class
9
- end
10
-
11
- it 'should be an alias_for the expected command' do
12
- klass.alias_for.should == HTTY::CLI::Commands::QueryUnsetAll
13
- end
14
-
15
- it 'should have the expected aliases' do
16
- klass.aliases.should == []
17
- end
18
-
19
- it 'should belong to the expected category' do
20
- klass.category.should == 'Navigation'
21
- end
22
-
23
- it 'should have the expected command_line' do
24
- klass.command_line.should == 'query-c[lear]'
25
- end
26
-
27
- it 'should have the expected command_line_arguments' do
28
- klass.command_line_arguments.should == nil
29
- end
30
-
31
- it 'should have the expected help' do
32
- klass.help.should == "Alias for \e[1mquery-unset-[all]\e[0m"
33
- end
34
-
35
- it 'should have the expected help_extended' do
36
- klass.help_extended.should == "Alias for \e[1mquery-unset-[all]\e[0m."
37
- end
38
-
39
- it 'should have the expected see_also_commands' do
40
- klass.see_also_commands.should == [HTTY::CLI::Commands::QueryUnsetAll]
41
- end
42
-
43
- describe 'build_for' do
44
- it 'should correctly handle a valid, unabbreviated command line' do
45
- built = klass.build_for('query-clear', :session => :the_session)
46
- built.should be_instance_of(klass)
47
- built.arguments.should == []
48
- built.session.should == :the_session
49
- end
50
-
51
- it 'should correctly handle a valid, abbreviated command line' do
52
- built = klass.build_for('query-c', :session => :a_session)
53
- built.should be_instance_of(klass)
54
- built.arguments.should == []
55
- built.session.should == :a_session
56
- end
57
-
58
- it 'should correctly handle a command line with a bad command' do
59
- built = klass.build_for('x', :session => :another_session)
60
- built.should == nil
61
- end
62
- end
63
- end
64
- end
@@ -1,82 +0,0 @@
1
- require 'spec_helper'
2
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/address")
3
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_add")
4
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_remove")
5
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_set")
6
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset")
7
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset_all")
8
-
9
- describe HTTY::CLI::Commands::QueryRemove do
10
- describe 'class' do
11
- let :klass do
12
- subject.class
13
- end
14
-
15
- it 'should be an alias_for the expected command' do
16
- klass.alias_for.should == nil
17
- end
18
-
19
- it 'should have the expected aliases' do
20
- klass.aliases.should == []
21
- end
22
-
23
- it 'should belong to the expected category' do
24
- klass.category.should == 'Navigation'
25
- end
26
-
27
- it 'should have the expected command_line' do
28
- klass.command_line.should == 'query-r[emove]'
29
- end
30
-
31
- it 'should have the expected command_line_arguments' do
32
- klass.command_line_arguments.should == 'NAME [VALUE]'
33
- end
34
-
35
- it 'should have the expected help' do
36
- klass.help.should == 'Removes query-string parameters from the end of ' +
37
- "the request's address"
38
- end
39
-
40
- it 'should have the expected help_extended' do
41
- expected = <<-end_help_extended
42
- Removes one or more a query-string parameters used for the request. Does not communicate with the host.
43
-
44
- The difference between this command and \e[1mquery-unset\e[0m is that this command removes matching parameters one at a time from the end of the address instead of removing all matches.
45
-
46
- The name and value of the query-string parameter will be URL-encoded if necessary.
47
-
48
- The console prompt shows the address for the current request.
49
- end_help_extended
50
- klass.help_extended.should == expected.chomp
51
- end
52
-
53
- it 'should have the expected see_also_commands' do
54
- klass.see_also_commands.should == [HTTY::CLI::Commands::QueryAdd,
55
- HTTY::CLI::Commands::QuerySet,
56
- HTTY::CLI::Commands::QueryUnset,
57
- HTTY::CLI::Commands::QueryUnsetAll,
58
- HTTY::CLI::Commands::Address]
59
- end
60
-
61
- describe 'build_for' do
62
- it 'should correctly handle a valid, unabbreviated command line' do
63
- built = klass.build_for('query-remove foo bar', :session => :the_session)
64
- built.should be_instance_of(klass)
65
- built.arguments.should == %w(foo bar)
66
- built.session.should == :the_session
67
- end
68
-
69
- it 'should correctly handle a valid, abbreviated command line' do
70
- built = klass.build_for('query-r baz', :session => :a_session)
71
- built.should be_instance_of(klass)
72
- built.arguments.should == ['baz']
73
- built.session.should == :a_session
74
- end
75
-
76
- it 'should correctly handle a command line with a bad command' do
77
- built = klass.build_for('x qux', :session => :another_session)
78
- built.should == nil
79
- end
80
- end
81
- end
82
- end
@@ -1,82 +0,0 @@
1
- require 'spec_helper'
2
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/address")
3
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_add")
4
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_remove")
5
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_set")
6
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset")
7
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset_all")
8
-
9
- describe HTTY::CLI::Commands::QuerySet do
10
- describe 'class' do
11
- let :klass do
12
- subject.class
13
- end
14
-
15
- it 'should be an alias_for the expected command' do
16
- klass.alias_for.should == nil
17
- end
18
-
19
- it 'should have the expected aliases' do
20
- klass.aliases.should == []
21
- end
22
-
23
- it 'should belong to the expected category' do
24
- klass.category.should == 'Navigation'
25
- end
26
-
27
- it 'should have the expected command_line' do
28
- klass.command_line.should == 'query-s[et]'
29
- end
30
-
31
- it 'should have the expected command_line_arguments' do
32
- klass.command_line_arguments.should == 'NAME [VALUE [NAME [VALUE ...]]]'
33
- end
34
-
35
- it 'should have the expected help' do
36
- klass.help.should == "Sets query-string parameters in the request's " +
37
- 'address'
38
- end
39
-
40
- it 'should have the expected help_extended' do
41
- expected = <<-end_help_extended
42
- Sets one or more query-string parameters used for the request. Does not communicate with the host.
43
-
44
- The difference between this command and \e[1mquery-a[dd]\e[0m is that this command replaces any duplicate parameters instead of adding more.
45
-
46
- The name(s) and value(s) of the query-string parameter(s) will be URL-encoded if necessary.
47
-
48
- The console prompt shows the address for the current request.
49
- end_help_extended
50
- klass.help_extended.should == expected.chomp
51
- end
52
-
53
- it 'should have the expected see_also_commands' do
54
- klass.see_also_commands.should == [HTTY::CLI::Commands::QueryUnset,
55
- HTTY::CLI::Commands::QueryUnsetAll,
56
- HTTY::CLI::Commands::QueryAdd,
57
- HTTY::CLI::Commands::QueryRemove,
58
- HTTY::CLI::Commands::Address]
59
- end
60
-
61
- describe 'build_for' do
62
- it 'should correctly handle a valid, unabbreviated command line' do
63
- built = klass.build_for('query-set foo bar', :session => :the_session)
64
- built.should be_instance_of(klass)
65
- built.arguments.should == %w(foo bar)
66
- built.session.should == :the_session
67
- end
68
-
69
- it 'should correctly handle a valid, abbreviated command line' do
70
- built = klass.build_for('query-s baz', :session => :a_session)
71
- built.should be_instance_of(klass)
72
- built.arguments.should == ['baz']
73
- built.session.should == :a_session
74
- end
75
-
76
- it 'should correctly handle a command line with a bad command' do
77
- built = klass.build_for('x qux', :session => :another_session)
78
- built.should == nil
79
- end
80
- end
81
- end
82
- end
@@ -1,74 +0,0 @@
1
- require 'spec_helper'
2
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/address")
3
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_clear")
4
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_set")
5
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset")
6
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset_all")
7
-
8
- describe HTTY::CLI::Commands::QueryUnsetAll do
9
- describe 'class' do
10
- let :klass do
11
- subject.class
12
- end
13
-
14
- it 'should be an alias_for the expected command' do
15
- klass.alias_for.should == nil
16
- end
17
-
18
- it 'should have the expected aliases' do
19
- klass.aliases.should == [HTTY::CLI::Commands::QueryClear]
20
- end
21
-
22
- it 'should belong to the expected category' do
23
- klass.category.should == 'Navigation'
24
- end
25
-
26
- it 'should have the expected command_line' do
27
- klass.command_line.should == 'query-unset-[all]'
28
- end
29
-
30
- it 'should have the expected command_line_arguments' do
31
- klass.command_line_arguments.should == nil
32
- end
33
-
34
- it 'should have the expected help' do
35
- klass.help.should == "Clears the query string of the request's address"
36
- end
37
-
38
- it 'should have the expected help_extended' do
39
- expected = <<-end_help_extended
40
- Clears the query string used for the request. Does not communicate with the host.
41
-
42
- The console prompt shows the address for the current request.
43
- end_help_extended
44
- klass.help_extended.should == expected.chomp
45
- end
46
-
47
- it 'should have the expected see_also_commands' do
48
- klass.see_also_commands.should == [HTTY::CLI::Commands::QueryUnset,
49
- HTTY::CLI::Commands::QuerySet,
50
- HTTY::CLI::Commands::Address]
51
- end
52
-
53
- describe 'build_for' do
54
- it 'should correctly handle a valid, unabbreviated command line' do
55
- built = klass.build_for('query-unset-all', :session => :the_session)
56
- built.should be_instance_of(klass)
57
- built.arguments.should == []
58
- built.session.should == :the_session
59
- end
60
-
61
- it 'should correctly handle a valid, abbreviated command line' do
62
- built = klass.build_for('query-unset-', :session => :a_session)
63
- built.should be_instance_of(klass)
64
- built.arguments.should == []
65
- built.session.should == :a_session
66
- end
67
-
68
- it 'should correctly handle a command line with a bad command' do
69
- built = klass.build_for('x', :session => :another_session)
70
- built.should == nil
71
- end
72
- end
73
- end
74
- end
@@ -1,75 +0,0 @@
1
- require 'spec_helper'
2
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/address")
3
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_add")
4
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_remove")
5
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_set")
6
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset")
7
- require File.expand_path("#{File.dirname __FILE__}/../../../../../lib/htty/cli/commands/query_unset_all")
8
-
9
- describe HTTY::CLI::Commands::QueryUnset do
10
- describe 'class' do
11
- let :klass do
12
- subject.class
13
- end
14
-
15
- it 'should be an alias_for the expected command' do
16
- klass.alias_for.should == nil
17
- end
18
-
19
- it 'should have the expected aliases' do
20
- klass.aliases.should == []
21
- end
22
-
23
- it 'should belong to the expected category' do
24
- klass.category.should == 'Navigation'
25
- end
26
-
27
- it 'should have the expected command_line' do
28
- klass.command_line.should == 'query-unset'
29
- end
30
-
31
- it 'should have the expected command_line_arguments' do
32
- klass.command_line_arguments.should == 'NAME [VALUE]'
33
- end
34
-
35
- it 'should have the expected help' do
36
- klass.help.should == 'Removes query-string parameters from the ' +
37
- "request's address"
38
- end
39
-
40
- it 'should have the expected help_extended' do
41
- expected = <<-end_help_extended
42
- Removes one or more a query-string parameters used for the request. Does not communicate with the host.
43
-
44
- The difference between this command and \e[1mquery-r[emove]\e[0m is that this command removes all matching parameters instead of removing matches one at a time from the end of the address.
45
-
46
- The name of the query-string parameter will be URL-encoded if necessary.
47
-
48
- The console prompt shows the address for the current request.
49
- end_help_extended
50
- klass.help_extended.should == expected.chomp
51
- end
52
-
53
- it 'should have the expected see_also_commands' do
54
- klass.see_also_commands.should == [HTTY::CLI::Commands::QuerySet,
55
- HTTY::CLI::Commands::QueryUnsetAll,
56
- HTTY::CLI::Commands::QueryAdd,
57
- HTTY::CLI::Commands::QueryRemove,
58
- HTTY::CLI::Commands::Address]
59
- end
60
-
61
- describe 'build_for' do
62
- it 'should correctly handle a valid, unabbreviated command line' do
63
- built = klass.build_for('query-unset foo bar', :session => :the_session)
64
- built.should be_instance_of(klass)
65
- built.arguments.should == %w(foo bar)
66
- built.session.should == :the_session
67
- end
68
-
69
- it 'should correctly handle a command line with a bad command' do
70
- built = klass.build_for('x baz qux', :session => :another_session)
71
- built.should == nil
72
- end
73
- end
74
- end
75
- end