gpt4 book ai didi

ruby - 在 Balanced Ruby 客户端中使用 Faraday 停止网络调用的最佳方法是什么?

转载 作者:太空宇宙 更新时间:2023-11-03 16:07:01 24 4
gpt4 key购买 nike

我不是特别熟悉 Faraday 的 stubbing API,但是通过对它和 Balanced::Client 的来源的随意检查,看起来我需要能够为 Balanced::Client.conn 提供我自己的值(value).

这是通过库中的配置选项支持 stub 连接模式的一步,而打开该切换开关,我可以只使用 Balanced::Client.conn作为对我期望在测试期间发生的任何请求进行 stub 的句柄。

对于各种平衡 API 调用和/或一些内置 stub 响应用作我自己的 stub 的模板的示例响应主体也将非常有用。

这看起来是一个合理的计划,还是我走错了方向?我该怎么做?

最佳答案

我建议看一下 unit tests 是如何实现的对于balanced-ruby库是写的。他们使用 VCR录制和重播网络通话。

虽然与您的确切问题不相关,但您还可以通过对从 Resource 类继承的任何对象使用 construct_from_response 方法来创建对象的一次性实例资源.rb。这允许您像这样创建对象的单个实例:

1.9.3p194 :034 > payload = {:name"=>"Bob", :uri=>"/v1/marketplaces/M123/accounts/fake"} 
1.9.3p194 :035 > account = Balanced::Account.construct_from_response payload
1.9.3p194 :036 > account.name
=> "Bob"

请注意,负载中的 uri 参数是必需的,否则库将尝试从服务器查找对象。

关于ruby - 在 Balanced Ruby 客户端中使用 Faraday 停止网络调用的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11890336/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com