title: Jest - check that item does not contain object with some property
body: <p>This is my response I need to check:</p>
  
  <pre><code>[
    { _id: 'dislike', count: 1 },
    { _id: 'hate', count: 1 },
    { _id: 'trivial', count: 1 }
  ]
  </code></pre>
  
  <p>Checking the existing values is easy:</p>
  
  <pre><code>expect(response.data).toContainEqual({ _id: 'trivial', count: 1 });
  expect(response.data).toContainEqual({ _id: 'dislike', count: 1 });
  expect(response.data).toContainEqual({ _id: 'hate', count: 1 });
  </code></pre>
  
  <p>But I need to check that the array does not contain object with { _id: 'neutral' }. Following test looked successful because the test passed:</p>
  
  <pre><code>expect(response.data).not.toContain({ _id: 'neutral', count: 0 });
  </code></pre>
  
  <p>But I wanted to ensure that it does what I expect so I added a test that shall fail. But it does not:</p>
  
  <pre><code>expect(response.data).not.toContain({ _id: 'hate', count: 1 });
  </code></pre>
  
  <p>Can you see? Both tests <code>toContainEqual</code> and <code>not.toContain</code> are valid. How can I ensure that the array does not hold object with a property <code>_id: 'neutral'</code>?</p>