Hi
Just noticed that the behaviour of
@cow.should_not be_hungry
is not the same as
@cow.hungry?.should == false # nil also passes
Don’t know how this has escaped me for so long =)
What’s the thinking behind this? You can already do
@cow.hungry?.should(_not) be_nil
so surely it makes more sense for be_true and be_false to check for
booleans?
Ashley
–
http://www.patchspace.co.uk/
http://www.linkedin.com/in/ashleymoran
http://twitter.com/ashleymoran
On Fri, Mar 13, 2009 at 5:17 AM, Ashley M. >
What’s the thinking behind this? You can already do
@cow.hungry?.should(_not) be_nil
so surely it makes more sense for be_true and be_false to check for
booleans?
In common Ruby use, nil is usually treated the same as false, so
that’s the way the dynamic matcher works - it’s the most convenent.
You see explicit comparisons against true or false pretty rarely (in
my experience). Unless you have a specific need for a three-valued
truth system (e.g., true, false, and unknown), I think it’s best
practice not to assume that if !x == true, then x must == false, and
vice versa.
///ark
On 13 Mar 2009, at 15:42, Pat M. wrote:
@cow.hungry?.should == false # nil also passes
be_true and be_false do check for booleans but you didn’t use
either of them.
The expanded form of
@cow.should_not be_hungry
is
@cow.hungry?.should_not be
Pat
Like yoda sounds, that does
Matt W.
http://blog.mattwynne.net
On Mar 13, 2009, at 5:17 AM, Ashley M. wrote:
Don’t know how this has escaped me for so long =)
What’s the thinking behind this? You can already do
@cow.hungry?.should(_not) be_nil
so surely it makes more sense for be_true and be_false to check for
booleans?
be_true and be_false do check for booleans but you didn’t use
either of them.
The expanded form of
@cow.should_not be_hungry
is
@cow.hungry?.should_not be
Pat
On 13 Mar 2009, at 16:34, Matt W. wrote:
The expanded form of
@cow.should_not be_hungry
is
@cow.hungry?.should_not be
Pat
Like yoda sounds, that does
And enlightened, I am =)
Thanks Pat
–
http://www.patchspace.co.uk/
http://www.linkedin.com/in/ashleymoran
http://twitter.com/ashleymoran