expected true to respond to true?

Luiz E. picture Luiz E. · Jun 6, 2014 · Viewed 10.5k times · Source

I upgraded my rspec-rails to 3.0.1 and now I'm seeing this error on all of my tests

 Failure/Error: Sidekiq::Status::complete?(json.jid).should be_true
  expected true to respond to `true?`

I can't find the solution nor what I'm missing.

Answer

Santhosh picture Santhosh · Jun 6, 2014

From rspec 3.0, be_true is renamed to be_truthy and be_false to be_falsey

The behavior has not changed. So

(nil).should be_falsey
(false).should be_falsey

will pass, and

(anything other than nil or false).should be_truthy

will also pass

From the changelog 3.0.0.beta1 / 2013-11-07

Rename be_true and be_false to be_truthy and be_falsey. (Sam Phippen)