public void testCalendarMap() throws Exception { ObjectMapper mapper = new ObjectMapper(); Calendar c = Calendar.getInstance(); c.setTimeInMillis(123456000L); DateFormat fmt = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz"); String JSON = "{ \"" + fmt.format(c.getTime()) + "\" : \"\", \"" + new Date(0).getTime() + "\" : null }"; HashMap<Calendar, String> result = mapper.readValue(JSON, new TypeReference<HashMap<Calendar, String>>() {}); assertNotNull(result); assertEquals(HashMap.class, result.getClass()); assertEquals(2, result.size()); assertTrue(result.containsKey(c)); assertEquals("", result.get(c)); c.setTimeInMillis(0); assertTrue(result.containsKey(c)); assertNull(result.get(c)); }
public void testDateMap() throws Exception { ObjectMapper mapper = new ObjectMapper(); Date date1 = new Date(123456000L); DateFormat fmt = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz"); String JSON = "{ \"" + fmt.format(date1) + "\" : \"\", \"" + new Date(0).getTime() + "\" : null }"; HashMap<Date, String> result = mapper.readValue(JSON, new TypeReference<HashMap<Date, String>>() {}); assertNotNull(result); assertEquals(HashMap.class, result.getClass()); assertEquals(2, result.size()); assertTrue(result.containsKey(date1)); assertEquals("", result.get(new Date(123456000L))); assertTrue(result.containsKey(new Date(0))); assertNull(result.get(new Date(0))); }