*/
@Override
public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ }
if (obj instanceof TimeZoneAdapter) {
- obj = ((TimeZoneAdapter) obj).zone;
+ TimeZone anotherZone = ((TimeZoneAdapter) obj).zone;
+ return zone.equals(anotherZone);
}
- return zone.equals(obj);
+ return false;
}
/**
import com.ibm.icu.dev.test.TestFmwk;
import com.ibm.icu.impl.ICUData;
+import com.ibm.icu.impl.TimeZoneAdapter;
import com.ibm.icu.text.SimpleDateFormat;
import com.ibm.icu.util.BasicTimeZone;
import com.ibm.icu.util.Calendar;
data[2], id);
}
}
+
+ @Test
+ public void TestTimeZoneAdapterEquals() {
+ String idChicago = "America/Chicago";
+ TimeZone icuChicago = TimeZone.getTimeZone(idChicago);
+ TimeZone icuChicago2 = TimeZone.getTimeZone(idChicago);
+ java.util.TimeZone icuChicagoWrapped = TimeZoneAdapter.wrap(icuChicago);
+ java.util.TimeZone icuChicagoWrapped2 = TimeZoneAdapter.wrap(icuChicago2);
+
+ assertFalse("Compare TimeZone and TimeZoneAdapter", icuChicago.equals(icuChicagoWrapped));
+ assertFalse("Compare TimeZoneAdapter with TimeZone", icuChicagoWrapped.equals(icuChicago));
+ assertTrue("Compare two TimeZoneAdapters", icuChicagoWrapped.equals(icuChicagoWrapped2));
+ }
}
//eof