module GrpcMock::GrpcStubAdapter::Adapter

To make hook point for GRPC::ClientStub github.com/grpc/grpc/blob/bec3b5ada2c5e5d782dff0b7b5018df646b65cb0/src/ruby/lib/grpc/generic/service.rb#L150-L186

Public Instance Methods

bidi_streamer(method, requests, *args, metadata: {}, **kwargs) click to toggle source
Calls superclass method
# File lib/grpc_mock/grpc_stub_adapter.rb, line 62
def bidi_streamer(method, requests, *args, metadata: {}, **kwargs)
  unless GrpcMock::GrpcStubAdapter.enabled?
    return super
  end

  r = requests.to_a       # FIXME: this may not work
  mock = GrpcMock.stub_registry.response_for_request(method, r)
  if mock
    mock.evaluate(r, nil) # FIXME: provide BidiCall equivalent
  elsif GrpcMock.config.allow_net_connect
    super
  else
    raise NetConnectNotAllowedError, method
  end
end
client_streamer(method, requests, *args, metadata: {}, **kwargs) click to toggle source

TODO

Calls superclass method
# File lib/grpc_mock/grpc_stub_adapter.rb, line 29
def client_streamer(method, requests, *args, metadata: {}, **kwargs)
  unless GrpcMock::GrpcStubAdapter.enabled?
    return super
  end

  r = requests.to_a       # FIXME: this may not work
  mock = GrpcMock.stub_registry.response_for_request(method, r)
  if mock
    call = GrpcMock::MockedCall.new(metadata: metadata)
    mock.evaluate(r, call.multi_req_view)
  elsif GrpcMock.config.allow_net_connect
    super
  else
    raise NetConnectNotAllowedError, method
  end
end
request_response(method, request, *args, metadata: {}, **kwargs) click to toggle source
Calls superclass method
# File lib/grpc_mock/grpc_stub_adapter.rb, line 12
def request_response(method, request, *args, metadata: {}, **kwargs)
  unless GrpcMock::GrpcStubAdapter.enabled?
    return super
  end

  mock = GrpcMock.stub_registry.response_for_request(method, request)
  if mock
    call = GrpcMock::MockedCall.new(metadata: metadata)
    mock.evaluate(request, call.single_req_view)
  elsif GrpcMock.config.allow_net_connect
    super
  else
    raise NetConnectNotAllowedError, method
  end
end
server_streamer(method, request, *args, metadata: {}, **kwargs) click to toggle source
Calls superclass method
# File lib/grpc_mock/grpc_stub_adapter.rb, line 46
def server_streamer(method, request, *args, metadata: {}, **kwargs)
  unless GrpcMock::GrpcStubAdapter.enabled?
    return super
  end

  mock = GrpcMock.stub_registry.response_for_request(method, request)
  if mock
    call = GrpcMock::MockedCall.new(metadata: metadata)
    mock.evaluate(request, call.single_req_view)
  elsif GrpcMock.config.allow_net_connect
    super
  else
    raise NetConnectNotAllowedError, method
  end
end