Rails プロジェクトでいくつかの rspec 作業を行っています。なぜこれらの should_not be_nil 期待値が通過するのか不思議です。何かご意見は?
it "nils should be nil" do
@io = nil
@io.should_not be_nil #passes (shouldn't!!)
nil.should_not be_nil #passes (shouldn't!!)
@io.should == nil # passes
@io.should be_nil # passes
@io.nil?.should be_true # passes
#@io.nil?.should be_false # fails as expected
end
更新:ここでのフィードバックに基づいて、この原因を特定することができました (これは にロードされたものによるものですspec_helper
)。私は、これらのオーバーライドが本当に必要かどうかを確認するために、開発者と話し合う予定.nil?
のスウィズリングが不十分であることが原因であると考えています。.blank?
私の物を確認するのを手伝ってくれた人に感謝します。