response_mate 0.1.14 → 0.2.0
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.
- data/.gitignore +3 -0
- data/.rspec +2 -0
- data/Gemfile +12 -0
- data/Gemfile.lock +78 -43
- data/Guardfile +16 -0
- data/LICENSE +1 -1
- data/Rakefile +1 -1
- data/bin/response_mate +9 -1
- data/lib/response_mate/cli.rb +5 -16
- data/lib/response_mate/commands/inspect.rb +15 -35
- data/lib/response_mate/commands/list.rb +36 -47
- data/lib/response_mate/commands/record.rb +3 -10
- data/lib/response_mate/connection.rb +13 -20
- data/lib/response_mate/core.rb +3 -3
- data/lib/response_mate/environment.rb +1 -1
- data/lib/response_mate/inspector.rb +7 -39
- data/lib/response_mate/manifest.rb +16 -28
- data/lib/response_mate/recorder.rb +9 -20
- data/lib/response_mate/request.rb +33 -0
- data/lib/response_mate/tape.rb +17 -5
- data/lib/response_mate/version.rb +1 -1
- data/lib/response_mate.rb +2 -1
- data/response_mate.gemspec +1 -6
- data/spec/lib/response_mate/commands/inspect_spec.rb +61 -0
- data/spec/lib/response_mate/commands/list_spec.rb +53 -0
- data/spec/lib/response_mate/commands/record_spec.rb +91 -0
- data/spec/lib/response_mate/core_spec.rb +0 -7
- data/spec/lib/response_mate/recorder_spec.rb +50 -80
- data/spec/source/environment.yml +1 -0
- data/spec/source/requests.yml +20 -0
- data/spec/source/responses/.gitkeep +0 -0
- data/spec/spec_helper.rb +3 -23
- data/spec/support/stubbed_requests.rb +45 -0
- metadata +75 -102
- checksums.yaml +0 -7
- data/lib/response_mate/oauth.rb +0 -17
data/spec/spec_helper.rb
CHANGED
@@ -2,33 +2,13 @@
|
|
2
2
|
|
3
3
|
$LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
|
4
4
|
require 'response_mate'
|
5
|
-
require '
|
6
|
-
require 'fakefs/spec_helpers'
|
5
|
+
require 'fakeweb'
|
7
6
|
require 'coveralls'
|
8
7
|
|
9
8
|
Coveralls.wear!
|
10
9
|
|
10
|
+
Dir["./spec/support/**/*.rb"].sort.each { |f| require f }
|
11
|
+
|
11
12
|
RSpec.configure do |c|
|
12
13
|
c.treat_symbols_as_metadata_keys_with_true_values = true
|
13
|
-
c.include FakeFS::SpecHelpers, fakefs: true
|
14
|
-
c.before(:all) { silence_output }
|
15
|
-
c.after(:all) { enable_output }
|
16
|
-
end
|
17
|
-
|
18
|
-
# Redirects stderr and stdout to /dev/null.
|
19
|
-
def silence_output
|
20
|
-
@orig_stderr = $stderr
|
21
|
-
@orig_stdout = $stdout
|
22
|
-
|
23
|
-
# redirect stderr and stdout to /dev/null
|
24
|
-
$stderr = File.new('/dev/null', 'w')
|
25
|
-
$stdout = File.new('/dev/null', 'w')
|
26
|
-
end
|
27
|
-
|
28
|
-
# Replace stdout and stderr so anything else is output correctly.
|
29
|
-
def enable_output
|
30
|
-
$stderr = @orig_stderr
|
31
|
-
$stdout = @orig_stdout
|
32
|
-
@orig_stderr = nil
|
33
|
-
@orig_stdout = nil
|
34
14
|
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
shared_context 'stubbed_requests' do
|
4
|
+
let(:fake_response_user_issues) {
|
5
|
+
{
|
6
|
+
status: 418,
|
7
|
+
headers: { 'x-issue-format' => 'tps report' },
|
8
|
+
body: 'This user definitely has issues',
|
9
|
+
}
|
10
|
+
}
|
11
|
+
|
12
|
+
let(:fake_response_user_friends) {
|
13
|
+
{
|
14
|
+
status: 418,
|
15
|
+
body: "User has friends"
|
16
|
+
}
|
17
|
+
}
|
18
|
+
|
19
|
+
let(:output_files) do
|
20
|
+
->{ Dir[ResponseMate.configuration.output_dir + '/*'] }
|
21
|
+
end
|
22
|
+
|
23
|
+
before do
|
24
|
+
ResponseMate.stub_chain(:configuration, :requests_manifest).
|
25
|
+
and_return File.expand_path('spec/source/requests.yml')
|
26
|
+
ResponseMate.stub_chain(:configuration, :environment).
|
27
|
+
and_return File.expand_path('spec/source/environment.yml')
|
28
|
+
ResponseMate.stub_chain(:configuration, :output_dir).
|
29
|
+
and_return File.expand_path('spec/source/responses/')
|
30
|
+
|
31
|
+
FakeWeb.register_uri(:get, 'http://www.someapi.com/user/42/issues', {
|
32
|
+
status: fake_response_user_issues[:status],
|
33
|
+
body: fake_response_user_issues[:body],
|
34
|
+
}.merge(fake_response_user_issues[:headers]))
|
35
|
+
|
36
|
+
FakeWeb.register_uri(:get, 'http://www.someapi.com/user/42/friends?' \
|
37
|
+
'since=childhood&trusty=yes',
|
38
|
+
status: fake_response_user_friends[:status],
|
39
|
+
body: fake_response_user_friends[:body])
|
40
|
+
end
|
41
|
+
|
42
|
+
before(:each) do
|
43
|
+
output_files.call.each { |file| File.delete(file) }
|
44
|
+
end
|
45
|
+
end
|
metadata
CHANGED
@@ -1,18 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: response_mate
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Dimitris Zorbas
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2014-
|
12
|
+
date: 2014-07-03 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: bundler
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
19
|
- - ~>
|
18
20
|
- !ruby/object:Gem::Version
|
@@ -20,6 +22,7 @@ dependencies:
|
|
20
22
|
type: :development
|
21
23
|
prerelease: false
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
23
26
|
requirements:
|
24
27
|
- - ~>
|
25
28
|
- !ruby/object:Gem::Version
|
@@ -27,229 +30,182 @@ dependencies:
|
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
31
|
name: rake
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
|
-
- - '>='
|
35
|
+
- - ! '>='
|
32
36
|
- !ruby/object:Gem::Version
|
33
37
|
version: '0'
|
34
38
|
type: :development
|
35
39
|
prerelease: false
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
37
42
|
requirements:
|
38
|
-
- - '>='
|
43
|
+
- - ! '>='
|
39
44
|
- !ruby/object:Gem::Version
|
40
45
|
version: '0'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: pry
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - '>='
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - '>='
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: pry-remote
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - '>='
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - '>='
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: pry-nav
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - '>='
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - '>='
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: rspec
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ~>
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '2.14'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - ~>
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '2.14'
|
97
46
|
- !ruby/object:Gem::Dependency
|
98
47
|
name: fakefs
|
99
48
|
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
100
50
|
requirements:
|
101
|
-
- - '>='
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - '>='
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '0'
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: rubocop
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - '>='
|
51
|
+
- - ! '>='
|
116
52
|
- !ruby/object:Gem::Version
|
117
53
|
version: '0'
|
118
54
|
type: :development
|
119
55
|
prerelease: false
|
120
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
121
58
|
requirements:
|
122
|
-
- - '>='
|
59
|
+
- - ! '>='
|
123
60
|
- !ruby/object:Gem::Version
|
124
61
|
version: '0'
|
125
62
|
- !ruby/object:Gem::Dependency
|
126
63
|
name: thor
|
127
64
|
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
128
66
|
requirements:
|
129
67
|
- - ~>
|
130
68
|
- !ruby/object:Gem::Version
|
131
|
-
version: 0.
|
69
|
+
version: '0.19'
|
132
70
|
type: :runtime
|
133
71
|
prerelease: false
|
134
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
135
74
|
requirements:
|
136
75
|
- - ~>
|
137
76
|
- !ruby/object:Gem::Version
|
138
|
-
version: 0.
|
77
|
+
version: '0.19'
|
139
78
|
- !ruby/object:Gem::Dependency
|
140
79
|
name: awesome_print
|
141
80
|
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
142
82
|
requirements:
|
143
|
-
- - '>='
|
83
|
+
- - ! '>='
|
144
84
|
- !ruby/object:Gem::Version
|
145
85
|
version: '0'
|
146
86
|
type: :runtime
|
147
87
|
prerelease: false
|
148
88
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
149
90
|
requirements:
|
150
|
-
- - '>='
|
91
|
+
- - ! '>='
|
151
92
|
- !ruby/object:Gem::Version
|
152
93
|
version: '0'
|
153
94
|
- !ruby/object:Gem::Dependency
|
154
95
|
name: activesupport
|
155
96
|
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
156
98
|
requirements:
|
157
|
-
- - '>='
|
99
|
+
- - ! '>='
|
158
100
|
- !ruby/object:Gem::Version
|
159
101
|
version: '0'
|
160
102
|
type: :runtime
|
161
103
|
prerelease: false
|
162
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
163
106
|
requirements:
|
164
|
-
- - '>='
|
107
|
+
- - ! '>='
|
165
108
|
- !ruby/object:Gem::Version
|
166
109
|
version: '0'
|
167
110
|
- !ruby/object:Gem::Dependency
|
168
111
|
name: colored
|
169
112
|
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
170
114
|
requirements:
|
171
|
-
- - '>='
|
115
|
+
- - ! '>='
|
172
116
|
- !ruby/object:Gem::Version
|
173
117
|
version: '0'
|
174
118
|
type: :runtime
|
175
119
|
prerelease: false
|
176
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
177
122
|
requirements:
|
178
|
-
- - '>='
|
123
|
+
- - ! '>='
|
179
124
|
- !ruby/object:Gem::Version
|
180
125
|
version: '0'
|
181
126
|
- !ruby/object:Gem::Dependency
|
182
127
|
name: faraday
|
183
128
|
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
184
130
|
requirements:
|
185
|
-
- - '>='
|
131
|
+
- - ! '>='
|
186
132
|
- !ruby/object:Gem::Version
|
187
133
|
version: '0'
|
188
134
|
type: :runtime
|
189
135
|
prerelease: false
|
190
136
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
191
138
|
requirements:
|
192
|
-
- - '>='
|
139
|
+
- - ! '>='
|
193
140
|
- !ruby/object:Gem::Version
|
194
141
|
version: '0'
|
195
142
|
- !ruby/object:Gem::Dependency
|
196
143
|
name: faraday_middleware
|
197
144
|
requirement: !ruby/object:Gem::Requirement
|
145
|
+
none: false
|
198
146
|
requirements:
|
199
|
-
- - '>='
|
147
|
+
- - ! '>='
|
200
148
|
- !ruby/object:Gem::Version
|
201
149
|
version: '0'
|
202
150
|
type: :runtime
|
203
151
|
prerelease: false
|
204
152
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
205
154
|
requirements:
|
206
|
-
- - '>='
|
155
|
+
- - ! '>='
|
207
156
|
- !ruby/object:Gem::Version
|
208
157
|
version: '0'
|
209
158
|
- !ruby/object:Gem::Dependency
|
210
159
|
name: addressable
|
211
160
|
requirement: !ruby/object:Gem::Requirement
|
161
|
+
none: false
|
212
162
|
requirements:
|
213
|
-
- - '>='
|
163
|
+
- - ! '>='
|
214
164
|
- !ruby/object:Gem::Version
|
215
165
|
version: '0'
|
216
166
|
type: :runtime
|
217
167
|
prerelease: false
|
218
168
|
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
219
170
|
requirements:
|
220
|
-
- - '>='
|
171
|
+
- - ! '>='
|
221
172
|
- !ruby/object:Gem::Version
|
222
173
|
version: '0'
|
223
174
|
- !ruby/object:Gem::Dependency
|
224
175
|
name: highline
|
225
176
|
requirement: !ruby/object:Gem::Requirement
|
177
|
+
none: false
|
226
178
|
requirements:
|
227
|
-
- - '>='
|
179
|
+
- - ! '>='
|
228
180
|
- !ruby/object:Gem::Version
|
229
181
|
version: '0'
|
230
182
|
type: :runtime
|
231
183
|
prerelease: false
|
232
184
|
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
233
186
|
requirements:
|
234
|
-
- - '>='
|
187
|
+
- - ! '>='
|
235
188
|
- !ruby/object:Gem::Version
|
236
189
|
version: '0'
|
237
190
|
- !ruby/object:Gem::Dependency
|
238
191
|
name: mustache
|
239
192
|
requirement: !ruby/object:Gem::Requirement
|
193
|
+
none: false
|
240
194
|
requirements:
|
241
|
-
- - '>='
|
195
|
+
- - ! '>='
|
242
196
|
- !ruby/object:Gem::Version
|
243
197
|
version: '0'
|
244
198
|
type: :runtime
|
245
199
|
prerelease: false
|
246
200
|
version_requirements: !ruby/object:Gem::Requirement
|
201
|
+
none: false
|
247
202
|
requirements:
|
248
|
-
- - '>='
|
203
|
+
- - ! '>='
|
249
204
|
- !ruby/object:Gem::Version
|
250
205
|
version: '0'
|
251
|
-
description:
|
252
|
-
|
206
|
+
description: ! ' Cli tool to make inspecting and recording HTTP requests fun again
|
207
|
+
|
208
|
+
'
|
253
209
|
email:
|
254
210
|
- zorbash@skroutz.gr
|
255
211
|
executables:
|
@@ -258,9 +214,11 @@ extensions: []
|
|
258
214
|
extra_rdoc_files: []
|
259
215
|
files:
|
260
216
|
- .gitignore
|
217
|
+
- .rspec
|
261
218
|
- .travis.yml
|
262
219
|
- Gemfile
|
263
220
|
- Gemfile.lock
|
221
|
+
- Guardfile
|
264
222
|
- LICENSE
|
265
223
|
- README.md
|
266
224
|
- Rakefile
|
@@ -287,7 +245,6 @@ files:
|
|
287
245
|
- lib/response_mate/inspector.rb
|
288
246
|
- lib/response_mate/manifest.rb
|
289
247
|
- lib/response_mate/manifest_parser.rb
|
290
|
-
- lib/response_mate/oauth.rb
|
291
248
|
- lib/response_mate/recorder.rb
|
292
249
|
- lib/response_mate/request.rb
|
293
250
|
- lib/response_mate/tape.rb
|
@@ -297,38 +254,54 @@ files:
|
|
297
254
|
- roadmap.md
|
298
255
|
- spec/fixtures/two_keys.yml.erb
|
299
256
|
- spec/lib/response_mate/cli_spec.rb
|
257
|
+
- spec/lib/response_mate/commands/inspect_spec.rb
|
258
|
+
- spec/lib/response_mate/commands/list_spec.rb
|
259
|
+
- spec/lib/response_mate/commands/record_spec.rb
|
300
260
|
- spec/lib/response_mate/core_spec.rb
|
301
261
|
- spec/lib/response_mate/recorder_spec.rb
|
302
262
|
- spec/lib/response_mate_spec.rb
|
263
|
+
- spec/source/environment.yml
|
264
|
+
- spec/source/requests.yml
|
265
|
+
- spec/source/responses/.gitkeep
|
303
266
|
- spec/spec_helper.rb
|
267
|
+
- spec/support/stubbed_requests.rb
|
304
268
|
homepage: https://github.com/Zorbash/response_mate
|
305
269
|
licenses:
|
306
270
|
- MIT
|
307
|
-
metadata: {}
|
308
271
|
post_install_message:
|
309
272
|
rdoc_options: []
|
310
273
|
require_paths:
|
311
274
|
- lib
|
312
275
|
required_ruby_version: !ruby/object:Gem::Requirement
|
276
|
+
none: false
|
313
277
|
requirements:
|
314
|
-
- - '>='
|
278
|
+
- - ! '>='
|
315
279
|
- !ruby/object:Gem::Version
|
316
280
|
version: '0'
|
317
281
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
282
|
+
none: false
|
318
283
|
requirements:
|
319
|
-
- - '>='
|
284
|
+
- - ! '>='
|
320
285
|
- !ruby/object:Gem::Version
|
321
286
|
version: '0'
|
322
287
|
requirements: []
|
323
288
|
rubyforge_project:
|
324
|
-
rubygems_version:
|
289
|
+
rubygems_version: 1.8.23.2
|
325
290
|
signing_key:
|
326
|
-
specification_version:
|
291
|
+
specification_version: 3
|
327
292
|
summary: A cli tool for browsing and recording api requests with ease
|
328
293
|
test_files:
|
329
294
|
- spec/fixtures/two_keys.yml.erb
|
330
295
|
- spec/lib/response_mate/cli_spec.rb
|
296
|
+
- spec/lib/response_mate/commands/inspect_spec.rb
|
297
|
+
- spec/lib/response_mate/commands/list_spec.rb
|
298
|
+
- spec/lib/response_mate/commands/record_spec.rb
|
331
299
|
- spec/lib/response_mate/core_spec.rb
|
332
300
|
- spec/lib/response_mate/recorder_spec.rb
|
333
301
|
- spec/lib/response_mate_spec.rb
|
302
|
+
- spec/source/environment.yml
|
303
|
+
- spec/source/requests.yml
|
304
|
+
- spec/source/responses/.gitkeep
|
334
305
|
- spec/spec_helper.rb
|
306
|
+
- spec/support/stubbed_requests.rb
|
307
|
+
has_rdoc:
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: c97cc693a5142b6fa8af5e6d530d1e0b1d85b28d
|
4
|
-
data.tar.gz: a7fa0ae25579316cdf6599a823380b65527d5d6a
|
5
|
-
SHA512:
|
6
|
-
metadata.gz: 78913a536deaffed90a0b2e48d99ccad337e38f7807d10df12865f035ec4174be0814baedf049fffef2d97566cc58d18769269086a61d0e74e0182c2eea107cd
|
7
|
-
data.tar.gz: 7d208bd286aeb22b3be1692c50283c45befff3fb1fd08726b0366e369208fbbeceb3992a0daaffe20f6e41780c96200cf41063ebb42a3173c8c099bc56b1e832
|
data/lib/response_mate/oauth.rb
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
# coding: utf-8
|
2
|
-
|
3
|
-
module ResponseMate
|
4
|
-
class Oauth
|
5
|
-
attr_accessor :manifest
|
6
|
-
|
7
|
-
def initialize
|
8
|
-
@manifest = YAML.load_file(ResponseMate.configuration.oauth_manifest)
|
9
|
-
rescue Errno::ENOENT
|
10
|
-
@manifest = nil
|
11
|
-
end
|
12
|
-
|
13
|
-
def token
|
14
|
-
manifest['token']
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|