2012-09-28 13 views

cevap

8
specify 'something' do 
    x = double 
    x.should_receive(:foo=).with("whatever") 
    Something.should_receive(:create).and_yield(x) 
    # call the relevant method 
end 
+0

Mükemmel! Teşekkürler – stubotnik

+3

Bu iyi bir cevap, ama ben nitpick istiyorum. 'Something.should_receive (: create)' bir testtir - bir iddiasıdır - ama test etmek istediğini söyleyen stubotnik davranışı değildir. Bu yüzden, test kurulumunu 'Something.create' davranışı hakkında hiçbir şey iddia etmeyen 'Something.stub (: create) .and_return (x)' kullanarak test altındaki davranışlardan ayırt edeceğim. –

İlgili konular