mysterious difference between rake test and ruby

Posted by standup75 on Stack Overflow See other posts from Stack Overflow or by standup75
Published on 2010-12-23T23:39:57Z Indexed on 2010/12/23 23:54 UTC
Read the original article Hit count: 181

Filed under:
|
|

Here is the mysterious:

I have a scope which looks like this (in Image.rb)

  scope :moderate_all, delegates.where("moderation_flag = #{$moderation_flags[:not_moderated]}")

Note that delegates is another scope that I am defining before moderate_all

When I leave it like this, I can run my test that checks if an image has been "checked-out" it is not available anymore. I don't put the code of the test, because it does not matter actually.

With this code, when I run "rake test" it fails, but if I do "ruby test/unit/image_test.rb" it works! I was thinking I am starting to have a bad day. Then I tried

  scope :moderate_all, lambda {
    delegates.where("moderation_flag = #{$moderation_flags[:not_moderated]}")
  }

And "rake test" passes!

So my problem is solved, but why?

© Stack Overflow or respective owner

Related posts about ruby-on-rails

Related posts about testing