redesign hashcode test