适用于RSpec的AWS Kinesis存根

时间:2018-07-17 14:19:51

标签: ruby-on-rails ruby amazon-web-services amazon-kinesis

我正在编写Rails应用的规范。并且需要存根来自aws kinesis服务的请求。这是stub_helper中的stub代码

pd.merge

我遇到了问题:

  def stub_kinesis_client
    kinesis = Aws::Kinesis::Client.new(stub_responses: true)
    kinesis.describe_stream(stream_name: 'demo_stream')
  end

在模拟响应中似乎不存在has_more_shards。你能帮忙吗?

1 个答案:

答案 0 :(得分:1)

您需要为kinesis客户端提供对describe_stream方法的响应。

kinesis.stub_responses(:describe_stream, stream_description: {})

请注意,这将失败,因为它没有在stream_description中提供任何必需的属性,但是它引发的异常将告诉您哪些属性是必需的。