예제 #1
0
  @Test
  public void hashcode_equals_should_work() {
    Zone zone = new Zone();
    zone.setDescription("Test description");
    zone.setInfraId(1);
    zone.setIp(0xC0A80001L);

    Zone zone2 = new Zone();
    zone2.setDescription("Test description2");
    zone2.setInfraId(2);
    zone2.setIp(0xC0A80002L);

    Assert.assertEquals(zone, zone);
    Assert.assertNotEquals(zone, null);
    Assert.assertNotEquals(null, zone2);
    Assert.assertNotEquals(zone, new String());

    Assert.assertNotEquals(zone, zone2);
    Assert.assertNotEquals(zone.hashCode(), zone2.hashCode());

    zone2.setInfraId(1);

    Assert.assertNotEquals(zone, zone2);
    Assert.assertNotEquals(zone.hashCode(), zone2.hashCode());

    zone2.setIp(0xC0A80001L);

    Assert.assertEquals(zone, zone2);
    Assert.assertEquals(zone.hashCode(), zone2.hashCode());

    zone.setInfraId(null);

    Assert.assertNotEquals(zone, zone2);
    Assert.assertNotEquals(zone.hashCode(), zone2.hashCode());

    zone2.setInfraId(null);
    zone.setIp(null);

    Assert.assertNotEquals(zone, zone2);
    Assert.assertNotEquals(zone.hashCode(), zone2.hashCode());

    zone2.setIp(null);

    Assert.assertEquals(zone, zone2);
    Assert.assertEquals(zone.hashCode(), zone2.hashCode());
  }