title: Unit testing: why is the expected argument always first in equality tests?
body: <p>Why is it that every unit testing framework (that I know of) requires the expected value in equality tests to always be the first argument:</p>
  <pre><code>Assert.AreEqual(42, Util.GetAnswerToLifeTheUniverseAndEverything());
  
  assertEquals(42, Util.GetAnswerToLifeTheUniverseAndEverything());
  </code></pre>
  <p>etc.</p>
  <p>I'm quite used to it now, but every coder I try to teach unit testing makes the mistake of reversing the arguments, which I understand perfectly. Google didn't help, maybe one of the hard-core unit-testers here knows the answer?</p>