@Test
  public void testHashCodeAndEquals(){
    MpackEntity entity1 = new MpackEntity();
    MpackEntity entity2 = new MpackEntity();

    Assert.assertEquals(entity1.hashCode(), entity2.hashCode());
    Assert.assertTrue(Objects.equals(entity1, entity2));

    entity1.setId(new Long(1));
    entity2.setId(new Long(2));
    Assert.assertNotSame(entity1.hashCode(), entity2.hashCode());
    Assert.assertFalse(Objects.equals(entity1, entity2));

    entity2.setId(new Long(1));
    Assert.assertEquals(entity1.hashCode(), entity2.hashCode());
    Assert.assertTrue(Objects.equals(entity1, entity2));

    entity1.setMpackName("testMpack1");
    entity2.setMpackName("testMpack2");
    Assert.assertNotSame(entity1.hashCode(), entity2.hashCode());
    Assert.assertFalse(Objects.equals(entity1, entity2));

    entity2.setMpackName("testMpack1");
    Assert.assertEquals(entity1.hashCode(), entity2.hashCode());
    Assert.assertTrue(Objects.equals(entity1, entity2));

    entity1.setMpackVersion("3.0");
    entity2.setMpackVersion("3.1");
    Assert.assertNotSame(entity1.hashCode(), entity2.hashCode());
    Assert.assertFalse(Objects.equals(entity1, entity2));

    entity2.setMpackVersion("3.0");
    Assert.assertEquals(entity1.hashCode(), entity2.hashCode());
    Assert.assertTrue(Objects.equals(entity1, entity2));
  }
Tests {@link MpackEntity#hashCode()} and {@link MpackEntity#equals(Object)}
ambari-server/src/test/java/org/apache/ambari/server/orm/entities/MpackEntityTest.java