Class: HttpStub::Configurer::Server::SessionFacade

Inherits:
Object
  • Object
show all
Defined in:
lib/http_stub/configurer/server/session_facade.rb

Instance Method Summary collapse

Constructor Details

#initialize(session_id, request_processor) ⇒ SessionFacade

Returns a new instance of SessionFacade.



11
12
13
14
15
# File 'lib/http_stub/configurer/server/session_facade.rb', line 11

def initialize(session_id, request_processor)
  @session_id          = session_id
  @request_processor   = request_processor
  @session_description = "session '#{session_id}'"
end

Instance Method Details

#activate(scenario_names) ⇒ Object



24
25
26
27
28
29
30
# File 'lib/http_stub/configurer/server/session_facade.rb', line 24

def activate(scenario_names)
  parameters = { http_stub_session_id: @session_id, "names[]" => scenario_names }
  @request_processor.submit(
    request:     REQUEST_FACTORY.post("scenarios/activate", parameters),
    description: "activating #{scenario_names.map { |name| "'#{name}'" }.join(", ")} in #{@session_description}"
  )
end

#clear_stubsObject



39
40
41
42
43
44
# File 'lib/http_stub/configurer/server/session_facade.rb', line 39

def clear_stubs
  @request_processor.submit(
    request:     REQUEST_FACTORY.delete("stubs", http_stub_session_id: @session_id),
    description: "clearing stubs in #{@session_description}"
  )
end

#deleteObject



46
47
48
49
50
51
# File 'lib/http_stub/configurer/server/session_facade.rb', line 46

def delete
  @request_processor.submit(
    request:     REQUEST_FACTORY.delete("sessions", http_stub_session_id: @session_id),
    description: "deleting #{@session_description}"
  )
end

#reset_stubsObject



32
33
34
35
36
37
# File 'lib/http_stub/configurer/server/session_facade.rb', line 32

def reset_stubs
  @request_processor.submit(
    request:     REQUEST_FACTORY.post("stubs/reset", http_stub_session_id: @session_id),
    description: "resetting stubs in #{@session_description}"
  )
end

#stub_response(stub) ⇒ Object



17
18
19
20
21
22
# File 'lib/http_stub/configurer/server/session_facade.rb', line 17

def stub_response(stub)
  @request_processor.submit(
    request:     REQUEST_FACTORY.multipart("stubs", stub, http_stub_session_id: @session_id),
    description: "stubbing '#{stub}' in #{@session_description}"
  )
end