http_stub 0.18.2 → 0.19.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 +1 -0
- data/lib/http_stub/configurer/dsl/deprecated.rb +1 -1
- data/lib/http_stub/configurer/dsl/endpoint_template.rb +1 -1
- data/lib/http_stub/configurer/dsl/scenario_builder.rb +2 -2
- data/lib/http_stub/configurer/dsl/server.rb +10 -6
- data/lib/http_stub/configurer/dsl/stub_activator_builder.rb +4 -4
- data/lib/http_stub/configurer/dsl/stub_builder.rb +7 -7
- data/lib/http_stub/configurer/dsl/stub_builder_producer.rb +1 -1
- data/lib/http_stub/version.rb +1 -1
- data/spec/acceptance/server_defaults_spec.rb +44 -0
- data/spec/acceptance/stub_spec.rb +8 -20
- data/spec/acceptance/stub_trigger_spec.rb +6 -6
- data/spec/lib/http_stub/configurer/dsl/deprecated_spec.rb +7 -7
- data/spec/lib/http_stub/configurer/dsl/endpoint_template_spec.rb +4 -5
- data/spec/lib/http_stub/configurer/dsl/server_spec.rb +43 -52
- data/spec/lib/http_stub/configurer/dsl/stub_activator_builder_spec.rb +2 -2
- data/spec/lib/http_stub/configurer/dsl/stub_builder_producer_spec.rb +6 -6
- data/spec/lib/http_stub/configurer/dsl/stub_builder_spec.rb +160 -59
- data/spec/spec_helper.rb +1 -1
- data/spec/support/stub_fixture.rb +4 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cd84700c863cf0c87b4be11b874723b35475c6fb
|
4
|
+
data.tar.gz: 2857f2d1bd0c3ab6b1bf4ca0a01753bf69b20234
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f37b401cd641a3b8874f8cd40a4074f2db3ce886d8bedba62b533a7ef2e7dbc999a796cf3e9c86bdcf9f857cbd169276a0464ee40205984db01405aca531e499
|
7
|
+
data.tar.gz: 792b251f35f1fe21026106d931ee053162840b569aa7ffc3fa3c52a89921c9fc3c7dab7e01cf30563fbac3e8baa670833dcf4638b1aeef3d0e27e0625b55654b
|
data/lib/http_stub.rb
CHANGED
@@ -11,6 +11,7 @@ require 'sass'
|
|
11
11
|
require 'active_support/core_ext/module/aliasing'
|
12
12
|
require 'active_support/core_ext/module/delegation'
|
13
13
|
require 'active_support/core_ext/object/blank'
|
14
|
+
require 'active_support/core_ext/object/try'
|
14
15
|
require 'active_support/core_ext/string/inflections'
|
15
16
|
require 'active_support/core_ext/hash/slice'
|
16
17
|
require 'active_support/core_ext/hash/deep_merge'
|
@@ -47,7 +47,7 @@ module HttpStub
|
|
47
47
|
private
|
48
48
|
|
49
49
|
def add_stub_options_to_builder(stub, uri, options)
|
50
|
-
stub.match_requests(uri
|
50
|
+
stub.match_requests({ uri: uri }.merge(options.slice(:method, :headers, :parameters)))
|
51
51
|
stub.respond_with(options[:response])
|
52
52
|
end
|
53
53
|
|
@@ -20,7 +20,7 @@ module HttpStub
|
|
20
20
|
end
|
21
21
|
|
22
22
|
def add_scenario!(name, response_overrides={}, &block)
|
23
|
-
@server.
|
23
|
+
@server.add_scenario_with_one_stub!(name) { |stub| compose_stub(stub, response_overrides, &block) }
|
24
24
|
end
|
25
25
|
|
26
26
|
private
|
@@ -6,8 +6,8 @@ module HttpStub
|
|
6
6
|
include HttpStub::Configurer::DSL::StubBuilderProducer
|
7
7
|
include HttpStub::Configurer::DSL::ScenarioActivator
|
8
8
|
|
9
|
-
def initialize(
|
10
|
-
@
|
9
|
+
def initialize(default_stub_builder, name)
|
10
|
+
@default_stub_builder = default_stub_builder
|
11
11
|
@name = name
|
12
12
|
@stub_builders = []
|
13
13
|
@triggered_scenario_names = []
|
@@ -9,16 +9,20 @@ module HttpStub
|
|
9
9
|
attr_accessor :host, :port
|
10
10
|
|
11
11
|
def initialize(server_facade)
|
12
|
-
@server_facade
|
13
|
-
@
|
12
|
+
@server_facade = server_facade
|
13
|
+
@default_stub_builder = HttpStub::Configurer::DSL::StubBuilder.new
|
14
14
|
end
|
15
15
|
|
16
16
|
def base_uri
|
17
17
|
"http://#{host}:#{port}"
|
18
18
|
end
|
19
19
|
|
20
|
+
def request_defaults=(args)
|
21
|
+
@default_stub_builder.match_requests(args)
|
22
|
+
end
|
23
|
+
|
20
24
|
def response_defaults=(args)
|
21
|
-
@
|
25
|
+
@default_stub_builder.respond_with(args)
|
22
26
|
end
|
23
27
|
|
24
28
|
def has_started!
|
@@ -31,12 +35,12 @@ module HttpStub
|
|
31
35
|
end
|
32
36
|
|
33
37
|
def add_scenario!(name, &block)
|
34
|
-
builder = HttpStub::Configurer::DSL::ScenarioBuilder.new(@
|
38
|
+
builder = HttpStub::Configurer::DSL::ScenarioBuilder.new(@default_stub_builder, name)
|
35
39
|
block.call(builder)
|
36
40
|
@server_facade.define_scenario(builder.build)
|
37
41
|
end
|
38
42
|
|
39
|
-
def
|
43
|
+
def add_scenario_with_one_stub!(name, &block)
|
40
44
|
add_scenario!(name) do |scenario|
|
41
45
|
scenario.add_stub! { |stub| stub.invoke(&block) }
|
42
46
|
end
|
@@ -47,7 +51,7 @@ module HttpStub
|
|
47
51
|
end
|
48
52
|
|
49
53
|
def add_activator!(&block)
|
50
|
-
builder = HttpStub::Configurer::DSL::StubActivatorBuilder.new(@
|
54
|
+
builder = HttpStub::Configurer::DSL::StubActivatorBuilder.new(@default_stub_builder)
|
51
55
|
block.call(builder)
|
52
56
|
@server_facade.define_scenario(builder.build)
|
53
57
|
end
|
@@ -7,13 +7,13 @@ module HttpStub
|
|
7
7
|
delegate :build, to: :@scenario_builder
|
8
8
|
delegate :match_requests, :respond_with, :trigger, to: :@stub_builder
|
9
9
|
|
10
|
-
def initialize(
|
11
|
-
@
|
10
|
+
def initialize(default_stub_builder)
|
11
|
+
@default_stub_builder = default_stub_builder
|
12
12
|
end
|
13
13
|
|
14
14
|
def on(activation_uri)
|
15
|
-
@scenario_builder = HttpStub::Configurer::DSL::ScenarioBuilder.new(@
|
16
|
-
@stub_builder = HttpStub::Configurer::DSL::StubBuilder.new(@
|
15
|
+
@scenario_builder = HttpStub::Configurer::DSL::ScenarioBuilder.new(@default_stub_builder, activation_uri)
|
16
|
+
@stub_builder = HttpStub::Configurer::DSL::StubBuilder.new(@default_stub_builder)
|
17
17
|
@scenario_builder.add_stub!(@stub_builder)
|
18
18
|
end
|
19
19
|
|
@@ -6,15 +6,15 @@ module HttpStub
|
|
6
6
|
|
7
7
|
attr_reader :request, :response, :triggers
|
8
8
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
@response = response_defaults.clone
|
9
|
+
def initialize(default_builder=nil)
|
10
|
+
@request = {}
|
11
|
+
@response = {}
|
13
12
|
@triggers = []
|
13
|
+
self.merge!(default_builder) if default_builder
|
14
14
|
end
|
15
15
|
|
16
|
-
def match_requests(
|
17
|
-
self.tap { @request
|
16
|
+
def match_requests(args)
|
17
|
+
self.tap { @request.deep_merge!(args) }
|
18
18
|
end
|
19
19
|
|
20
20
|
def schema(type, definition)
|
@@ -37,7 +37,7 @@ module HttpStub
|
|
37
37
|
end
|
38
38
|
|
39
39
|
def merge!(stub_builder)
|
40
|
-
|
40
|
+
self.match_requests(stub_builder.request)
|
41
41
|
self.respond_with(stub_builder.response)
|
42
42
|
self.trigger(stub_builder.triggers)
|
43
43
|
end
|
@@ -5,7 +5,7 @@ module HttpStub
|
|
5
5
|
module StubBuilderProducer
|
6
6
|
|
7
7
|
def build_stub(&block)
|
8
|
-
builder = HttpStub::Configurer::DSL::StubBuilder.new(@
|
8
|
+
builder = HttpStub::Configurer::DSL::StubBuilder.new(@default_stub_builder)
|
9
9
|
builder.invoke(&block) if block_given?
|
10
10
|
builder
|
11
11
|
end
|
data/lib/http_stub/version.rb
CHANGED
@@ -0,0 +1,44 @@
|
|
1
|
+
describe "Server defaults acceptance" do
|
2
|
+
include_context "configurer integration"
|
3
|
+
|
4
|
+
context "when a configurer defines server defaults" do
|
5
|
+
|
6
|
+
let(:configurer) { HttpStub::Examples::ConfigurerWithServerDefaults.new }
|
7
|
+
|
8
|
+
before(:example) { configurer.class.initialize! }
|
9
|
+
|
10
|
+
it "matches requests that match the request default rules" do
|
11
|
+
response = issue_matching_request("has_defaults")
|
12
|
+
|
13
|
+
expect(response.code).to eql(203)
|
14
|
+
end
|
15
|
+
|
16
|
+
it "does not match requests that do not match the request default rules" do
|
17
|
+
response = HTTParty.get("#{server_uri}/has_defaults")
|
18
|
+
|
19
|
+
expect(response.code).to eql(404)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "includes the response defaults in a match" do
|
23
|
+
response = issue_matching_request("has_defaults")
|
24
|
+
|
25
|
+
expect(response.code).to eql(203)
|
26
|
+
expect(response.body).to eql("Some body")
|
27
|
+
expect(response.headers["defaulted_response_header"]).to eql("Response header value")
|
28
|
+
end
|
29
|
+
|
30
|
+
it "includes the response defaults in all matches" do
|
31
|
+
response = issue_matching_request("also_has_defaults")
|
32
|
+
|
33
|
+
expect(response.code).to eql(203)
|
34
|
+
expect(response.body).to eql("Also some body")
|
35
|
+
expect(response.headers["defaulted_response_header"]).to eql("Response header value")
|
36
|
+
end
|
37
|
+
|
38
|
+
def issue_matching_request(uri)
|
39
|
+
HTTParty.get("#{server_uri}/#{uri}", headers: { "defaulted_request_header" => "Request header value"})
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
@@ -13,7 +13,7 @@ describe "Stub basics acceptance" do
|
|
13
13
|
|
14
14
|
before(:example) do
|
15
15
|
stub_server.add_stub! do
|
16
|
-
match_requests("/stub_with_status", method: :get).respond_with(status: 201, body: "Stub body")
|
16
|
+
match_requests(uri: "/stub_with_status", method: :get).respond_with(status: 201, body: "Stub body")
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
@@ -52,7 +52,7 @@ describe "Stub basics acceptance" do
|
|
52
52
|
context "and it does not contain a response status" do
|
53
53
|
|
54
54
|
before(:example) do
|
55
|
-
stub_server.add_stub! { match_requests("/stub_without_status", method: :get).respond_with(body: "Stub body") }
|
55
|
+
stub_server.add_stub! { match_requests(uri: "/stub_without_status", method: :get).respond_with(body: "Stub body") }
|
56
56
|
end
|
57
57
|
|
58
58
|
context "and a matching request is made" do
|
@@ -70,7 +70,7 @@ describe "Stub basics acceptance" do
|
|
70
70
|
context "and it does not contain a request method" do
|
71
71
|
|
72
72
|
before(:example) do
|
73
|
-
stub_server.add_stub! { match_requests("/stub_without_method").respond_with(body: "Stub body") }
|
73
|
+
stub_server.add_stub! { match_requests(uri: "/stub_without_method").respond_with(body: "Stub body") }
|
74
74
|
end
|
75
75
|
|
76
76
|
context "and a request is made with a matching uri" do
|
@@ -93,7 +93,7 @@ describe "Stub basics acceptance" do
|
|
93
93
|
|
94
94
|
before(:example) do
|
95
95
|
stub_server.add_stub! do
|
96
|
-
match_requests("/stub_with_headers", method: :get, headers: { key: "value" })
|
96
|
+
match_requests(uri: "/stub_with_headers", method: :get, headers: { key: "value" })
|
97
97
|
respond_with(status: 202, body: "Another stub body")
|
98
98
|
end
|
99
99
|
end
|
@@ -129,7 +129,7 @@ describe "Stub basics acceptance" do
|
|
129
129
|
|
130
130
|
before(:example) do
|
131
131
|
stub_server.add_stub! do
|
132
|
-
match_requests("/stub_with_parameters", method: :get, parameters: { key: "value" })
|
132
|
+
match_requests(uri: "/stub_with_parameters", method: :get, parameters: { key: "value" })
|
133
133
|
respond_with(status: 202, body: "Another stub body")
|
134
134
|
end
|
135
135
|
end
|
@@ -161,7 +161,7 @@ describe "Stub basics acceptance" do
|
|
161
161
|
|
162
162
|
before(:example) do
|
163
163
|
stub_server.add_stub! do
|
164
|
-
match_requests("/stub_with_parameters", method: :get, parameters: { key: 88 })
|
164
|
+
match_requests(uri: "/stub_with_parameters", method: :get, parameters: { key: 88 })
|
165
165
|
respond_with(status: 203, body: "Body for parameter number")
|
166
166
|
end
|
167
167
|
end
|
@@ -181,25 +181,13 @@ describe "Stub basics acceptance" do
|
|
181
181
|
|
182
182
|
end
|
183
183
|
|
184
|
-
context "that contains response defaults" do
|
185
|
-
|
186
|
-
let(:configurer) { HttpStub::Examples::ConfigurerWithResponseDefaults.new }
|
187
|
-
|
188
|
-
it "includes the defaults in each response" do
|
189
|
-
response = Net::HTTP.get_response(server_host, "/response_with_defaults", server_port)
|
190
|
-
|
191
|
-
expect(response["defaulted_header"]).to eql("Header value")
|
192
|
-
end
|
193
|
-
|
194
|
-
end
|
195
|
-
|
196
184
|
describe "that contains response headers" do
|
197
185
|
|
198
186
|
context "with a content-type header" do
|
199
187
|
|
200
188
|
before(:example) do
|
201
189
|
stub_server.add_stub! do
|
202
|
-
match_requests("/some_stub_path", method: :get)
|
190
|
+
match_requests(uri: "/some_stub_path", method: :get)
|
203
191
|
respond_with(body: "Some stub body", headers: { "content-type" => "application/xhtml" })
|
204
192
|
end
|
205
193
|
end
|
@@ -226,7 +214,7 @@ describe "Stub basics acceptance" do
|
|
226
214
|
|
227
215
|
before(:example) do
|
228
216
|
stub_server.add_stub! do |stub|
|
229
|
-
stub.match_requests("/some_stub_path", method: :get)
|
217
|
+
stub.match_requests(uri: "/some_stub_path", method: :get)
|
230
218
|
stub.respond_with(body: "Some stub body", headers: response_headers)
|
231
219
|
end
|
232
220
|
end
|
@@ -12,7 +12,7 @@ describe "Stub trigger acceptance" do
|
|
12
12
|
let(:triggered_stubs) do
|
13
13
|
(1..3).map do |trigger_number|
|
14
14
|
stub_server.build_stub do |stub|
|
15
|
-
stub.match_requests("/triggered_stub_#{trigger_number}", method: :get)
|
15
|
+
stub.match_requests(uri: "/triggered_stub_#{trigger_number}", method: :get)
|
16
16
|
stub.respond_with(status: 200 + trigger_number, body: "Triggered stub body #{trigger_number}")
|
17
17
|
end
|
18
18
|
end
|
@@ -20,7 +20,7 @@ describe "Stub trigger acceptance" do
|
|
20
20
|
|
21
21
|
before(:example) do
|
22
22
|
stub_server.add_stub! do |stub|
|
23
|
-
stub.match_requests("/stub_with_triggers", method: :get)
|
23
|
+
stub.match_requests(uri: "/stub_with_triggers", method: :get)
|
24
24
|
stub.respond_with(body: "Trigger stub body")
|
25
25
|
stub.trigger(triggered_stubs)
|
26
26
|
end
|
@@ -59,7 +59,7 @@ describe "Stub trigger acceptance" do
|
|
59
59
|
let(:pdf_file_path) { "#{HttpStub::Spec::RESOURCES_DIR}/sample.pdf" }
|
60
60
|
let(:pdf_file_trigger) do
|
61
61
|
stub_server.build_stub do |stub|
|
62
|
-
stub.match_requests("/triggered_stub_pdf_file", method: :get)
|
62
|
+
stub.match_requests(uri: "/triggered_stub_pdf_file", method: :get)
|
63
63
|
stub.respond_with(
|
64
64
|
status: 201,
|
65
65
|
headers: { "content-type" => "application/pdf" },
|
@@ -71,7 +71,7 @@ describe "Stub trigger acceptance" do
|
|
71
71
|
let(:text_body) { "Sample trigger stub body" }
|
72
72
|
let(:text_trigger) do
|
73
73
|
stub_server.build_stub do |stub|
|
74
|
-
stub.match_requests("/triggered_stub_text", method: :get)
|
74
|
+
stub.match_requests(uri: "/triggered_stub_text", method: :get)
|
75
75
|
stub.respond_with(status: 202, body: "Sample trigger stub body")
|
76
76
|
end
|
77
77
|
end
|
@@ -79,7 +79,7 @@ describe "Stub trigger acceptance" do
|
|
79
79
|
let(:txt_file_path) { "#{HttpStub::Spec::RESOURCES_DIR}/sample.txt" }
|
80
80
|
let(:txt_file_trigger) do
|
81
81
|
stub_server.build_stub do |stub|
|
82
|
-
stub.match_requests("/triggered_stub_txt_file", method: :get)
|
82
|
+
stub.match_requests(uri: "/triggered_stub_txt_file", method: :get)
|
83
83
|
stub.respond_with(
|
84
84
|
status: 203,
|
85
85
|
headers: { "content-type" => "text/plain" },
|
@@ -92,7 +92,7 @@ describe "Stub trigger acceptance" do
|
|
92
92
|
|
93
93
|
before(:example) do
|
94
94
|
stub_server.add_stub! do |stub|
|
95
|
-
stub.match_requests("/stub_with_triggers", method: :get)
|
95
|
+
stub.match_requests(uri: "/stub_with_triggers", method: :get)
|
96
96
|
stub.respond_with(body: "Trigger stub body")
|
97
97
|
stub.trigger(triggered_stubs)
|
98
98
|
end
|
@@ -17,7 +17,7 @@ describe HttpStub::Configurer::DSL::Deprecated do
|
|
17
17
|
end
|
18
18
|
|
19
19
|
it "causes the builder being added to match requests on the provided uri" do
|
20
|
-
expect(builder).to receive(:match_requests).with(stub_uri
|
20
|
+
expect(builder).to receive(:match_requests).with(hash_including(uri: stub_uri))
|
21
21
|
|
22
22
|
subject
|
23
23
|
end
|
@@ -25,7 +25,7 @@ describe HttpStub::Configurer::DSL::Deprecated do
|
|
25
25
|
context "when a method is provided" do
|
26
26
|
|
27
27
|
it "causes the builder being added to match requests on the provided method" do
|
28
|
-
expect(builder).to receive(:match_requests).with(
|
28
|
+
expect(builder).to receive(:match_requests).with(hash_including(method: method))
|
29
29
|
|
30
30
|
subject
|
31
31
|
end
|
@@ -37,7 +37,7 @@ describe HttpStub::Configurer::DSL::Deprecated do
|
|
37
37
|
let(:options) { {} }
|
38
38
|
|
39
39
|
it "causes the builder being added to not match requests based on method" do
|
40
|
-
expect(builder).to receive(:match_requests).with(
|
40
|
+
expect(builder).to receive(:match_requests).with(hash_excluding(:method))
|
41
41
|
|
42
42
|
subject
|
43
43
|
end
|
@@ -47,7 +47,7 @@ describe HttpStub::Configurer::DSL::Deprecated do
|
|
47
47
|
context "when parameters are provided" do
|
48
48
|
|
49
49
|
it "causes the builder being added to match requests on the provided parameters" do
|
50
|
-
expect(builder).to receive(:match_requests).with(
|
50
|
+
expect(builder).to receive(:match_requests).with(hash_including(parameters: parameters))
|
51
51
|
|
52
52
|
subject
|
53
53
|
end
|
@@ -59,7 +59,7 @@ describe HttpStub::Configurer::DSL::Deprecated do
|
|
59
59
|
let(:options) { {} }
|
60
60
|
|
61
61
|
it "causes the builder being added to not match requests based on parameters" do
|
62
|
-
expect(builder).to receive(:match_requests).with(
|
62
|
+
expect(builder).to receive(:match_requests).with(hash_excluding(:parameters))
|
63
63
|
|
64
64
|
subject
|
65
65
|
end
|
@@ -69,7 +69,7 @@ describe HttpStub::Configurer::DSL::Deprecated do
|
|
69
69
|
context "when headers are provided" do
|
70
70
|
|
71
71
|
it "causes the builder being added to match requests on the provided headers" do
|
72
|
-
expect(builder).to receive(:match_requests).with(
|
72
|
+
expect(builder).to receive(:match_requests).with(hash_including(headers: headers))
|
73
73
|
|
74
74
|
subject
|
75
75
|
end
|
@@ -81,7 +81,7 @@ describe HttpStub::Configurer::DSL::Deprecated do
|
|
81
81
|
let(:options) { {} }
|
82
82
|
|
83
83
|
it "causes the builder being added to not match requests based on headers" do
|
84
|
-
expect(builder).to receive(:match_requests).with(
|
84
|
+
expect(builder).to receive(:match_requests).with(hash_excluding(:headers))
|
85
85
|
|
86
86
|
subject
|
87
87
|
end
|
@@ -18,13 +18,12 @@ describe HttpStub::Configurer::DSL::EndpointTemplate do
|
|
18
18
|
|
19
19
|
describe "#match_requests" do
|
20
20
|
|
21
|
-
let(:uri) { "/some/uri" }
|
22
21
|
let(:args) { { key: :value } }
|
23
22
|
|
24
|
-
subject { endpoint_template.match_requests(
|
23
|
+
subject { endpoint_template.match_requests(args) }
|
25
24
|
|
26
25
|
it "delegates to the templates stub builder" do
|
27
|
-
expect(template_stub_builder).to receive(:match_requests).with(
|
26
|
+
expect(template_stub_builder).to receive(:match_requests).with(args)
|
28
27
|
|
29
28
|
subject
|
30
29
|
end
|
@@ -229,7 +228,7 @@ describe HttpStub::Configurer::DSL::EndpointTemplate do
|
|
229
228
|
let(:name) { "some_scenario_name" }
|
230
229
|
let(:stub_builder) { instance_double(HttpStub::Configurer::DSL::StubBuilder).as_null_object }
|
231
230
|
|
232
|
-
before(:example) { allow(server).to receive(:
|
231
|
+
before(:example) { allow(server).to receive(:add_scenario_with_one_stub!).and_yield(stub_builder) }
|
233
232
|
|
234
233
|
def subject_without_overrides_and_block
|
235
234
|
endpoint_template.add_scenario!(name)
|
@@ -244,7 +243,7 @@ describe HttpStub::Configurer::DSL::EndpointTemplate do
|
|
244
243
|
end
|
245
244
|
|
246
245
|
it "adds a one stub scenario to the server" do
|
247
|
-
expect(server).to receive(:
|
246
|
+
expect(server).to receive(:add_scenario_with_one_stub!).with(name)
|
248
247
|
|
249
248
|
subject_without_overrides_and_block
|
250
249
|
end
|
@@ -1,21 +1,22 @@
|
|
1
1
|
describe HttpStub::Configurer::DSL::Server do
|
2
2
|
|
3
|
-
let(:server_facade)
|
3
|
+
let(:server_facade) { instance_double(HttpStub::Configurer::Server::Facade) }
|
4
|
+
let(:default_stub_builder) { instance_double(HttpStub::Configurer::DSL::StubBuilder) }
|
4
5
|
|
5
6
|
let(:server) { HttpStub::Configurer::DSL::Server.new(server_facade) }
|
6
7
|
|
7
|
-
|
8
|
-
|
9
|
-
let(:response_defaults) { { key: "value" } }
|
10
|
-
|
11
|
-
before(:example) { server.response_defaults = { key: "value" } }
|
12
|
-
|
8
|
+
before(:example) do
|
9
|
+
allow(HttpStub::Configurer::DSL::StubBuilder).to receive(:new).with(no_args).and_return(default_stub_builder)
|
13
10
|
end
|
14
11
|
|
15
12
|
it "produces stub builders" do
|
16
13
|
expect(server).to be_a(HttpStub::Configurer::DSL::StubBuilderProducer)
|
17
14
|
end
|
18
15
|
|
16
|
+
it "activates scenarios" do
|
17
|
+
expect(server).to be_a(HttpStub::Configurer::DSL::ScenarioActivator)
|
18
|
+
end
|
19
|
+
|
19
20
|
describe "#base_uri" do
|
20
21
|
|
21
22
|
subject { server.base_uri }
|
@@ -35,6 +36,30 @@ describe HttpStub::Configurer::DSL::Server do
|
|
35
36
|
|
36
37
|
end
|
37
38
|
|
39
|
+
describe "#request_defaults=" do
|
40
|
+
|
41
|
+
let(:args) { { request_rule_key: "request rule value" } }
|
42
|
+
|
43
|
+
it "establishes request matcher rules on the default stub builder" do
|
44
|
+
expect(default_stub_builder).to receive(:match_requests).with(args)
|
45
|
+
|
46
|
+
server.request_defaults = args
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
50
|
+
|
51
|
+
describe "#response_defaults=" do
|
52
|
+
|
53
|
+
let(:args) { { response_key: "response value" } }
|
54
|
+
|
55
|
+
it "establishes response values on the default stub builder" do
|
56
|
+
expect(default_stub_builder).to receive(:respond_with).with(args)
|
57
|
+
|
58
|
+
server.response_defaults = args
|
59
|
+
end
|
60
|
+
|
61
|
+
end
|
62
|
+
|
38
63
|
describe "#has_started!" do
|
39
64
|
|
40
65
|
it "informs the facade that the server has started" do
|
@@ -123,32 +148,16 @@ describe HttpStub::Configurer::DSL::Server do
|
|
123
148
|
|
124
149
|
subject { server.add_scenario!(scenario_name, &block) }
|
125
150
|
|
126
|
-
|
127
|
-
|
128
|
-
include_context "establish response defaults"
|
129
|
-
|
130
|
-
it "creates a scenario builder containing the response defaults" do
|
131
|
-
expect(HttpStub::Configurer::DSL::ScenarioBuilder).to receive(:new).with(response_defaults, anything)
|
132
|
-
|
133
|
-
subject
|
134
|
-
end
|
135
|
-
|
136
|
-
it "creates a scenario builder containing the provided scenario name" do
|
137
|
-
expect(HttpStub::Configurer::DSL::ScenarioBuilder).to receive(:new).with(anything, scenario_name)
|
138
|
-
|
139
|
-
subject
|
140
|
-
end
|
151
|
+
it "creates a scenario builder containing the servers default stub builder" do
|
152
|
+
expect(HttpStub::Configurer::DSL::ScenarioBuilder).to receive(:new).with(default_stub_builder, anything)
|
141
153
|
|
154
|
+
subject
|
142
155
|
end
|
143
156
|
|
144
|
-
|
145
|
-
|
146
|
-
it "creates a scenario builder with empty response defaults" do
|
147
|
-
expect(HttpStub::Configurer::DSL::ScenarioBuilder).to receive(:new).with({}, anything)
|
148
|
-
|
149
|
-
subject
|
150
|
-
end
|
157
|
+
it "creates a scenario builder containing the provided scenario name" do
|
158
|
+
expect(HttpStub::Configurer::DSL::ScenarioBuilder).to receive(:new).with(anything, scenario_name)
|
151
159
|
|
160
|
+
subject
|
152
161
|
end
|
153
162
|
|
154
163
|
it "yields the created builder to the provided block" do
|
@@ -171,7 +180,7 @@ describe HttpStub::Configurer::DSL::Server do
|
|
171
180
|
|
172
181
|
end
|
173
182
|
|
174
|
-
describe "#
|
183
|
+
describe "#add_scenario_with_one_stub!" do
|
175
184
|
|
176
185
|
let(:scenario_name) { "some_scenario_name" }
|
177
186
|
let(:block_verifier) { double("BlockVerifier") }
|
@@ -180,7 +189,7 @@ describe HttpStub::Configurer::DSL::Server do
|
|
180
189
|
let(:scenario_builder) { instance_double(HttpStub::Configurer::DSL::ScenarioBuilder) }
|
181
190
|
let(:stub_builder) { instance_double(HttpStub::Configurer::DSL::StubBuilder, invoke: nil) }
|
182
191
|
|
183
|
-
subject { server.
|
192
|
+
subject { server.add_scenario_with_one_stub!(scenario_name, &block) }
|
184
193
|
|
185
194
|
before(:each) do
|
186
195
|
allow(server).to receive(:add_scenario!).and_yield(scenario_builder)
|
@@ -256,28 +265,10 @@ describe HttpStub::Configurer::DSL::Server do
|
|
256
265
|
|
257
266
|
subject { server.add_activator!(&block) }
|
258
267
|
|
259
|
-
|
260
|
-
|
261
|
-
let(:response_defaults) { { key: "value" } }
|
262
|
-
|
263
|
-
before(:example) { server.response_defaults = { key: "value" } }
|
264
|
-
|
265
|
-
it "creates a stub activator builder containing the response defaults" do
|
266
|
-
expect(HttpStub::Configurer::DSL::StubActivatorBuilder).to receive(:new).with(response_defaults)
|
267
|
-
|
268
|
-
subject
|
269
|
-
end
|
270
|
-
|
271
|
-
end
|
272
|
-
|
273
|
-
context "when no response defaults have been established" do
|
274
|
-
|
275
|
-
it "creates a stub activator builder with empty response defaults" do
|
276
|
-
expect(HttpStub::Configurer::DSL::StubActivatorBuilder).to receive(:new).with({})
|
277
|
-
|
278
|
-
subject
|
279
|
-
end
|
268
|
+
it "creates a stub activator builder containing the servers default stub builder" do
|
269
|
+
expect(HttpStub::Configurer::DSL::StubActivatorBuilder).to receive(:new).with(default_stub_builder)
|
280
270
|
|
271
|
+
subject
|
281
272
|
end
|
282
273
|
|
283
274
|
it "yields the created builder to the provided block" do
|
@@ -48,9 +48,9 @@ describe HttpStub::Configurer::DSL::StubActivatorBuilder do
|
|
48
48
|
before(:example) { builder.on(activation_uri) }
|
49
49
|
|
50
50
|
it "delegates to a stub builder" do
|
51
|
-
expect(stub_builder).to receive(:match_requests).with(
|
51
|
+
expect(stub_builder).to receive(:match_requests).with(request_payload)
|
52
52
|
|
53
|
-
builder.match_requests(
|
53
|
+
builder.match_requests(request_payload)
|
54
54
|
end
|
55
55
|
|
56
56
|
end
|
@@ -3,8 +3,8 @@ describe HttpStub::Configurer::DSL::StubBuilderProducer do
|
|
3
3
|
class HttpStub::Configurer::DSL::TestableStubBuilderProducer
|
4
4
|
include HttpStub::Configurer::DSL::StubBuilderProducer
|
5
5
|
|
6
|
-
def initialize(
|
7
|
-
@
|
6
|
+
def initialize(default_stub_builder)
|
7
|
+
@default_stub_builder = default_stub_builder
|
8
8
|
@builders = []
|
9
9
|
end
|
10
10
|
|
@@ -14,9 +14,9 @@ describe HttpStub::Configurer::DSL::StubBuilderProducer do
|
|
14
14
|
|
15
15
|
end
|
16
16
|
|
17
|
-
let(:
|
17
|
+
let(:default_stub_builder) { instance_double(HttpStub::Configurer::DSL::StubBuilder) }
|
18
18
|
|
19
|
-
let(:producer) { HttpStub::Configurer::DSL::TestableStubBuilderProducer.new(
|
19
|
+
let(:producer) { HttpStub::Configurer::DSL::TestableStubBuilderProducer.new(default_stub_builder) }
|
20
20
|
|
21
21
|
describe "#build_stub" do
|
22
22
|
|
@@ -26,8 +26,8 @@ describe HttpStub::Configurer::DSL::StubBuilderProducer do
|
|
26
26
|
|
27
27
|
subject { producer.build_stub }
|
28
28
|
|
29
|
-
it "creates a stub builder containing the producers
|
30
|
-
expect(HttpStub::Configurer::DSL::StubBuilder).to receive(:new).with(
|
29
|
+
it "creates a stub builder containing the producers default stub builder" do
|
30
|
+
expect(HttpStub::Configurer::DSL::StubBuilder).to receive(:new).with(default_stub_builder)
|
31
31
|
|
32
32
|
subject
|
33
33
|
end
|
@@ -1,8 +1,8 @@
|
|
1
1
|
describe HttpStub::Configurer::DSL::StubBuilder do
|
2
2
|
|
3
|
-
let(:
|
3
|
+
let(:default_builder) { nil }
|
4
4
|
|
5
|
-
let(:builder) { HttpStub::Configurer::DSL::StubBuilder.new(
|
5
|
+
let(:builder) { HttpStub::Configurer::DSL::StubBuilder.new(default_builder) }
|
6
6
|
|
7
7
|
shared_context "triggers one stub" do
|
8
8
|
|
@@ -26,11 +26,56 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
26
26
|
|
27
27
|
end
|
28
28
|
|
29
|
+
describe "constructor" do
|
30
|
+
|
31
|
+
class HttpStub::Configurer::DSL::StubBuilderWithObservedMerge < HttpStub::Configurer::DSL::StubBuilder
|
32
|
+
|
33
|
+
attr_reader :merged_stub_builders
|
34
|
+
|
35
|
+
def initialize(default_builder)
|
36
|
+
@merged_stub_builders = []
|
37
|
+
super(default_builder)
|
38
|
+
end
|
39
|
+
|
40
|
+
def merge!(stub_builder)
|
41
|
+
@merged_stub_builders << stub_builder
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
45
|
+
|
46
|
+
context "when a default builder is provided" do
|
47
|
+
|
48
|
+
let(:default_builder) { instance_double(HttpStub::Configurer::DSL::StubBuilder) }
|
49
|
+
|
50
|
+
let(:builder) { HttpStub::Configurer::DSL::StubBuilderWithObservedMerge.new(default_builder) }
|
51
|
+
|
52
|
+
it "merges the default builder" do
|
53
|
+
builder
|
54
|
+
|
55
|
+
expect(builder.merged_stub_builders).to eql([ default_builder ])
|
56
|
+
end
|
57
|
+
|
58
|
+
end
|
59
|
+
|
60
|
+
end
|
61
|
+
|
62
|
+
context "when a default builder is not provided" do
|
63
|
+
|
64
|
+
let(:builder) { HttpStub::Configurer::DSL::StubBuilderWithObservedMerge.new(nil) }
|
65
|
+
|
66
|
+
it "does not merge a builder" do
|
67
|
+
builder
|
68
|
+
|
69
|
+
expect(builder.merged_stub_builders).to eql([])
|
70
|
+
end
|
71
|
+
|
72
|
+
end
|
73
|
+
|
29
74
|
describe "#match_requests" do
|
30
75
|
|
31
76
|
let(:fixture) { HttpStub::StubFixture.new }
|
32
77
|
|
33
|
-
subject { builder.match_requests(fixture.request.
|
78
|
+
subject { builder.match_requests(fixture.request.symbolized) }
|
34
79
|
|
35
80
|
it "returns the builder to support method chaining" do
|
36
81
|
expect(subject).to eql(builder)
|
@@ -60,14 +105,6 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
60
105
|
|
61
106
|
subject { builder.respond_with(status: 201) }
|
62
107
|
|
63
|
-
it "does not modify any provided response defaults" do
|
64
|
-
original_response_defaults = response_defaults.clone
|
65
|
-
|
66
|
-
subject
|
67
|
-
|
68
|
-
expect(response_defaults).to eql(original_response_defaults)
|
69
|
-
end
|
70
|
-
|
71
108
|
it "returns the builder to support method chaining" do
|
72
109
|
expect(subject).to eql(builder)
|
73
110
|
end
|
@@ -88,10 +125,10 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
88
125
|
|
89
126
|
context "when the block accepts an argument" do
|
90
127
|
|
91
|
-
subject { builder.invoke { |builder| builder.match_requests("/some_uri") } }
|
128
|
+
subject { builder.invoke { |builder| builder.match_requests(uri: "/some_uri") } }
|
92
129
|
|
93
130
|
it "invokes the block with the builder as the argument" do
|
94
|
-
expect(builder).to receive(:match_requests).with("/some_uri")
|
131
|
+
expect(builder).to receive(:match_requests).with(uri: "/some_uri")
|
95
132
|
|
96
133
|
subject
|
97
134
|
end
|
@@ -100,10 +137,10 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
100
137
|
|
101
138
|
context "when the block accepts no arguments" do
|
102
139
|
|
103
|
-
subject { builder.invoke { match_requests("/some_uri") } }
|
140
|
+
subject { builder.invoke { match_requests(uri: "/some_uri") } }
|
104
141
|
|
105
142
|
it "invokes the block in the context of the builder" do
|
106
|
-
expect(builder).to receive(:match_requests).with("/some_uri")
|
143
|
+
expect(builder).to receive(:match_requests).with(uri: "/some_uri")
|
107
144
|
|
108
145
|
subject
|
109
146
|
end
|
@@ -121,8 +158,8 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
121
158
|
let(:provided_triggers) { (1..3).map { instance_double(HttpStub::Configurer::DSL::StubBuilder) } }
|
122
159
|
|
123
160
|
let(:provided_builder) do
|
124
|
-
HttpStub::Configurer::DSL::StubBuilder.new
|
125
|
-
builder.match_requests("/replacement_uri", method: :put,
|
161
|
+
HttpStub::Configurer::DSL::StubBuilder.new.tap do |builder|
|
162
|
+
builder.match_requests(uri: "/replacement_uri", method: :put,
|
126
163
|
headers: { request_header_key: "replacement request header value",
|
127
164
|
other_request_header_key: "other request header value" },
|
128
165
|
parameters: { parameter_key: "replacement parameter value",
|
@@ -143,7 +180,7 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
143
180
|
let(:original_triggers) { (1..3).map { instance_double(HttpStub::Configurer::DSL::StubBuilder) } }
|
144
181
|
|
145
182
|
before(:example) do
|
146
|
-
builder.match_requests("/original_uri", method: :get,
|
183
|
+
builder.match_requests(uri: "/original_uri", method: :get,
|
147
184
|
headers: { request_header_key: "original request header value" },
|
148
185
|
parameters: { parameter_key: "original parameter value" })
|
149
186
|
builder.respond_with(status: 202,
|
@@ -220,7 +257,7 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
220
257
|
|
221
258
|
context "and a builder that is empty is provided" do
|
222
259
|
|
223
|
-
let(:provided_builder) { HttpStub::Configurer::DSL::StubBuilder.new
|
260
|
+
let(:provided_builder) { HttpStub::Configurer::DSL::StubBuilder.new }
|
224
261
|
|
225
262
|
it "preserves the uri" do
|
226
263
|
subject
|
@@ -349,12 +386,14 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
349
386
|
|
350
387
|
describe "#build" do
|
351
388
|
|
352
|
-
let(:fixture)
|
353
|
-
let(:
|
389
|
+
let(:fixture) { HttpStub::StubFixture.new }
|
390
|
+
let(:triggers) { [] }
|
391
|
+
let(:stub) { instance_double(HttpStub::Configurer::Request::Stub) }
|
354
392
|
|
355
393
|
subject do
|
356
|
-
builder.match_requests(fixture.request.
|
394
|
+
builder.match_requests(fixture.request.symbolized)
|
357
395
|
builder.respond_with(fixture.response.symbolized)
|
396
|
+
builder.trigger(triggers)
|
358
397
|
|
359
398
|
builder.build
|
360
399
|
end
|
@@ -364,7 +403,7 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
364
403
|
context "when provided a request match and response data" do
|
365
404
|
|
366
405
|
it "creates a stub payload with request options that include the uri and the provided request options" do
|
367
|
-
expect_stub_to_be_created_with(request:
|
406
|
+
expect_stub_to_be_created_with(request: fixture.request.symbolized)
|
368
407
|
|
369
408
|
subject
|
370
409
|
end
|
@@ -375,44 +414,118 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
375
414
|
subject
|
376
415
|
end
|
377
416
|
|
378
|
-
|
417
|
+
describe "creates a stub payload with triggers that" do
|
379
418
|
|
380
|
-
|
419
|
+
context "when a trigger is added" do
|
381
420
|
|
382
|
-
|
383
|
-
|
421
|
+
include_context "triggers one stub"
|
422
|
+
|
423
|
+
it "contain the provided trigger builder" do
|
424
|
+
expect_stub_to_be_created_with(triggers: [ trigger_builder ])
|
425
|
+
|
426
|
+
subject
|
427
|
+
end
|
428
|
+
|
429
|
+
end
|
430
|
+
|
431
|
+
context "when many triggers are added" do
|
432
|
+
|
433
|
+
include_context "triggers many stubs"
|
434
|
+
|
435
|
+
it "contain the provided trigger builders" do
|
436
|
+
expect_stub_to_be_created_with(triggers: trigger_builders)
|
437
|
+
|
438
|
+
subject
|
439
|
+
end
|
384
440
|
|
385
|
-
subject
|
386
441
|
end
|
387
442
|
|
388
|
-
|
443
|
+
end
|
389
444
|
|
390
|
-
|
445
|
+
context "when a default stub builder is provided that contains defaults" do
|
446
|
+
|
447
|
+
let(:request_defaults) do
|
448
|
+
{
|
449
|
+
uri: "/uri/value",
|
450
|
+
headers: { "request_header_name_1" => "request header value 1",
|
451
|
+
"request_header_name_2" => "request header value 2" },
|
452
|
+
parameters: { "parameter_name_1" => "parameter value 1",
|
453
|
+
"parameter_name_2" => "parameter value 2" },
|
454
|
+
body: "body value"
|
455
|
+
}
|
456
|
+
end
|
457
|
+
let(:response_defaults) do
|
458
|
+
{
|
459
|
+
status: 203,
|
460
|
+
headers: { "response_header_name_1" => "response header value 1",
|
461
|
+
"response_header_name_2" => "response header value 2" },
|
462
|
+
body: "some body",
|
463
|
+
delay_in_seconds: 8
|
464
|
+
}
|
465
|
+
end
|
466
|
+
let(:trigger_defaults) { (1..3).map { instance_double(HttpStub::Configurer::DSL::StubBuilder) } }
|
467
|
+
|
468
|
+
let(:default_builder) do
|
469
|
+
instance_double(HttpStub::Configurer::DSL::StubBuilder, request: request_defaults,
|
470
|
+
response: response_defaults,
|
471
|
+
triggers: trigger_defaults)
|
472
|
+
end
|
473
|
+
|
474
|
+
describe "the built request payload" do
|
475
|
+
|
476
|
+
let(:request_overrides) do
|
391
477
|
{
|
392
|
-
|
393
|
-
headers:
|
394
|
-
|
395
|
-
|
478
|
+
uri: "/some/updated/uri",
|
479
|
+
headers: { "request_header_name_2" => "updated request header value 2",
|
480
|
+
"request_header_name_3" => "request header value 3" },
|
481
|
+
parameters: { "parameter_name_2" => "updated parameter value 2",
|
482
|
+
"parameter_name_3" => "parameter value 3" },
|
483
|
+
body: "updated body value"
|
396
484
|
}
|
397
485
|
end
|
486
|
+
|
487
|
+
before(:example) { fixture.request = request_overrides }
|
488
|
+
|
489
|
+
it "overrides any defaults with values established in the stub" do
|
490
|
+
expect_stub_to_be_created_with(
|
491
|
+
request: {
|
492
|
+
uri: "/some/updated/uri",
|
493
|
+
headers: { "request_header_name_1" => "request header value 1",
|
494
|
+
"request_header_name_2" => "updated request header value 2",
|
495
|
+
"request_header_name_3" => "request header value 3" },
|
496
|
+
parameters: { "parameter_name_1" => "parameter value 1",
|
497
|
+
"parameter_name_2" => "updated parameter value 2",
|
498
|
+
"parameter_name_3" => "parameter value 3" },
|
499
|
+
body: "updated body value"
|
500
|
+
}
|
501
|
+
)
|
502
|
+
|
503
|
+
subject
|
504
|
+
end
|
505
|
+
|
506
|
+
end
|
507
|
+
|
508
|
+
describe "the built response payload" do
|
509
|
+
|
398
510
|
let(:response_overrides) do
|
399
511
|
{
|
400
512
|
status: 302,
|
401
|
-
headers: { "
|
402
|
-
|
513
|
+
headers: { "response_header_name_2" => "updated response header value 2",
|
514
|
+
"response_header_name_3" => "response header value 3" },
|
515
|
+
body: "updated body"
|
403
516
|
}
|
404
517
|
end
|
405
518
|
|
406
519
|
before(:example) { fixture.response = response_overrides }
|
407
520
|
|
408
|
-
it "
|
521
|
+
it "overrides any defaults with values established in the stub" do
|
409
522
|
expect_stub_to_be_created_with(
|
410
523
|
response: {
|
411
524
|
status: 302,
|
412
|
-
headers: { "
|
413
|
-
"
|
414
|
-
"
|
415
|
-
body: "
|
525
|
+
headers: { "response_header_name_1" => "response header value 1",
|
526
|
+
"response_header_name_2" => "updated response header value 2",
|
527
|
+
"response_header_name_3" => "response header value 3" },
|
528
|
+
body: "updated body",
|
416
529
|
delay_in_seconds: 8
|
417
530
|
}
|
418
531
|
)
|
@@ -422,28 +535,16 @@ describe HttpStub::Configurer::DSL::StubBuilder do
|
|
422
535
|
|
423
536
|
end
|
424
537
|
|
425
|
-
|
426
|
-
|
427
|
-
context "when a trigger is added" do
|
428
|
-
|
429
|
-
include_context "triggers one stub"
|
430
|
-
|
431
|
-
it "creates a stub payload with the provided trigger builder" do
|
432
|
-
expect_stub_to_be_created_with(triggers: [ trigger_builder ])
|
433
|
-
|
434
|
-
subject
|
435
|
-
end
|
436
|
-
|
437
|
-
end
|
538
|
+
describe "the built response triggers" do
|
438
539
|
|
439
|
-
|
540
|
+
let(:triggers) { (1..3).map { instance_double(HttpStub::Configurer::DSL::StubBuilder) } }
|
440
541
|
|
441
|
-
|
542
|
+
it "combines any defaults with values values established in the stub" do
|
543
|
+
expect_stub_to_be_created_with(triggers: trigger_defaults + triggers)
|
442
544
|
|
443
|
-
|
444
|
-
|
545
|
+
subject
|
546
|
+
end
|
445
547
|
|
446
|
-
subject
|
447
548
|
end
|
448
549
|
|
449
550
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -21,7 +21,7 @@ require_relative '../examples/configurer_with_trivial_scenarios'
|
|
21
21
|
require_relative '../examples/configurer_with_exhaustive_scenarios'
|
22
22
|
require_relative '../examples/configurer_with_initialize_callback'
|
23
23
|
require_relative '../examples/configurer_with_complex_initializer'
|
24
|
-
require_relative '../examples/
|
24
|
+
require_relative '../examples/configurer_with_server_defaults'
|
25
25
|
require_relative '../examples/configurer_with_stub_triggers'
|
26
26
|
require_relative '../examples/configurer_with_file_responses'
|
27
27
|
require_relative '../examples/configurer_with_stub_request_body'
|
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.19.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matthew Ueckerman
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-06-
|
12
|
+
date: 2015-06-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
@@ -351,6 +351,7 @@ files:
|
|
351
351
|
- "./spec/acceptance/configurer_part_spec.rb"
|
352
352
|
- "./spec/acceptance/endpoint_template_spec.rb"
|
353
353
|
- "./spec/acceptance/scenario_spec.rb"
|
354
|
+
- "./spec/acceptance/server_defaults_spec.rb"
|
354
355
|
- "./spec/acceptance/stub_body_request_matching_spec.rb"
|
355
356
|
- "./spec/acceptance/stub_control_values_spec.rb"
|
356
357
|
- "./spec/acceptance/stub_spec.rb"
|
@@ -461,6 +462,7 @@ test_files:
|
|
461
462
|
- "./spec/acceptance/configurer_part_spec.rb"
|
462
463
|
- "./spec/acceptance/endpoint_template_spec.rb"
|
463
464
|
- "./spec/acceptance/scenario_spec.rb"
|
465
|
+
- "./spec/acceptance/server_defaults_spec.rb"
|
464
466
|
- "./spec/acceptance/stub_body_request_matching_spec.rb"
|
465
467
|
- "./spec/acceptance/stub_control_values_spec.rb"
|
466
468
|
- "./spec/acceptance/stub_spec.rb"
|