title: Assert_called_once_with need to check if the instances in the call are with the same info
body: <p>I'm trying to use assert_called_once_with from unittest.mock <a href="https://docs.python.org/3/library/unittest.mock.html#unittest.mock.Mock.assert_called_once_with" rel="nofollow noreferrer">https://docs.python.org/3/library/unittest.mock.html#unittest.mock.Mock.assert_called_once_with</a></p>
  <p>But I want to check if 2 instances of objects have been passed with te correct attributes.</p>
  <p>So inside the class I overrided the <code>__eq__</code> func:</p>
  <pre class="lang-py prettyprint-override"><code>    def __eq__(self, other):
          return (
              self.id == other.id
              and self.users == other.users
          )
  </code></pre>
  <p>And in the code I used like this</p>
  <pre class="lang-py prettyprint-override"><code>        mock_add_user.assert_called_once_with(context_fix, expected_user_obj1, expected_user_obj2, users)
  
  </code></pre>
  <p>But I keep getting an error and the teste keeps comparing the repr of the instance, like this</p>
  <pre><code>&lt;app.domain.model.load_md.Load object at 0x10cb7d7d0&gt;
  </code></pre>
  <pre class="lang-py prettyprint-override"><code>E           AssertionError: Expected call: add_user(&lt;app.infrastructure.context.Context object at 0x10cb7da50&gt;, &lt;app.domain.model.load_md.Load object at 0x10cb7d7d0&gt;, &lt;app.domain.model.load_md.Load object at 0x10cb7d550&gt;, [1, 2, 3, 2])
  E           Actual call: add_user(&lt;app.infrastructure.context.Context object at 0x10cb7da50&gt;, &lt;app.domain.model.load_md.Load object at 0x10ca7f5d0&gt;, &lt;app.domain.model.load_md.Load object at 0x10cd1e650&gt;, [1, 2, 3, 2])
  </code></pre>
  <p>I really need a way to assert if an instance of a object has being passed as an parameter of the function with the correct attributes filled.</p>