### Question:
ProdData { @Override public int hashCode() { return new HashCodeBuilder().append(code) .append(name) .append(version) .append(os_code) .append(mfg_code) .append(language) .append(app_type) .toHashCode(); } ProdData(int code, String name, String version, String os_code,
                  String mfg_code, String language, String app_type); @Override String toString(); @Override boolean equals(Object o); @Override int hashCode(); final int code; final String name; final String version; final String os_code; final String mfg_code; final String language; final String app_type; }### Answer:
@Test public void hashCodeSelf() { final ProdData pd = new ProdData(code, name, version, os_code, mfg_code, language, app_type); assertTrue(pd.hashCode() == pd.hashCode()); }
@Test public void hashCodeSame() { final ProdData a = new ProdData(code, name, version, os_code, mfg_code, language, app_type); final ProdData b = new ProdData(code, name, version, os_code, mfg_code, language, app_type); assertTrue(a.hashCode() == b.hashCode()); }
@Test public void hashCodeDifferent() { final ProdData a = new ProdData( code, name, version, os_code, mfg_code, language, app_type); final ProdData b = new ProdData( code, name, version, os_code, "gammy anded", language, app_type); assertTrue(a.hashCode() != b.hashCode()); }