redrock 0.1.1 → 0.1.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.
@@ -66,10 +66,20 @@ error.
66
66
  Raising exceptions or timing out won't work as expected, because the exceptions
67
67
  will be handled in the RedRock server, not the application under test.
68
68
 
69
+ == Development
70
+
71
+ After cloning the project:
72
+
73
+ gem install bundler # if not already installed
74
+ rake gemspec # bootstrap gemspec for bundler
75
+ bundle
76
+ bundle exec rake
77
+
69
78
  == TODO
70
79
 
71
80
  * Better documentation!
72
81
  * Refactor the server, which is currently a small ball of mud.
82
+ * Support latest version of WebMock
73
83
 
74
84
  == Why "RedRock"?
75
85
 
@@ -1,3 +1,7 @@
1
+ = 1.1.2
2
+
3
+ * Explicitly require webmock 1.3
4
+
1
5
  = 1.1.1
2
6
 
3
7
  * Correct gem dependencies
@@ -4,6 +4,12 @@ require File.expand_path("../spec_helper", __FILE__)
4
4
  # isn't happening locally.
5
5
 
6
6
  describe RedRock do
7
+ before :all do
8
+ %w(http_proxy HTTP_PROXY).each do |var|
9
+ ENV[var] = nil
10
+ end
11
+ end
12
+
7
13
  after do
8
14
  RedRock.stop
9
15
  end
@@ -217,7 +223,23 @@ describe RedRock do
217
223
  end
218
224
  end
219
225
 
220
- context "matching query params using a hash" do
226
+ context "matching single-value query params using a hash" do
227
+ before do
228
+ stub_http_request(:get, "localhost:4242").with(:query => {"a" => "b"})
229
+ end
230
+
231
+ it "accepts matching requests" do
232
+ curl = Curl::Easy.http_get "http://localhost:4242?a=b"
233
+ curl.response_code.should == 200
234
+ end
235
+
236
+ it "rejects non-matching requests" do
237
+ curl = Curl::Easy.http_get "http://localhost:4242?a=d"
238
+ curl.response_code.should == 500
239
+ end
240
+ end
241
+
242
+ context "matching multi-value query params using a hash" do
221
243
  before do
222
244
  stub_http_request(:get, "localhost:4242").with(:query => {"a" => ["b", "c"]})
223
245
  end
@@ -255,9 +277,9 @@ describe RedRock do
255
277
  end
256
278
 
257
279
  it "supports specification of a response body as an IO object" do
258
- stub_request(:any, "localhost:4242").to_return(:body => StringIO.new("chunky bacon"), :status => 200)
280
+ stub_request(:any, "localhost:4242").to_return(:body => File.new(File.expand_path("../response.txt", __FILE__)), :status => 200)
259
281
  curl = Curl::Easy.http_get "http://localhost:4242"
260
- curl.body_str.should == "chunky bacon"
282
+ curl.body_str.should == "chunky bacon\n"
261
283
  end
262
284
 
263
285
  context "returning a custom status message" do
@@ -0,0 +1 @@
1
+ chunky bacon
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redrock
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
4
+ hash: 31
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 1
10
- version: 0.1.1
9
+ - 2
10
+ version: 0.1.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Kerry Buckley
@@ -15,13 +15,11 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-08-20 00:00:00 +01:00
18
+ date: 2010-12-28 00:00:00 +00:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: webmock
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
22
+ version_requirements: &id001 !ruby/object:Gem::Requirement
25
23
  none: false
26
24
  requirements:
27
25
  - - ">="
@@ -30,12 +28,12 @@ dependencies:
30
28
  segments:
31
29
  - 0
32
30
  version: "0"
31
+ requirement: *id001
33
32
  type: :runtime
34
- version_requirements: *id001
35
- - !ruby/object:Gem::Dependency
36
- name: thin
33
+ name: json
37
34
  prerelease: false
38
- requirement: &id002 !ruby/object:Gem::Requirement
35
+ - !ruby/object:Gem::Dependency
36
+ version_requirements: &id002 !ruby/object:Gem::Requirement
39
37
  none: false
40
38
  requirements:
41
39
  - - ">="
@@ -44,12 +42,28 @@ dependencies:
44
42
  segments:
45
43
  - 0
46
44
  version: "0"
45
+ requirement: *id002
47
46
  type: :runtime
48
- version_requirements: *id002
47
+ name: thin
48
+ prerelease: false
49
49
  - !ruby/object:Gem::Dependency
50
- name: rspec
50
+ version_requirements: &id003 !ruby/object:Gem::Requirement
51
+ none: false
52
+ requirements:
53
+ - - ~>
54
+ - !ruby/object:Gem::Version
55
+ hash: 27
56
+ segments:
57
+ - 1
58
+ - 3
59
+ - 0
60
+ version: 1.3.0
61
+ requirement: *id003
62
+ type: :runtime
63
+ name: webmock
51
64
  prerelease: false
52
- requirement: &id003 !ruby/object:Gem::Requirement
65
+ - !ruby/object:Gem::Dependency
66
+ version_requirements: &id004 !ruby/object:Gem::Requirement
53
67
  none: false
54
68
  requirements:
55
69
  - - ">="
@@ -58,12 +72,12 @@ dependencies:
58
72
  segments:
59
73
  - 0
60
74
  version: "0"
75
+ requirement: *id004
61
76
  type: :development
62
- version_requirements: *id003
63
- - !ruby/object:Gem::Dependency
64
77
  name: curb
65
78
  prerelease: false
66
- requirement: &id004 !ruby/object:Gem::Requirement
79
+ - !ruby/object:Gem::Dependency
80
+ version_requirements: &id005 !ruby/object:Gem::Requirement
67
81
  none: false
68
82
  requirements:
69
83
  - - ">="
@@ -72,24 +86,43 @@ dependencies:
72
86
  segments:
73
87
  - 0
74
88
  version: "0"
89
+ requirement: *id005
90
+ type: :development
91
+ name: rake
92
+ prerelease: false
93
+ - !ruby/object:Gem::Dependency
94
+ version_requirements: &id006 !ruby/object:Gem::Requirement
95
+ none: false
96
+ requirements:
97
+ - - ~>
98
+ - !ruby/object:Gem::Version
99
+ hash: 27
100
+ segments:
101
+ - 1
102
+ - 3
103
+ - 0
104
+ version: 1.3.0
105
+ requirement: *id006
75
106
  type: :development
76
- version_requirements: *id004
77
- description:
107
+ name: rspec
108
+ prerelease: false
109
+ description: Use WebMock to test applications that aren't running in the same process as the tests
78
110
  email: kerryjbuckley@gmail.com
79
111
  executables: []
80
112
 
81
113
  extensions: []
82
114
 
83
115
  extra_rdoc_files:
116
+ - history.rdoc
84
117
  - README.rdoc
85
- - history.txt
86
118
  files:
87
119
  - spec/redrock_spec.rb
120
+ - spec/response.txt
88
121
  - spec/spec_helper.rb
89
122
  - lib/redrock/server.rb
90
123
  - lib/redrock.rb
124
+ - history.rdoc
91
125
  - README.rdoc
92
- - history.txt
93
126
  has_rdoc: true
94
127
  homepage: http://github.com/kerryb/redrock
95
128
  licenses: []