我的Chef cookbook引发了一个编译时错误,我希望在ChefSpec测试中得到这个错误。
Cookbook Snippet
if !windows_version.windows_server_2012_r2?
error = "Not supported on this version of Windows"
raise error
end
windows_package 'Server2012 Only Package' do
action :install
end
单元测试代码段
it 'Throws error' do
expect(chef_run).to raise_error
end
但这不会发现错误并通过测试。我收到编译时错误,测试失败。
答案 0 :(得分:0)
您必须使用大括号when testing exception with RSpec:
it 'Throws error' do
expect { chef_run }.to raise_error
end