@Test public void testDeserialization() { // setup: final String input = "\"2011-01-03T10:52:32.587+01:00\""; final Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("GMT+01:00")); // exercise: final Date date = GsonUtil.deserialize(input, Date.class); calendar.setTime(date); // verify: assertEquals(2011, calendar.get(Calendar.YEAR)); assertEquals(0, calendar.get(Calendar.MONTH)); assertEquals(3, calendar.get(Calendar.DAY_OF_MONTH)); assertEquals(10, calendar.get(Calendar.HOUR_OF_DAY)); assertEquals(52, calendar.get(Calendar.MINUTE)); assertEquals(32, calendar.get(Calendar.SECOND)); assertEquals(587, calendar.get(Calendar.MILLISECOND)); assertEquals(3600 * 1000, calendar.get(Calendar.ZONE_OFFSET)); }