title: Moq - Setup .Equals method to return false
body: <p>I can't figure out how to make Moq setup the .Equals method on objects. The following assertion fails:</p>
  
  <pre><code>var Song = new Mock&lt;ISong&gt;();
  Song.Setup(x =&gt; x.Equals(Song.Object))
      .Returns(false);
  
  Assert.IsFalse(Song.Object.Equals(Song.Object));
  </code></pre>
  
  <p>In other words, <code>Song.Object.Equals(Song.Object)</code> always returns true.</p>
  
  <p>Is it at all possible to mock the <code>.Equals</code> method with <code>Moq</code>? What am I missing?</p>