[Pharo-project] I am the only one who finds #assert:equals: oppostite to expected?

Peter Hugosson-Miller oldmanlink at gmail.com
Sat Apr 30 17:00:27 CEST 2011

It feels backwards to me too, in the same way that "one plus one equals two" feels more natural than "two equals one plus one".


On 30 apr 2011, at 16:20, Mariano Martinez Peck <marianopeck at gmail.com> wrote:

> Hi guys. I always code my tests something like this:
> testBlah
>     | universalAnswer |
>     universalAnswer := 30.
>     universalAnswer := universalAnswer + 11.
>     self assert: universalAnswer equals: 42.
> In this case, 42 is the "expected" and "universalAnswer" is the "actual" value. 
> I feel weird writing like this:
>     self assert: 42 equals: universalAnswer.
> I don't know why...but I do..the same as when doing should: []  raise: Error.
> In that case you put the "actual" first and the "expected" at the end...
> ok....the "problem" is that assert:equals:  is in fact:   asserts: expected equals: actual  instead of 
> asserts: actual equals: expected
> So, with my test I would receive a description in the debugger that says "'Expected 41 but was 42.'"
> which is completely the opposite. Of course, if I write my tests in the way I don't like, that is:
>  self assert: 42 equals: universalAnswer.
> then i got the correct message "'Expected 42 but was 41.'"
> I don't pretend pharo change this because I guess it is standard, and blah blah blah. But senders of #assert:equals: should both, some written as mine (so the message is incorrect for them) and some correct. 
> In addition, I think it is a problem of the selector name. If we could make it clearer, the won't be necessary to confuse "actual" with "expected". 
> Cheers
> -- 
> Mariano
> http://marianopeck.wordpress.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gforge.inria.fr/pipermail/pharo-project/attachments/20110430/59a058f5/attachment.htm>

More information about the Pharo-project mailing list