### Question:
ActionConfig { @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + x; result = prime * result + y; result = prime * result + width; result = prime * result + height; result = prime * result + name.hashCode(); result = prime * result + description.hashCode(); return result; } ActionConfig(String name, String description, int x, int y, int width, int height); static ActionConfig imports(Configurer configurer); static ActionConfig imports(Xml root); static Xml exports(ActionConfig config); String getName(); String getDescription(); int getX(); int getY(); int getWidth(); int getHeight(); @Override int hashCode(); @Override boolean equals(Object object); @Override String toString(); static final String NODE_ACTION; static final String ATT_NAME; static final String ATT_DESCRIPTION; static final String ATT_X; static final String ATT_Y; static final String ATT_WIDTH; static final String ATT_HEIGHT; }### Answer:
@Test void testHashCode() { final ActionConfig action = new ActionConfig("a", "b", 0, 1, 2, 3); assertHashEquals(action, new ActionConfig("a", "b", 0, 1, 2, 3)); assertHashNotEquals(action, new ActionConfig("", "b", 0, 1, 2, 3)); assertHashNotEquals(action, new ActionConfig("a", "", 0, 1, 2, 3)); assertHashNotEquals(action, new ActionConfig("a", "b", -1, 1, 2, 3)); assertHashNotEquals(action, new ActionConfig("a", "b", 0, -1, 2, 3)); assertHashNotEquals(action, new ActionConfig("a", "b", 0, 1, -1, 3)); assertHashNotEquals(action, new ActionConfig("a", "b", 0, 1, 2, -1)); }