木偶+;希拉+;rspec-can';无法启用合并行为功能
我正试图用rspec测试我的puppet+hiera模块,但有一件事卡住了。木偶+;希拉+;rspec-can';无法启用合并行为功能,rspec,merge,puppet,Rspec,Merge,Puppet,我正试图用rspec测试我的puppet+hiera模块,但有一件事卡住了。 我无法使:合并行为:更深的功能在我的测试中工作。 以下是我的测试示例: require 'spec_helper' def merge_nil(a,b) if a.nil? return b end if b.nil? return a end return a.merge(b) end describe 'check' do path = F
我无法使:合并行为:更深的功能在我的测试中工作。 以下是我的测试示例:
require 'spec_helper'
def merge_nil(a,b)
if a.nil?
return b
end
if b.nil?
return a
end
return a.merge(b)
end
describe 'check' do
path = File.expand_path(File.join(__FILE__, '..', '..', 'fixtures', 'hieradata'))
shared_examples 'container' do |common, test|
res = merge_nil(common['site_users'], test['site_users'])
it do
should contain_notify('aa').with('message' => res)
end
end
context 'deeper_change' do
let(:hiera_config) do{
:backends => ['yaml'],
:hierarchy => [
'test',
'common'],
:yaml => {
:datadir => path
},
:merge_behavior => deeper
}
end
common = YAML.load_file(File.join(path,'common.yaml'))
test = YAML.load_file(File.join(path,'test.yaml'))
it_behaves_like "container", common, test
end
end
hiera文件:
common.yaml:
test.yaml:
在清单中,我只是通知站点用户
测试没有失败,但应该失败。因为我在函数merge\u nil的ruby代码中使用Hash.merge,并要求Hiera使用deep\u merge。结果必然不同
我试图要求“深层合并”宝石内部测试
尝试
:merge_behavior => deeper
:merge_behavior => 'deeper'
:merge_behavior => :deeper
没有什么变化
我错在哪里
p、 美国傀儡本身也能正常工作
:merge_behavior: deeper
内海拉·亚马尔
:merge_behavior => deeper
:merge_behavior => 'deeper'
:merge_behavior => :deeper
:merge_behavior: deeper