Mocha を使用して、2 つの個別の値を返す必要がある同じメソッドをスタブ化しています。私が何をしても、2 つの値のうち 1 つしか返されないため、rspec テストの 1 つが常に失敗します。スタブが適切なタイミングで正しい値を返すようにするにはどうすればよいですか?
コード:
describe "#method" do
it "has something" do
hash = { "allow_sharing" => "1"}
CustomClass.stubs(:app_settings).returns(hash)
get 'method', :format => :json
JSON.parse(response.body).count.should eq(1)
end
it "does not have something" do
hash = { "allow_sharing" => "0"}
CustomClass.stubs(:app_settings).returns(hash)
get 'method', :format => :json
JSON.parse(response.body).count.should eq(0)
end
end
私もbefore
ブロックでこの方法を試しました。まだ運がありません。
describe "#method" do
before do
hash = { "allow_sharing" => "1"}
CustomClass.stubs(:app_settings).returns(hash)
end
it "has something" do
get 'method', :format => :json
JSON.parse(response.body).count.should eq(1)
end
# ... etc.