@Test
public void testHashCodeAndEquals() throws Exception {
final Cache.Key k1 = new Cache.Key(1, "test");
final Cache.Key k2 = new Cache.Key(2, "test");
final Cache.Key k3 = new Cache.Key(1, "test1");
final Cache.Key k4 = new Cache.Key(3, "test1");
final Cache.Key k5 = new Cache.Key(1, "test");
assertNotEquals(k1.hashCode(), k2.hashCode());
assertNotEquals(k1.hashCode(), k3.hashCode());
assertNotEquals(k1.hashCode(), k4.hashCode());
assertEquals(k1.hashCode(), k5.hashCode());
assertNotEquals(k1, k2);
assertNotEquals(k1, k3);
assertNotEquals(k1, k4);
assertEquals(k1, k5);
assertNotEquals(k1.toString(), k2.toString());
assertNotEquals(k1.toString(), k3.toString());
assertNotEquals(k1.toString(), k4.toString());
assertEquals(k1.toString(), k5.toString());
}
}