Search code examples
ruby-on-railsruby-on-rails-4rspecrspec-railsrspec3

expected true to respond to true?


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.


Solution

  • 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)