我有这样的东西:
class Something
def some_method
%x{xyz}
end
end
在规范中:
describe Something do
describe "#some_method" do
it "should execute xyz command in a subshell" do
x = Something.new
#What should come here?
x.some_method
end
end
end
我知道如何模拟“系统”。但我的问题是针对 "%x"的。那么如何模拟 %x 呢?
最佳答案
您要查找的行是
x.should_receive(:`).once.with('xyz')
反引号实际上是一个被调用的方法,它们之间的任何内容都作为字符串参数传递。 %x{...}
只是反引号的语法变体,因此会导致相同的方法调用。
关于ruby - 我如何在测试中模拟 %x?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13052650/