我没有任何代码,因为这只是一个假设的问题,但您如何在rspec中访问和操作实例变量?
例如,如果你在一个类的initialize方法中有一个@counter变量,你怎么能写一个测试说如果@counter是一个特定的数字,那么某个方法应该返回true。如果它等于不同的数字,那么该方法应该返回false。
答案 0 :(得分:1)
describe Foo do
context 'When counter is even' do
let( :foo ){ Foo.new(4) }
specify '#even?' do
expect( foo.even? ).to be_true
end
end
end
根据您的问题,初始化方法中设置了@counter
。因此,#even?
方法会检查@counter
。