我正在尝试在多个操作系统中测试类方法的行为,而实际上不必在它们上运行代码。我正在使用操作系统 Rubygem
我想在 RSpec 中测试这个函数的 3 种情况:
def get_os()
if OS.linux?
return "linux#{OS.bits}"
elsif OS.mac?
return "mac"
elsif OS.doze?
return "win"
end
您可以使用以下命令运行它:
git clone git://github.com/trinitronx/rspec-stubmock-test.git
cd rspec-stubmock-test/
bundle install
rspec
我尝试手动覆盖这些OS.*?
方法,但它似乎不起作用。我怎样才能做到这一点?