@Test
@SuppressWarnings("EqualsIncompatibleType") // For ErrorProne
public void testEquals() {

  Assert.assertEquals(DEFAULT_QUALIFIED_RECOMMENDATION, DEFAULT_QUALIFIED_RECOMMENDATION);
  Assert.assertEquals(DEFAULT_QUALIFIED_RECOMMENDATION, CLONED_DEFAULT_QUALIFIED_RECOMMENDATION);
  Assert.assertNotSame(DEFAULT_QUALIFIED_RECOMMENDATION, CLONED_DEFAULT_QUALIFIED_RECOMMENDATION);
  for (QualifiedRecommendation mutation : ALL_MUTATIONS) {
    Assert.assertNotEquals(DEFAULT_QUALIFIED_RECOMMENDATION, mutation);
  }
  Assert.assertFalse(DEFAULT_QUALIFIED_RECOMMENDATION.equals(null));
  Assert.assertFalse(DEFAULT_QUALIFIED_RECOMMENDATION.equals("foo"));
}