Ik heb mijn rspec-rails
geüpgraded naar 3.0.1 en nu zie ik deze fout bij al mijn tests
Failure/Error: Sidekiq::Status::complete?(json.jid).should be_true
expected true to respond to `true?`
Ik kan de oplossing niet vinden en ook niet wat ik mis.
Antwoord 1, autoriteit 100%
Vanaf rspec 3.0 wordt be_true
hernoemd naar be_truthy
en be_false
naar be_falsey
Het gedrag is niet veranderd. Dus
(nil).should be_falsey
(false).should be_falsey
zal slagen, en
(anything other than nil or false).should be_truthy
zal ook slagen
Van de changelog 3.0.0.beta1 / 2013-11-07
Hernoem be_true en be_false in be_truthy en be_falsey. (Sam Phippen)
Antwoord 2
Om veel bestaande specificaties niet te herschrijven, kun je dit toevoegen aan spec_helper (het schaadt mijn gevoel voor harmonie maar bespaart tijd):
def true.true?
true
end
def true.false?
false
end
def false.true?
false
end
def false.false?
true
end