Class: HttpStub::Configurer::DSL::Server
- Inherits:
-
Object
- Object
- HttpStub::Configurer::DSL::Server
- Includes:
- ScenarioActivator, StubBuilderProducer
- Defined in:
- lib/http_stub/configurer/dsl/server.rb
Instance Attribute Summary collapse
-
#host ⇒ Object
Returns the value of attribute host.
-
#port ⇒ Object
Returns the value of attribute port.
Instance Method Summary collapse
- #add_activator! {|builder| ... } ⇒ Object
- #add_scenario!(name) {|builder| ... } ⇒ Object
- #add_scenario_with_one_stub!(name, builder = nil, &block) ⇒ Object
- #add_stub!(builder = nil, &block) ⇒ Object
- #base_uri ⇒ Object
- #clear_scenarios! ⇒ Object
- #clear_stubs! ⇒ Object
- #enable(*features) ⇒ Object
- #enabled?(feature) ⇒ Boolean
- #endpoint_template(&block) ⇒ Object
- #external_base_uri ⇒ Object
- #has_started! ⇒ Object
-
#initialize(server_facade) ⇒ Server
constructor
A new instance of Server.
- #recall_stubs! ⇒ Object
- #remember_stubs ⇒ Object
- #request_defaults=(args) ⇒ Object
- #response_defaults=(args) ⇒ Object
Methods included from ScenarioActivator
Methods included from StubBuilderProducer
Constructor Details
#initialize(server_facade) ⇒ Server
Returns a new instance of Server.
11 12 13 14 15 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 11 def initialize(server_facade) @server_facade = server_facade @default_stub_builder = HttpStub::Configurer::DSL::StubBuilder.new @enabled_features = [] end |
Instance Attribute Details
#host ⇒ Object
Returns the value of attribute host.
9 10 11 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 9 def host @host end |
#port ⇒ Object
Returns the value of attribute port.
9 10 11 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 9 def port @port end |
Instance Method Details
#add_activator! {|builder| ... } ⇒ Object
66 67 68 69 70 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 66 def add_activator!(&_block) builder = HttpStub::Configurer::DSL::StubActivatorBuilder.new(@default_stub_builder) yield builder @server_facade.define_scenario(builder.build) end |
#add_scenario!(name) {|builder| ... } ⇒ Object
50 51 52 53 54 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 50 def add_scenario!(name, &_block) builder = HttpStub::Configurer::DSL::ScenarioBuilder.new(@default_stub_builder, name) yield builder @server_facade.define_scenario(builder.build) end |
#add_scenario_with_one_stub!(name, builder = nil, &block) ⇒ Object
56 57 58 59 60 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 56 def add_scenario_with_one_stub!(name, builder=nil, &block) add_scenario!(name) do |scenario| scenario.add_stub!(builder) { |stub| stub.invoke(&block) } end end |
#add_stub!(builder = nil, &block) ⇒ Object
45 46 47 48 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 45 def add_stub!(builder=nil, &block) resolved_builder = builder || self.build_stub(&block) @server_facade.stub_response(resolved_builder.build) end |
#base_uri ⇒ Object
17 18 19 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 17 def base_uri "http://#{host}:#{port}" end |
#clear_scenarios! ⇒ Object
84 85 86 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 84 def clear_scenarios! @server_facade.clear_scenarios end |
#clear_stubs! ⇒ Object
80 81 82 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 80 def clear_stubs! @server_facade.clear_stubs end |
#enable(*features) ⇒ Object
25 26 27 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 25 def enable(*features) @enabled_features = features end |
#enabled?(feature) ⇒ Boolean
29 30 31 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 29 def enabled?(feature) @enabled_features.include?(feature) end |
#endpoint_template(&block) ⇒ Object
62 63 64 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 62 def endpoint_template(&block) HttpStub::Configurer::DSL::EndpointTemplate.new(self).tap { |template| template.invoke(&block) } end |
#external_base_uri ⇒ Object
21 22 23 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 21 def external_base_uri ENV["STUB_EXTERNAL_BASE_URI"] || base_uri end |
#has_started! ⇒ Object
41 42 43 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 41 def has_started! @server_facade.server_has_started end |
#recall_stubs! ⇒ Object
76 77 78 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 76 def recall_stubs! @server_facade.recall_stubs end |
#remember_stubs ⇒ Object
72 73 74 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 72 def remember_stubs @server_facade.remember_stubs end |
#request_defaults=(args) ⇒ Object
33 34 35 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 33 def request_defaults=(args) @default_stub_builder.match_requests(args) end |
#response_defaults=(args) ⇒ Object
37 38 39 |
# File 'lib/http_stub/configurer/dsl/server.rb', line 37 def response_defaults=(args) @default_stub_builder.respond_with(args) end |