From: Roger Pack Date: 2010-04-30T06:15:34+09:00 Subject: [ruby-core:29890] Re: [Backport #3219] assert now passes non-boolean result > It is all too easy to write assert(foo, bar) when you meant to write assert_equal(foo, bar). I have made the same mistake myself a number of times. Usually, no error will result because assert allows an optional second parameter (an alternate String to be printed when the assertion fails). > > I'd suggest that a better way to detect this problem is for assert to fail if a non-String is passed as the second parameter. This won't detect all cases of using assert when you meant assert_equal, but it should catch at lest 90%. Yeah something like that could work well. When would someone want to output something that's not a string?