2014-03-04 20 views
0

我磕碰的方法是這樣的:爲什麼這個應該返回零的存根方法返回別的東西?

User.stub_chain(:something).and_return(nil) 

當我的測試,我想這個代碼引發錯誤:

raise NameError if User.something.blank? 

的問題是,User.something.blank?true,即使應該用nil值來表示殘值。 User.something實際上是

#[RSpec::Mocks::Mock:0x795359c @name=nil] 

我該如何解決這個問題?

回答

1

沒有什麼不對您的存根代碼或你想測試代碼,就證明了以下測試通過:

require 'spec_helper' 

class User ; end 
describe "" do 
    it "" do 
    User.stub_chain(:something).and_return(nil) 
    expect { raise NameError if User.something.blank? }.to raise_error(NameError) 
    end 
end 

你必須在你的代碼的其他地方有一些問題。

相關問題