我正在 Windows 上为 puppet 构建验收测试,我需要确保应用清单后某些安全策略确实发生了变化。我有
it 'should modify security policy' do
system("secedit.exe /export /areas SECURITYPOLICY /cfg C:\policy.txt")
File.read('C:\policy.txt').should include "Banner Title"
end
当我运行此命令时,我得到一个与我正在创建的文件相关的无此类文件或目录,这使我相信将策略拉入文件的初始命令并未运行。
我做错了什么吗?
Rspec 可能没有在您需要它查看的目录中查找。您可能需要在
rails_helper.rb
或 spec_helper.rb
文件中添加类似于以下内容的行:
Dir[Rails.root.join('app/policies/**/*.rb')].each { |f| require f }
问题是系统函数将运行我在主机上本地指定的任何命令,但我试图在其中运行木偶环境的虚拟机。最终使用 on(server, 'COMMAND') 函数代替。