Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby rspec webmock to_引发错误而非引发错误_Ruby_Rspec_Webmock - Fatal编程技术网

Ruby rspec webmock to_引发错误而非引发错误

Ruby rspec webmock to_引发错误而非引发错误,ruby,rspec,webmock,Ruby,Rspec,Webmock,我有以下代码片段和测试 类服务 状态(基本uri='localhost',基本认证={}) base_uri=“#{base_uri}/status” response=HTTParty.get(基本uri、基本认证:基本认证) 营救标准错误=>e 捆绑,撬动 引发“错误发生代码:#{response.code}msg:#{e.message}” 结束 结束 it'如果url无效,则应返回错误消息'do' 错误的url=”http://bar_url.com" 预期='发生错误' 存根请求(:

我有以下代码片段和测试

类服务
状态(基本uri='localhost',基本认证={})
base_uri=“#{base_uri}/status”
response=HTTParty.get(基本uri、基本认证:基本认证)
营救标准错误=>e
捆绑,撬动
引发“错误发生代码:#{response.code}msg:#{e.message}”
结束
结束
it'如果url无效,则应返回错误消息'do'
错误的url=”http://bar_url.com"
预期='发生错误'
存根请求(:get,错误的url)。
带有(标题:{'Authorization'=>'Basic YWRtaW46YWRtaW4='})。
提升(标准错误)
期望{Service.status(错误的url,{username:@username,password:@password}})引发{u错误(/#{expected}/)
结束
此代码基于。
因此,rspec总是引发异常:


expected/Error occurrent/,got#,因为服务调用了
“#{base_uri}/status”
,即
http://bar_url.com/status
但是
存根请求
是用
http://bar_url.com
仅,Net::HTTP.Get查找与此匹配的内容,而不是
http://bar_url/status

这就是为什么测试中没有出现错误的原因