有没有办法获取 FakeWeb 中注册的 URI 列表?当我注册一个这样的:
FakeWeb.register_uri(:get, url, body: expected_response)
看起来它应该在 it keeps track of it internally 以来的某个地方可用。 ,但我无法从外部追踪它。类似 FakeWeb.registered_uris
的东西,但显然这不起作用。
最佳答案
尝试
FakeWeb::Registry.instance.uri_map
这将返回带有 FakeWeb::Responder
对象的嵌套哈希。
当您使用 #register_uri 注册 uri 时,FakeWeb 会创建一个 FakeWeb::Responder
来保存该 uri,然后将其存储在 FakeWeb::Registry
单例中。
您最终必须迭代结果映射并从中获取 uri:
FakeWeb::Registry.instance.uri_map.map { |_, v| v.map { |_, w| w } }.flatten.collect { |e| e.uri }.uniq
希望这有帮助。
关于ruby-on-rails - 注册到 FakeWeb 的 URI 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10922108/