http_stub 0.23.1 → 0.24.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.
- checksums.yaml +4 -4
- data/lib/http_stub.rb +4 -3
- data/lib/http_stub/configurer/dsl/server.rb +9 -0
- data/lib/http_stub/configurer/server/command.rb +1 -1
- data/lib/http_stub/configurer/server/command_processor.rb +2 -2
- data/lib/http_stub/rake/server_tasks.rb +11 -7
- data/lib/http_stub/server/application/application.rb +115 -0
- data/lib/http_stub/server/application/cross_origin_support.rb +34 -0
- data/lib/http_stub/server/application/response_pipeline.rb +20 -0
- data/lib/http_stub/server/application/text_formatting_support.rb +21 -0
- data/lib/http_stub/server/public/jquery-2.2.4.min.js +4 -0
- data/lib/http_stub/server/stub/response/file.rb +2 -2
- data/lib/http_stub/server/stub/response/text.rb +2 -2
- data/lib/http_stub/server/views/_activate_scenario.haml +1 -1
- data/lib/http_stub/server/views/layout.haml +1 -1
- data/lib/http_stub/version.rb +1 -1
- data/spec/acceptance/cross_origin_support_spec.rb +127 -0
- data/spec/acceptance/stub_match_spec.rb +0 -1
- data/spec/lib/http_stub/configurer/dsl/stub_builder_spec.rb +0 -4
- data/spec/lib/http_stub/configurer/request/stub_spec.rb +0 -7
- data/spec/lib/http_stub/configurer/server/command_processor_integration_spec.rb +2 -1
- data/spec/lib/http_stub/rake/server_tasks_smoke_spec.rb +7 -4
- data/spec/lib/http_stub/server/{application_integration_spec.rb → application/application_integration_spec.rb} +1 -1
- data/spec/lib/http_stub/server/{application_spec.rb → application/application_spec.rb} +8 -4
- data/spec/lib/http_stub/server/application/cross_origin_support_spec.rb +114 -0
- data/spec/lib/http_stub/server/{response_pipeline_spec.rb → application/response_pipeline_spec.rb} +5 -5
- data/spec/lib/http_stub/server/{application_helpers_spec.rb → application/text_formatting_support_spec.rb} +4 -4
- data/spec/lib/http_stub/server/registry_spec.rb +0 -5
- data/spec/spec_helper.rb +5 -14
- data/spec/support/browser_integration.rb +9 -0
- data/spec/support/cross_origin_server/application.rb +5 -0
- data/spec/support/cross_origin_server/index_page.rb +26 -0
- data/spec/support/cross_origin_server/integration.rb +24 -0
- data/spec/support/cross_origin_server/public/index.html +33 -0
- data/spec/support/server_integration.rb +9 -3
- metadata +56 -41
- data/lib/http_stub/server/application.rb +0 -110
- data/lib/http_stub/server/application_helpers.rb +0 -19
- data/lib/http_stub/server/public/jquery-2.2.1.min.js +0 -4
- data/lib/http_stub/server/response_pipeline.rb +0 -18
@@ -0,0 +1,24 @@
|
|
1
|
+
shared_context "cross origin server integration" do
|
2
|
+
|
3
|
+
before(:context) do
|
4
|
+
@cross_origin_server_pid = Process.spawn("ruby #{File.dirname(__FILE__)}/application.rb")
|
5
|
+
::Wait.until!(description: "cross origin server started") do
|
6
|
+
Net::HTTP.get_response(cross_origin_server_host, "/", cross_origin_server_port)
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
after(:context) { Process.kill(9, @cross_origin_server_pid) }
|
11
|
+
|
12
|
+
def cross_origin_server_host
|
13
|
+
"localhost"
|
14
|
+
end
|
15
|
+
|
16
|
+
def cross_origin_server_port
|
17
|
+
8005
|
18
|
+
end
|
19
|
+
|
20
|
+
def cross_origin_server_uri
|
21
|
+
"http://#{cross_origin_server_host}:#{cross_origin_server_port}"
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
<html>
|
2
|
+
<head>
|
3
|
+
<script type="application/javascript">
|
4
|
+
|
5
|
+
function activateScenario() {
|
6
|
+
var request = new XMLHttpRequest();
|
7
|
+
request.open("POST", "http://localhost:8001/http_stub/scenarios/activate", false);
|
8
|
+
request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
|
9
|
+
|
10
|
+
var result = "Failed";
|
11
|
+
try {
|
12
|
+
request.send(encodeURI("name=" + document.getElementById("scenario_name").value));
|
13
|
+
if (request.status == 200) {
|
14
|
+
result = "Succeeded";
|
15
|
+
}
|
16
|
+
} catch(error) {
|
17
|
+
//Intentionally blank
|
18
|
+
}
|
19
|
+
|
20
|
+
document.getElementById("response_indicator").innerHTML = result;
|
21
|
+
}
|
22
|
+
|
23
|
+
</script>
|
24
|
+
</head>
|
25
|
+
<body>
|
26
|
+
<label for="scenario_name">Scenario Name: </label><input id="scenario_name" type="text" />
|
27
|
+
<br/>
|
28
|
+
<button id="activate_scenario" onclick="activateScenario()">Activate</button>
|
29
|
+
<br/>
|
30
|
+
<hr/>
|
31
|
+
<label>Cross-Origin Request Response:</label><span id="response_indicator"> </span>
|
32
|
+
</body>
|
33
|
+
</html>
|
@@ -3,11 +3,17 @@ shared_context "server integration" do
|
|
3
3
|
include HtmlHelpers
|
4
4
|
|
5
5
|
before(:context) do
|
6
|
-
@
|
7
|
-
::Wait.until!(description: "http stub server
|
6
|
+
@server_pid = Process.spawn("rake #{server_name}:start:foreground --trace")
|
7
|
+
::Wait.until!(description: "http stub server #{server_name} started") do
|
8
|
+
Net::HTTP.get_response(server_host, "/", server_port)
|
9
|
+
end
|
8
10
|
end
|
9
11
|
|
10
|
-
after(:context) { Process.kill(9, @
|
12
|
+
after(:context) { Process.kill(9, @server_pid) }
|
13
|
+
|
14
|
+
def server_name
|
15
|
+
"example_server"
|
16
|
+
end
|
11
17
|
|
12
18
|
def server_host
|
13
19
|
"localhost"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: http_stub
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.24.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- dueckes
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2016-
|
15
|
+
date: 2016-07-15 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: rake
|
@@ -146,56 +146,56 @@ dependencies:
|
|
146
146
|
requirements:
|
147
147
|
- - "~>"
|
148
148
|
- !ruby/object:Gem::Version
|
149
|
-
version: '0.
|
149
|
+
version: '0.41'
|
150
150
|
type: :development
|
151
151
|
prerelease: false
|
152
152
|
version_requirements: !ruby/object:Gem::Requirement
|
153
153
|
requirements:
|
154
154
|
- - "~>"
|
155
155
|
- !ruby/object:Gem::Version
|
156
|
-
version: '0.
|
156
|
+
version: '0.41'
|
157
157
|
- !ruby/object:Gem::Dependency
|
158
158
|
name: rspec
|
159
159
|
requirement: !ruby/object:Gem::Requirement
|
160
160
|
requirements:
|
161
161
|
- - "~>"
|
162
162
|
- !ruby/object:Gem::Version
|
163
|
-
version: '3.
|
163
|
+
version: '3.5'
|
164
164
|
type: :development
|
165
165
|
prerelease: false
|
166
166
|
version_requirements: !ruby/object:Gem::Requirement
|
167
167
|
requirements:
|
168
168
|
- - "~>"
|
169
169
|
- !ruby/object:Gem::Version
|
170
|
-
version: '3.
|
170
|
+
version: '3.5'
|
171
171
|
- !ruby/object:Gem::Dependency
|
172
|
-
name:
|
172
|
+
name: nokogiri
|
173
173
|
requirement: !ruby/object:Gem::Requirement
|
174
174
|
requirements:
|
175
175
|
- - "~>"
|
176
176
|
- !ruby/object:Gem::Version
|
177
|
-
version: '1.
|
177
|
+
version: '1.6'
|
178
178
|
type: :development
|
179
179
|
prerelease: false
|
180
180
|
version_requirements: !ruby/object:Gem::Requirement
|
181
181
|
requirements:
|
182
182
|
- - "~>"
|
183
183
|
- !ruby/object:Gem::Version
|
184
|
-
version: '1.
|
184
|
+
version: '1.6'
|
185
185
|
- !ruby/object:Gem::Dependency
|
186
|
-
name:
|
186
|
+
name: httparty
|
187
187
|
requirement: !ruby/object:Gem::Requirement
|
188
188
|
requirements:
|
189
189
|
- - "~>"
|
190
190
|
- !ruby/object:Gem::Version
|
191
|
-
version: '0.
|
191
|
+
version: '0.13'
|
192
192
|
type: :development
|
193
193
|
prerelease: false
|
194
194
|
version_requirements: !ruby/object:Gem::Requirement
|
195
195
|
requirements:
|
196
196
|
- - "~>"
|
197
197
|
- !ruby/object:Gem::Version
|
198
|
-
version: '0.
|
198
|
+
version: '0.13'
|
199
199
|
- !ruby/object:Gem::Dependency
|
200
200
|
name: json
|
201
201
|
requirement: !ruby/object:Gem::Requirement
|
@@ -211,89 +211,89 @@ dependencies:
|
|
211
211
|
- !ruby/object:Gem::Version
|
212
212
|
version: '1.8'
|
213
213
|
- !ruby/object:Gem::Dependency
|
214
|
-
name:
|
214
|
+
name: rack-test
|
215
215
|
requirement: !ruby/object:Gem::Requirement
|
216
216
|
requirements:
|
217
217
|
- - "~>"
|
218
218
|
- !ruby/object:Gem::Version
|
219
|
-
version: '0.
|
219
|
+
version: '0.6'
|
220
220
|
type: :development
|
221
221
|
prerelease: false
|
222
222
|
version_requirements: !ruby/object:Gem::Requirement
|
223
223
|
requirements:
|
224
224
|
- - "~>"
|
225
225
|
- !ruby/object:Gem::Version
|
226
|
-
version: '0.
|
226
|
+
version: '0.6'
|
227
227
|
- !ruby/object:Gem::Dependency
|
228
|
-
name:
|
228
|
+
name: wait_until
|
229
229
|
requirement: !ruby/object:Gem::Requirement
|
230
230
|
requirements:
|
231
231
|
- - "~>"
|
232
232
|
- !ruby/object:Gem::Version
|
233
|
-
version: '
|
233
|
+
version: '0.3'
|
234
234
|
type: :development
|
235
235
|
prerelease: false
|
236
236
|
version_requirements: !ruby/object:Gem::Requirement
|
237
237
|
requirements:
|
238
238
|
- - "~>"
|
239
239
|
- !ruby/object:Gem::Version
|
240
|
-
version: '
|
240
|
+
version: '0.3'
|
241
241
|
- !ruby/object:Gem::Dependency
|
242
|
-
name:
|
242
|
+
name: selenium-webdriver
|
243
243
|
requirement: !ruby/object:Gem::Requirement
|
244
244
|
requirements:
|
245
245
|
- - "~>"
|
246
246
|
- !ruby/object:Gem::Version
|
247
|
-
version: '
|
247
|
+
version: '2.53'
|
248
248
|
type: :development
|
249
249
|
prerelease: false
|
250
250
|
version_requirements: !ruby/object:Gem::Requirement
|
251
251
|
requirements:
|
252
252
|
- - "~>"
|
253
253
|
- !ruby/object:Gem::Version
|
254
|
-
version: '
|
254
|
+
version: '2.53'
|
255
255
|
- !ruby/object:Gem::Dependency
|
256
256
|
name: simplecov
|
257
257
|
requirement: !ruby/object:Gem::Requirement
|
258
258
|
requirements:
|
259
259
|
- - "~>"
|
260
260
|
- !ruby/object:Gem::Version
|
261
|
-
version: '0.
|
261
|
+
version: '0.12'
|
262
262
|
type: :development
|
263
263
|
prerelease: false
|
264
264
|
version_requirements: !ruby/object:Gem::Requirement
|
265
265
|
requirements:
|
266
266
|
- - "~>"
|
267
267
|
- !ruby/object:Gem::Version
|
268
|
-
version: '0.
|
268
|
+
version: '0.12'
|
269
269
|
- !ruby/object:Gem::Dependency
|
270
|
-
name:
|
270
|
+
name: codeclimate-test-reporter
|
271
271
|
requirement: !ruby/object:Gem::Requirement
|
272
272
|
requirements:
|
273
273
|
- - "~>"
|
274
274
|
- !ruby/object:Gem::Version
|
275
|
-
version: '
|
275
|
+
version: '0.6'
|
276
276
|
type: :development
|
277
277
|
prerelease: false
|
278
278
|
version_requirements: !ruby/object:Gem::Requirement
|
279
279
|
requirements:
|
280
280
|
- - "~>"
|
281
281
|
- !ruby/object:Gem::Version
|
282
|
-
version: '
|
282
|
+
version: '0.6'
|
283
283
|
- !ruby/object:Gem::Dependency
|
284
|
-
name:
|
284
|
+
name: travis-lint
|
285
285
|
requirement: !ruby/object:Gem::Requirement
|
286
286
|
requirements:
|
287
287
|
- - "~>"
|
288
288
|
- !ruby/object:Gem::Version
|
289
|
-
version: '0
|
289
|
+
version: '2.0'
|
290
290
|
type: :development
|
291
291
|
prerelease: false
|
292
292
|
version_requirements: !ruby/object:Gem::Requirement
|
293
293
|
requirements:
|
294
294
|
- - "~>"
|
295
295
|
- !ruby/object:Gem::Version
|
296
|
-
version: '0
|
296
|
+
version: '2.0'
|
297
297
|
description: fakeweb for a HTTP server, informing it to stub / fake responses
|
298
298
|
email: matthew.ueckerman@myob.com
|
299
299
|
executables: []
|
@@ -336,18 +336,19 @@ files:
|
|
336
336
|
- "./lib/http_stub/rake/server_daemon_tasks.rb"
|
337
337
|
- "./lib/http_stub/rake/server_tasks.rb"
|
338
338
|
- "./lib/http_stub/rake/task_generators.rb"
|
339
|
-
- "./lib/http_stub/server/application.rb"
|
340
|
-
- "./lib/http_stub/server/
|
339
|
+
- "./lib/http_stub/server/application/application.rb"
|
340
|
+
- "./lib/http_stub/server/application/cross_origin_support.rb"
|
341
|
+
- "./lib/http_stub/server/application/response_pipeline.rb"
|
342
|
+
- "./lib/http_stub/server/application/text_formatting_support.rb"
|
341
343
|
- "./lib/http_stub/server/daemon.rb"
|
342
344
|
- "./lib/http_stub/server/public/favicon.ico"
|
343
|
-
- "./lib/http_stub/server/public/jquery-2.2.
|
345
|
+
- "./lib/http_stub/server/public/jquery-2.2.4.min.js"
|
344
346
|
- "./lib/http_stub/server/registry.rb"
|
345
347
|
- "./lib/http_stub/server/request.rb"
|
346
348
|
- "./lib/http_stub/server/request/headers.rb"
|
347
349
|
- "./lib/http_stub/server/request/parameters.rb"
|
348
350
|
- "./lib/http_stub/server/request/request.rb"
|
349
351
|
- "./lib/http_stub/server/response.rb"
|
350
|
-
- "./lib/http_stub/server/response_pipeline.rb"
|
351
352
|
- "./lib/http_stub/server/scenario.rb"
|
352
353
|
- "./lib/http_stub/server/scenario/activator.rb"
|
353
354
|
- "./lib/http_stub/server/scenario/controller.rb"
|
@@ -407,6 +408,7 @@ files:
|
|
407
408
|
- "./spec/acceptance/activator_spec.rb"
|
408
409
|
- "./spec/acceptance/configurer_initialization_spec.rb"
|
409
410
|
- "./spec/acceptance/configurer_part_spec.rb"
|
411
|
+
- "./spec/acceptance/cross_origin_support_spec.rb"
|
410
412
|
- "./spec/acceptance/endpoint_template_spec.rb"
|
411
413
|
- "./spec/acceptance/request_reference_spec.rb"
|
412
414
|
- "./spec/acceptance/scenario_spec.rb"
|
@@ -450,9 +452,11 @@ files:
|
|
450
452
|
- "./spec/lib/http_stub/rake/server_daemon_tasks_smoke_spec.rb"
|
451
453
|
- "./spec/lib/http_stub/rake/server_tasks_smoke_spec.rb"
|
452
454
|
- "./spec/lib/http_stub/rake/server_tasks_spec.rb"
|
453
|
-
- "./spec/lib/http_stub/server/
|
454
|
-
- "./spec/lib/http_stub/server/
|
455
|
-
- "./spec/lib/http_stub/server/
|
455
|
+
- "./spec/lib/http_stub/server/application/application_integration_spec.rb"
|
456
|
+
- "./spec/lib/http_stub/server/application/application_spec.rb"
|
457
|
+
- "./spec/lib/http_stub/server/application/cross_origin_support_spec.rb"
|
458
|
+
- "./spec/lib/http_stub/server/application/response_pipeline_spec.rb"
|
459
|
+
- "./spec/lib/http_stub/server/application/text_formatting_support_spec.rb"
|
456
460
|
- "./spec/lib/http_stub/server/daemon_integration_spec.rb"
|
457
461
|
- "./spec/lib/http_stub/server/daemon_spec.rb"
|
458
462
|
- "./spec/lib/http_stub/server/payload_file_consolidator_spec.rb"
|
@@ -461,7 +465,6 @@ files:
|
|
461
465
|
- "./spec/lib/http_stub/server/request/parameters_spec.rb"
|
462
466
|
- "./spec/lib/http_stub/server/request/request_spec.rb"
|
463
467
|
- "./spec/lib/http_stub/server/request_spec.rb"
|
464
|
-
- "./spec/lib/http_stub/server/response_pipeline_spec.rb"
|
465
468
|
- "./spec/lib/http_stub/server/response_spec.rb"
|
466
469
|
- "./spec/lib/http_stub/server/scenario/activator_spec.rb"
|
467
470
|
- "./spec/lib/http_stub/server/scenario/controller_spec.rb"
|
@@ -504,7 +507,12 @@ files:
|
|
504
507
|
- "./spec/resources/sample.pdf"
|
505
508
|
- "./spec/resources/sample.txt"
|
506
509
|
- "./spec/spec_helper.rb"
|
510
|
+
- "./spec/support/browser_integration.rb"
|
507
511
|
- "./spec/support/configurer_integration.rb"
|
512
|
+
- "./spec/support/cross_origin_server/application.rb"
|
513
|
+
- "./spec/support/cross_origin_server/index_page.rb"
|
514
|
+
- "./spec/support/cross_origin_server/integration.rb"
|
515
|
+
- "./spec/support/cross_origin_server/public/index.html"
|
508
516
|
- "./spec/support/html_helpers.rb"
|
509
517
|
- "./spec/support/http_stub/empty_configurer.rb"
|
510
518
|
- "./spec/support/http_stub/scenario_fixture.rb"
|
@@ -541,6 +549,7 @@ test_files:
|
|
541
549
|
- "./spec/acceptance/activator_spec.rb"
|
542
550
|
- "./spec/acceptance/configurer_initialization_spec.rb"
|
543
551
|
- "./spec/acceptance/configurer_part_spec.rb"
|
552
|
+
- "./spec/acceptance/cross_origin_support_spec.rb"
|
544
553
|
- "./spec/acceptance/endpoint_template_spec.rb"
|
545
554
|
- "./spec/acceptance/request_reference_spec.rb"
|
546
555
|
- "./spec/acceptance/scenario_spec.rb"
|
@@ -584,9 +593,11 @@ test_files:
|
|
584
593
|
- "./spec/lib/http_stub/rake/server_daemon_tasks_smoke_spec.rb"
|
585
594
|
- "./spec/lib/http_stub/rake/server_tasks_smoke_spec.rb"
|
586
595
|
- "./spec/lib/http_stub/rake/server_tasks_spec.rb"
|
587
|
-
- "./spec/lib/http_stub/server/
|
588
|
-
- "./spec/lib/http_stub/server/
|
589
|
-
- "./spec/lib/http_stub/server/
|
596
|
+
- "./spec/lib/http_stub/server/application/application_integration_spec.rb"
|
597
|
+
- "./spec/lib/http_stub/server/application/application_spec.rb"
|
598
|
+
- "./spec/lib/http_stub/server/application/cross_origin_support_spec.rb"
|
599
|
+
- "./spec/lib/http_stub/server/application/response_pipeline_spec.rb"
|
600
|
+
- "./spec/lib/http_stub/server/application/text_formatting_support_spec.rb"
|
590
601
|
- "./spec/lib/http_stub/server/daemon_integration_spec.rb"
|
591
602
|
- "./spec/lib/http_stub/server/daemon_spec.rb"
|
592
603
|
- "./spec/lib/http_stub/server/payload_file_consolidator_spec.rb"
|
@@ -595,7 +606,6 @@ test_files:
|
|
595
606
|
- "./spec/lib/http_stub/server/request/parameters_spec.rb"
|
596
607
|
- "./spec/lib/http_stub/server/request/request_spec.rb"
|
597
608
|
- "./spec/lib/http_stub/server/request_spec.rb"
|
598
|
-
- "./spec/lib/http_stub/server/response_pipeline_spec.rb"
|
599
609
|
- "./spec/lib/http_stub/server/response_spec.rb"
|
600
610
|
- "./spec/lib/http_stub/server/scenario/activator_spec.rb"
|
601
611
|
- "./spec/lib/http_stub/server/scenario/controller_spec.rb"
|
@@ -638,7 +648,12 @@ test_files:
|
|
638
648
|
- "./spec/resources/sample.pdf"
|
639
649
|
- "./spec/resources/sample.txt"
|
640
650
|
- "./spec/spec_helper.rb"
|
651
|
+
- "./spec/support/browser_integration.rb"
|
641
652
|
- "./spec/support/configurer_integration.rb"
|
653
|
+
- "./spec/support/cross_origin_server/application.rb"
|
654
|
+
- "./spec/support/cross_origin_server/index_page.rb"
|
655
|
+
- "./spec/support/cross_origin_server/integration.rb"
|
656
|
+
- "./spec/support/cross_origin_server/public/index.html"
|
642
657
|
- "./spec/support/html_helpers.rb"
|
643
658
|
- "./spec/support/http_stub/empty_configurer.rb"
|
644
659
|
- "./spec/support/http_stub/scenario_fixture.rb"
|
@@ -1,110 +0,0 @@
|
|
1
|
-
module HttpStub
|
2
|
-
module Server
|
3
|
-
|
4
|
-
class Application < Sinatra::Base
|
5
|
-
|
6
|
-
SUPPORTED_REQUEST_TYPES = [ :get, :post, :put, :delete, :patch, :options ].freeze
|
7
|
-
|
8
|
-
private_constant :SUPPORTED_REQUEST_TYPES
|
9
|
-
|
10
|
-
set :root, File.dirname(__FILE__)
|
11
|
-
|
12
|
-
register Sinatra::Partial
|
13
|
-
|
14
|
-
enable :dump_errors, :logging, :partial_underscores
|
15
|
-
disable :protection
|
16
|
-
|
17
|
-
def self.any_request_type(path, opts={}, &block)
|
18
|
-
SUPPORTED_REQUEST_TYPES.each { |type| self.send(type, path, opts, &block) }
|
19
|
-
end
|
20
|
-
private_class_method :any_request_type
|
21
|
-
|
22
|
-
def initialize
|
23
|
-
super()
|
24
|
-
@stub_registry = HttpStub::Server::Stub::Registry.new
|
25
|
-
@scenario_registry = HttpStub::Server::Registry.new("scenario")
|
26
|
-
@match_result_registry = HttpStub::Server::Registry.new("match result")
|
27
|
-
@stub_controller = HttpStub::Server::Stub::Controller.new(@stub_registry, @match_result_registry)
|
28
|
-
@scenario_controller = HttpStub::Server::Scenario::Controller.new(@scenario_registry, @stub_registry)
|
29
|
-
end
|
30
|
-
|
31
|
-
before do
|
32
|
-
@response_pipeline = HttpStub::Server::ResponsePipeline.new(self)
|
33
|
-
@http_stub_request = HttpStub::Server::Request.create(request)
|
34
|
-
end
|
35
|
-
|
36
|
-
get "/http_stub" do
|
37
|
-
haml :index, {}
|
38
|
-
end
|
39
|
-
|
40
|
-
post "/http_stub/stubs" do
|
41
|
-
response = @stub_controller.register(@http_stub_request, logger)
|
42
|
-
@response_pipeline.process(response)
|
43
|
-
end
|
44
|
-
|
45
|
-
get "/http_stub/stubs" do
|
46
|
-
haml :stubs, {}, stubs: @stub_registry.all
|
47
|
-
end
|
48
|
-
|
49
|
-
delete "/http_stub/stubs" do
|
50
|
-
@stub_controller.clear(logger)
|
51
|
-
halt 200, "OK"
|
52
|
-
end
|
53
|
-
|
54
|
-
post "/http_stub/stubs/memory" do
|
55
|
-
@stub_registry.remember
|
56
|
-
halt 200, "OK"
|
57
|
-
end
|
58
|
-
|
59
|
-
get "/http_stub/stubs/memory" do
|
60
|
-
@stub_registry.recall
|
61
|
-
halt 200, "OK"
|
62
|
-
end
|
63
|
-
|
64
|
-
get "/http_stub/stubs/matches" do
|
65
|
-
haml :match_results, {}, match_results: @match_result_registry.all
|
66
|
-
end
|
67
|
-
|
68
|
-
get "/http_stub/stubs/:id" do
|
69
|
-
haml :stub, {}, the_stub: @stub_registry.find(params[:id], logger)
|
70
|
-
end
|
71
|
-
|
72
|
-
post "/http_stub/scenarios" do
|
73
|
-
response = @scenario_controller.register(@http_stub_request, logger)
|
74
|
-
@response_pipeline.process(response)
|
75
|
-
end
|
76
|
-
|
77
|
-
get "/http_stub/scenarios" do
|
78
|
-
pass unless params[:name]
|
79
|
-
haml :scenario, {}, scenario: @scenario_registry.find(URI.decode_www_form_component(params[:name]), logger)
|
80
|
-
end
|
81
|
-
|
82
|
-
get "/http_stub/scenarios" do
|
83
|
-
haml :scenarios, {}, scenarios: @scenario_registry.all.sort_by(&:name)
|
84
|
-
end
|
85
|
-
|
86
|
-
post "/http_stub/scenarios/activate" do
|
87
|
-
response = @scenario_controller.activate(params[:name], logger)
|
88
|
-
@response_pipeline.process(response)
|
89
|
-
end
|
90
|
-
|
91
|
-
delete "/http_stub/scenarios" do
|
92
|
-
@scenario_controller.clear(logger)
|
93
|
-
halt 200, "OK"
|
94
|
-
end
|
95
|
-
|
96
|
-
get "/application.css" do
|
97
|
-
sass :application
|
98
|
-
end
|
99
|
-
|
100
|
-
any_request_type(//) do
|
101
|
-
response = @stub_controller.match(@http_stub_request, logger)
|
102
|
-
@response_pipeline.process(response)
|
103
|
-
end
|
104
|
-
|
105
|
-
helpers { include HttpStub::Server::ApplicationHelpers }
|
106
|
-
|
107
|
-
end
|
108
|
-
|
109
|
-
end
|
110
|
-
end
|