sham_rack 1.3.4 → 1.3.5
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.
- checksums.yaml +15 -0
- data/Rakefile +4 -5
- data/lib/sham_rack/net_http.rb +1 -0
- data/lib/sham_rack/version.rb +1 -1
- data/spec/sham_rack_spec.rb +34 -6
- data/spec/spec_helper.rb +3 -3
- metadata +10 -20
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
MGUzNjMxMzE4N2M3NDA3ZWY2ZDQ5NWIzZDg2Mjg2ZjJhMmNiYWQxMA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
M2I4NDc5Njg5YTE0MzAwYjczYzZkYjA0ZWQ5OTExYjYxNTE5YzM5MQ==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
ZGJmZTUwOGIwMDhkY2Q4MTY3NmFkMWNkYjk2MmNiMWRjMGZmZDk2MWQ3YWFj
|
10
|
+
YzZlNzEwYzFhYmQ0M2NlM2MxYjViMzIwYTAwZWI4N2FlZjc3NjM3MjcwYzRi
|
11
|
+
MjJiYTEyMWRhOTNiY2IyYzVlOGIyOTg1ZmJjMDg0NmZmY2RmNWU=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
ZGQxNGYxNmFjNjViZTQzZThmOWQ5MWI4YTExZTg5N2YzMGJlMTcwZjViNTEy
|
14
|
+
ZDVhNGQ2Y2QyODcyZTk4YThmMmEwNzAxNzM2ZmU4NzIxM2U3Yzg5ZDIzMTY4
|
15
|
+
MTA2NmI1NDkyNTAyZmJjYzgzMjg5MGJkNmQyMGQwYTg0YWZlYzE=
|
data/Rakefile
CHANGED
@@ -1,13 +1,12 @@
|
|
1
1
|
require "rubygems"
|
2
2
|
require "rake"
|
3
3
|
|
4
|
-
require "spec/rake/spectask"
|
5
|
-
|
6
4
|
task "default" => "spec"
|
7
5
|
|
8
|
-
|
9
|
-
|
10
|
-
|
6
|
+
require "rspec/core/rake_task"
|
7
|
+
|
8
|
+
RSpec::Core::RakeTask.new do |t|
|
9
|
+
t.rspec_opts = ["--colour", "--format", "nested"]
|
11
10
|
end
|
12
11
|
|
13
12
|
require 'bundler'
|
data/lib/sham_rack/net_http.rb
CHANGED
@@ -74,6 +74,7 @@ module ShamRack
|
|
74
74
|
def build_response(rack_response)
|
75
75
|
status, headers, body = rack_response
|
76
76
|
code, message = status.to_s.split(" ", 2)
|
77
|
+
message ||= Rack::Utils::HTTP_STATUS_CODES[code.to_i]
|
77
78
|
response = Net::HTTPResponse.send(:response_class, code).new("Sham", code, message)
|
78
79
|
response.instance_variable_set(:@body, assemble_body(body))
|
79
80
|
response.instance_variable_set(:@read, true)
|
data/lib/sham_rack/version.rb
CHANGED
data/spec/sham_rack_spec.rb
CHANGED
@@ -148,28 +148,56 @@ describe ShamRack do
|
|
148
148
|
before(:each) do
|
149
149
|
ShamRack.at("www.greetings.com") do
|
150
150
|
[
|
151
|
-
"
|
151
|
+
"456 Foo Bar",
|
152
152
|
{ "Content-Type" => "text/plain", "X-Foo" => "bar" },
|
153
153
|
["BODY"]
|
154
154
|
]
|
155
155
|
end
|
156
|
-
@response = Net::HTTP.get_response(URI.parse("http://www.greetings.com/"))
|
157
156
|
end
|
158
157
|
|
158
|
+
let(:response) { Net::HTTP.get_response(URI.parse("http://www.greetings.com/")) }
|
159
|
+
|
159
160
|
it "has status returned by app" do
|
160
|
-
|
161
|
+
response.code.should == "456"
|
162
|
+
end
|
163
|
+
|
164
|
+
it "has status message returned by app" do
|
165
|
+
response.message.should == "Foo Bar"
|
161
166
|
end
|
162
167
|
|
163
168
|
it "has body returned by app" do
|
164
|
-
|
169
|
+
response.body.should == "BODY"
|
165
170
|
end
|
166
171
|
|
167
172
|
it "has Content-Type returned by app" do
|
168
|
-
|
173
|
+
response.content_type.should == "text/plain"
|
169
174
|
end
|
170
175
|
|
171
176
|
it "has other headers returned by app" do
|
172
|
-
|
177
|
+
response["x-foo"].should =="bar"
|
178
|
+
end
|
179
|
+
|
180
|
+
context "when the app returns a numeric status" do
|
181
|
+
|
182
|
+
before(:each) do
|
183
|
+
ShamRack.at("www.greetings.com") do
|
184
|
+
[
|
185
|
+
201,
|
186
|
+
{ "Content-Type" => "text/plain" },
|
187
|
+
["BODY"]
|
188
|
+
]
|
189
|
+
end
|
190
|
+
@response = Net::HTTP.get_response(URI.parse("http://www.greetings.com/"))
|
191
|
+
end
|
192
|
+
|
193
|
+
it "has status returned by app" do
|
194
|
+
response.code.should == "201"
|
195
|
+
end
|
196
|
+
|
197
|
+
it "derives a status message" do
|
198
|
+
response.message.should == "Created"
|
199
|
+
end
|
200
|
+
|
173
201
|
end
|
174
202
|
|
175
203
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,32 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sham_rack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
5
|
-
prerelease:
|
4
|
+
version: 1.3.5
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Mike Williams
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2013-03-25 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
|
-
|
16
|
-
|
17
|
-
none: false
|
14
|
+
prerelease: false
|
15
|
+
version_requirements: !ruby/object:Gem::Requirement
|
18
16
|
requirements:
|
19
17
|
- - ! '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
|
-
|
23
|
-
|
24
|
-
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
20
|
+
name: rack
|
21
|
+
requirement: !ruby/object:Gem::Requirement
|
26
22
|
requirements:
|
27
23
|
- - ! '>='
|
28
24
|
- !ruby/object:Gem::Version
|
29
25
|
version: '0'
|
26
|
+
type: :runtime
|
30
27
|
description: ShamRack plumbs Net::HTTP directly into Rack, for quick and easy HTTP
|
31
28
|
testing.
|
32
29
|
email: mdub@dogbiscuit.org
|
@@ -51,33 +48,26 @@ files:
|
|
51
48
|
- benchmark/hello_app.rb
|
52
49
|
homepage: http://github.com/mdub/sham_rack
|
53
50
|
licenses: []
|
51
|
+
metadata: {}
|
54
52
|
post_install_message:
|
55
53
|
rdoc_options: []
|
56
54
|
require_paths:
|
57
55
|
- lib
|
58
56
|
required_ruby_version: !ruby/object:Gem::Requirement
|
59
|
-
none: false
|
60
57
|
requirements:
|
61
58
|
- - ! '>='
|
62
59
|
- !ruby/object:Gem::Version
|
63
60
|
version: '0'
|
64
|
-
segments:
|
65
|
-
- 0
|
66
|
-
hash: -1856658297304903275
|
67
61
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
68
|
-
none: false
|
69
62
|
requirements:
|
70
63
|
- - ! '>='
|
71
64
|
- !ruby/object:Gem::Version
|
72
65
|
version: '0'
|
73
|
-
segments:
|
74
|
-
- 0
|
75
|
-
hash: -1856658297304903275
|
76
66
|
requirements: []
|
77
67
|
rubyforge_project: shamrack
|
78
|
-
rubygems_version:
|
68
|
+
rubygems_version: 2.0.0
|
79
69
|
signing_key:
|
80
|
-
specification_version:
|
70
|
+
specification_version: 4
|
81
71
|
summary: Net::HTTP-to-Rack plumbing
|
82
72
|
test_files:
|
83
73
|
- spec/sham_rack/stub_web_service_spec.rb
|