htty 1.1.1 → 1.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/lib/htty/cli/http_method_command.rb +15 -5
- data/lib/htty/cli.rb +11 -0
- data/spec/unit/htty/request_spec.rb +52 -28
- data/spec/unit/htty_spec.rb +8 -0
- metadata +4 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.1.
|
1
|
+
1.1.2
|
@@ -10,14 +10,24 @@ class HTTY::CLI; end
|
|
10
10
|
# subclasses.
|
11
11
|
module HTTY::CLI::HTTPMethodCommand
|
12
12
|
|
13
|
-
include HTTY::CLI::
|
13
|
+
# Class methods for modules that include HTTY::CLI::HTTPMethodCommand.
|
14
|
+
module ClassMethods
|
15
|
+
|
16
|
+
# Returns the name of a category under which help for the command should
|
17
|
+
# appear.
|
18
|
+
def category
|
19
|
+
'Issuing Requests'
|
20
|
+
end
|
14
21
|
|
15
|
-
# Returns the name of a category under which help for the command should
|
16
|
-
# appear.
|
17
|
-
def self.category
|
18
|
-
'Issuing Requests'
|
19
22
|
end
|
20
23
|
|
24
|
+
# Extends _other_module_ with ClassMethods.
|
25
|
+
def self.included(other_module)
|
26
|
+
other_module.extend ClassMethods
|
27
|
+
end
|
28
|
+
|
29
|
+
include HTTY::CLI::Display
|
30
|
+
|
21
31
|
# Performs the command.
|
22
32
|
def perform
|
23
33
|
add_request_if_has_response do |request|
|
data/lib/htty/cli.rb
CHANGED
@@ -70,12 +70,23 @@ private
|
|
70
70
|
if (command_line = Readline.readline(prompt, true)).nil?
|
71
71
|
raise Interrupt
|
72
72
|
end
|
73
|
+
if whitespace?(command_line) || repeat?(command_line)
|
74
|
+
Readline::HISTORY.pop
|
75
|
+
end
|
73
76
|
command_line.chomp!
|
74
77
|
command_line.strip!
|
75
78
|
end
|
76
79
|
HTTY::CLI::Commands.build_for command_line, :session => session
|
77
80
|
end
|
78
81
|
|
82
|
+
def repeat?(command_line)
|
83
|
+
command_line == Readline::HISTORY.to_a[-2]
|
84
|
+
end
|
85
|
+
|
86
|
+
def whitespace?(command_line)
|
87
|
+
command_line.strip.empty?
|
88
|
+
end
|
89
|
+
|
79
90
|
end
|
80
91
|
|
81
92
|
Dir.glob "#{File.dirname __FILE__}/cli/*.rb" do |f|
|
@@ -1,10 +1,11 @@
|
|
1
1
|
require 'spec'
|
2
|
+
require File.expand_path("#{File.dirname __FILE__}/../../../lib/htty")
|
2
3
|
require File.expand_path("#{File.dirname __FILE__}/../../../lib/htty/request")
|
3
4
|
require File.expand_path("#{File.dirname __FILE__}/../../../lib/htty/response")
|
4
5
|
|
5
6
|
shared_examples_for 'an empty request' do
|
6
7
|
it 'should have only the default headers' do
|
7
|
-
@request.headers.should == [
|
8
|
+
@request.headers.should == [['User-Agent', "htty/#{HTTY::VERSION}"]]
|
8
9
|
end
|
9
10
|
|
10
11
|
it 'should have no body' do
|
@@ -18,7 +19,7 @@ end
|
|
18
19
|
|
19
20
|
shared_examples_for 'an empty, authenticated request' do
|
20
21
|
it 'should the expected Authorization header plus the default headers' do
|
21
|
-
@request.headers.should == [['User-Agent',
|
22
|
+
@request.headers.should == [['User-Agent', "htty/#{HTTY::VERSION}"],
|
22
23
|
['Authorization', 'Basic bmpvbnNzb24=']]
|
23
24
|
end
|
24
25
|
|
@@ -331,7 +332,8 @@ describe HTTY::Request do
|
|
331
332
|
|
332
333
|
it 'should the expected Authorization header plus the default ' +
|
333
334
|
'headers' do
|
334
|
-
@request.headers.should == [['User-Agent', 'htty/
|
335
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
336
|
+
HTTY::VERSION],
|
335
337
|
['Authorization', 'Basic c3RldmU=']]
|
336
338
|
end
|
337
339
|
|
@@ -419,7 +421,8 @@ describe HTTY::Request do
|
|
419
421
|
|
420
422
|
it 'should the expected Authorization header plus the default ' +
|
421
423
|
'headers' do
|
422
|
-
@request.headers.should == [['User-Agent', 'htty/
|
424
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
425
|
+
HTTY::VERSION],
|
423
426
|
['Authorization', 'Basic bmlscw==']]
|
424
427
|
end
|
425
428
|
|
@@ -445,7 +448,8 @@ describe HTTY::Request do
|
|
445
448
|
|
446
449
|
it 'should the expected Authorization header plus the default ' +
|
447
450
|
'headers' do
|
448
|
-
@request.headers.should == [['User-Agent', 'htty/
|
451
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
452
|
+
HTTY::VERSION],
|
449
453
|
['Authorization', 'Basic bkU=']]
|
450
454
|
end
|
451
455
|
|
@@ -749,7 +753,8 @@ describe HTTY::Request do
|
|
749
753
|
|
750
754
|
describe '--' do
|
751
755
|
it 'should have the header, plus the default headers' do
|
752
|
-
@request.headers.should == [['User-Agent', 'htty/
|
756
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
757
|
+
HTTY::VERSION],
|
753
758
|
['Authorization', 'Basic ' +
|
754
759
|
'bmpvbnNzb24='],
|
755
760
|
['foo', 'bar']]
|
@@ -763,7 +768,8 @@ describe HTTY::Request do
|
|
763
768
|
end
|
764
769
|
|
765
770
|
it 'should have only the default headers' do
|
766
|
-
@request.headers.should == [['User-Agent', 'htty/
|
771
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
772
|
+
HTTY::VERSION],
|
767
773
|
['Authorization', 'Basic ' +
|
768
774
|
'bmpvbnNzb24=']]
|
769
775
|
end
|
@@ -775,7 +781,8 @@ describe HTTY::Request do
|
|
775
781
|
end
|
776
782
|
|
777
783
|
it 'should have the header, plus the default headers' do
|
778
|
-
@request.headers.should == [['User-Agent', 'htty/
|
784
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
785
|
+
HTTY::VERSION],
|
779
786
|
['Authorization', 'Basic ' +
|
780
787
|
'bmpvbnNzb24='],
|
781
788
|
['foo', 'bar']]
|
@@ -811,7 +818,8 @@ describe HTTY::Request do
|
|
811
818
|
end
|
812
819
|
|
813
820
|
it 'should have the cookie header, plus the default headers' do
|
814
|
-
@request.headers.should == [['User-Agent', 'htty/
|
821
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
822
|
+
HTTY::VERSION],
|
815
823
|
['Authorization', 'Basic ' +
|
816
824
|
'bmpvbnNzb24='],
|
817
825
|
['Cookie', 'foo=bar']]
|
@@ -830,7 +838,8 @@ describe HTTY::Request do
|
|
830
838
|
|
831
839
|
it 'should have the new cookie header, plus the default ' +
|
832
840
|
'headers' do
|
833
|
-
@request.headers.should == [['User-Agent', 'htty/
|
841
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
842
|
+
HTTY::VERSION],
|
834
843
|
['Authorization', 'Basic ' +
|
835
844
|
'bmpvbnNzb24='],
|
836
845
|
['Cookie', 'foo=bar; ' +
|
@@ -849,7 +858,8 @@ describe HTTY::Request do
|
|
849
858
|
|
850
859
|
it 'should have the new cookie header, plus the default ' +
|
851
860
|
'headers' do
|
852
|
-
@request.headers.should == [['User-Agent', 'htty/
|
861
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
862
|
+
HTTY::VERSION],
|
853
863
|
['Authorization', 'Basic ' +
|
854
864
|
'bmpvbnNzb24='],
|
855
865
|
['Cookie', 'foo=bar; ' +
|
@@ -868,7 +878,8 @@ describe HTTY::Request do
|
|
868
878
|
|
869
879
|
it 'should have the new cookie header, plus the default ' +
|
870
880
|
'headers' do
|
871
|
-
@request.headers.should == [['User-Agent', 'htty/
|
881
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
882
|
+
HTTY::VERSION],
|
872
883
|
['Authorization', 'Basic ' +
|
873
884
|
'bmpvbnNzb24='],
|
874
885
|
['Cookie', 'foo=bar; baz']]
|
@@ -887,7 +898,8 @@ describe HTTY::Request do
|
|
887
898
|
end
|
888
899
|
|
889
900
|
it 'should have only the default headers' do
|
890
|
-
@request.headers.should == [['User-Agent', 'htty/
|
901
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
902
|
+
HTTY::VERSION],
|
891
903
|
['Authorization', 'Basic ' +
|
892
904
|
'bmpvbnNzb24=']]
|
893
905
|
end
|
@@ -903,7 +915,8 @@ describe HTTY::Request do
|
|
903
915
|
end
|
904
916
|
|
905
917
|
it 'should have the cookie header, plus the default headers' do
|
906
|
-
@request.headers.should == [['User-Agent', 'htty/
|
918
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
919
|
+
HTTY::VERSION],
|
907
920
|
['Authorization', 'Basic ' +
|
908
921
|
'bmpvbnNzb24='],
|
909
922
|
['Cookie', 'foo=bar']]
|
@@ -921,7 +934,8 @@ describe HTTY::Request do
|
|
921
934
|
end
|
922
935
|
|
923
936
|
it 'should have only the default headers' do
|
924
|
-
@request.headers.should == [['User-Agent', 'htty/
|
937
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
938
|
+
HTTY::VERSION],
|
925
939
|
['Authorization', 'Basic ' +
|
926
940
|
'bmpvbnNzb24=']]
|
927
941
|
end
|
@@ -938,8 +952,9 @@ describe HTTY::Request do
|
|
938
952
|
end
|
939
953
|
|
940
954
|
it 'should have the cookie header, plus the default headers' do
|
941
|
-
@request.headers.should == [
|
942
|
-
|
955
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
956
|
+
HTTY::VERSION],
|
957
|
+
['Cookie', 'foo=bar']]
|
943
958
|
end
|
944
959
|
end
|
945
960
|
|
@@ -954,7 +969,8 @@ describe HTTY::Request do
|
|
954
969
|
end
|
955
970
|
|
956
971
|
it 'should have only the default headers' do
|
957
|
-
@request.headers.should == [
|
972
|
+
@request.headers.should == [['User-Agent',
|
973
|
+
"htty/#{HTTY::VERSION}"]]
|
958
974
|
end
|
959
975
|
end
|
960
976
|
end
|
@@ -971,7 +987,8 @@ describe HTTY::Request do
|
|
971
987
|
end
|
972
988
|
|
973
989
|
it 'should have the cookie header, plus the default headers' do
|
974
|
-
@request.headers.should == [['User-Agent', 'htty/
|
990
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
991
|
+
HTTY::VERSION],
|
975
992
|
['Authorization', 'Basic ' +
|
976
993
|
'bmpvbnNzb24='],
|
977
994
|
['Cookie', 'foo=bar=baz=qux']]
|
@@ -996,7 +1013,8 @@ describe HTTY::Request do
|
|
996
1013
|
end
|
997
1014
|
|
998
1015
|
it 'should have only the default headers' do
|
999
|
-
@request.headers.should == [['User-Agent', 'htty/
|
1016
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
1017
|
+
HTTY::VERSION],
|
1000
1018
|
['Authorization', 'Basic ' +
|
1001
1019
|
'bmpvbnNzb24=']]
|
1002
1020
|
end
|
@@ -1005,7 +1023,7 @@ describe HTTY::Request do
|
|
1005
1023
|
"'User-Agent' header if we do not exclude the " +
|
1006
1024
|
"'Content-Length' header" do
|
1007
1025
|
@request.headers(true).should == [['User-Agent', 'htty/' +
|
1008
|
-
|
1026
|
+
HTTY::VERSION],
|
1009
1027
|
['Authorization', 'Basic ' +
|
1010
1028
|
'bmpvbnNz' +
|
1011
1029
|
'b24='],
|
@@ -1023,7 +1041,8 @@ describe HTTY::Request do
|
|
1023
1041
|
end
|
1024
1042
|
|
1025
1043
|
it 'should have only the default headers' do
|
1026
|
-
@request.headers.should == [['User-Agent', 'htty/
|
1044
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
1045
|
+
HTTY::VERSION],
|
1027
1046
|
['Authorization', 'Basic ' +
|
1028
1047
|
'bmpvbnNzb24=']]
|
1029
1048
|
end
|
@@ -1044,7 +1063,8 @@ describe HTTY::Request do
|
|
1044
1063
|
end
|
1045
1064
|
|
1046
1065
|
it 'should not affect the headers' do
|
1047
|
-
@request.headers.should == [['User-Agent', 'htty/
|
1066
|
+
@request.headers.should == [['User-Agent', 'htty/' +
|
1067
|
+
HTTY::VERSION],
|
1048
1068
|
['Authorization', 'Basic ' +
|
1049
1069
|
'bmpvbnNzb24=']]
|
1050
1070
|
end
|
@@ -1286,7 +1306,8 @@ describe HTTY::Request do
|
|
1286
1306
|
describe '--' do
|
1287
1307
|
it 'should return a request with the header, plus the default ' +
|
1288
1308
|
'headers' do
|
1289
|
-
@new_request.headers.should == [['User-Agent', 'htty/
|
1309
|
+
@new_request.headers.should == [['User-Agent', 'htty/' +
|
1310
|
+
HTTY::VERSION],
|
1290
1311
|
['Authorization', 'Basic ' +
|
1291
1312
|
'bmpvbnNzb24='],
|
1292
1313
|
['foo', 'bar']]
|
@@ -1304,7 +1325,8 @@ describe HTTY::Request do
|
|
1304
1325
|
end
|
1305
1326
|
|
1306
1327
|
it 'should return a request with only the default headers' do
|
1307
|
-
@new_request.headers.should == [['User-Agent', 'htty/
|
1328
|
+
@new_request.headers.should == [['User-Agent', 'htty/' +
|
1329
|
+
HTTY::VERSION],
|
1308
1330
|
['Authorization', 'Basic ' +
|
1309
1331
|
'bmpvbnNzb2' +
|
1310
1332
|
'4=']]
|
@@ -1345,7 +1367,8 @@ describe HTTY::Request do
|
|
1345
1367
|
end
|
1346
1368
|
|
1347
1369
|
it 'should return a request with only the default headers' do
|
1348
|
-
@new_request.headers.should == [['User-Agent', 'htty/
|
1370
|
+
@new_request.headers.should == [['User-Agent', 'htty/' +
|
1371
|
+
HTTY::VERSION],
|
1349
1372
|
['Authorization', 'Basic ' +
|
1350
1373
|
'bmpvbnNzb2' +
|
1351
1374
|
'4=']]
|
@@ -1355,7 +1378,7 @@ describe HTTY::Request do
|
|
1355
1378
|
"header, plus the 'User-Agent' header if we do not exclude " +
|
1356
1379
|
"the 'Content-Length' header" do
|
1357
1380
|
@new_request.headers(true).should == [['User-Agent', 'htty/' +
|
1358
|
-
|
1381
|
+
HTTY::VERSION],
|
1359
1382
|
['Authorization', 'Basic ' +
|
1360
1383
|
'bmpvbn' +
|
1361
1384
|
'Nzb24='],
|
@@ -1377,7 +1400,8 @@ describe HTTY::Request do
|
|
1377
1400
|
end
|
1378
1401
|
|
1379
1402
|
it 'should return a request with only the default headers' do
|
1380
|
-
@new_request.headers.should == [['User-Agent', 'htty/
|
1403
|
+
@new_request.headers.should == [['User-Agent', 'htty/' +
|
1404
|
+
HTTY::VERSION],
|
1381
1405
|
['Authorization', 'Basic ' +
|
1382
1406
|
'bmpvbnNzb2' +
|
1383
1407
|
'4=']]
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 1
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
version: 1.1.
|
8
|
+
- 2
|
9
|
+
version: 1.1.2
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Nils Jonsson
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-09-
|
17
|
+
date: 2010-09-29 00:00:00 -05:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -174,6 +174,7 @@ files:
|
|
174
174
|
- spec/unit/htty/request_spec.rb
|
175
175
|
- spec/unit/htty/response_spec.rb
|
176
176
|
- spec/unit/htty/session_spec.rb
|
177
|
+
- spec/unit/htty_spec.rb
|
177
178
|
- bin/htty
|
178
179
|
has_rdoc: true
|
179
180
|
homepage: http://htty.github.com
|