Module: Aws::AsyncClientStubs
- Includes:
- ClientStubs
- Defined in:
- lib/aws-sdk-core/async_client_stubs.rb
Defined Under Namespace
Classes: StubStream
Instance Method Summary collapse
Methods included from ClientStubs
#api_requests, #next_stub, #stub_data, #stub_responses
Instance Method Details
#send_events ⇒ Object
43 44 45 46 47 48 49 50 51 |
# File 'lib/aws-sdk-core/async_client_stubs.rb', line 43 def send_events if config.stub_responses @send_events else msg = 'This method is only implemented for stubbed clients, and is '\ 'available when you enable stubbing in the constructor with `stub_responses: true`' raise NotImplementedError.new(msg) end end |
#setup_stubbing ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/aws-sdk-core/async_client_stubs.rb', line 9 def setup_stubbing @stubs = {} @stub_mutex = Mutex.new if Hash === @config.stub_responses @config.stub_responses.each do |operation_name, stubs| apply_stubs(operation_name, Array === stubs ? stubs : [stubs]) end end # When a client is stubbed allow the user to access the requests made @api_requests = [] # allow to access signaled events when client is stubbed @send_events = [] requests = @api_requests send_events = @send_events self.handle do |context| if input_stream = context[:input_event_stream_handler] stub_stream = StubStream.new stub_stream.send_events = send_events input_stream.event_emitter.stream = stub_stream input_stream.event_emitter.validate_event = context.config.validate_params end requests << { operation_name: context.operation_name, params: context.params, context: context } @handler.call(context) end end |