### Question:
TimeZoneXmlAdapter extends XmlAdapter<String, TimeZone> { @Override public TimeZone unmarshal(String v) throws Exception { return TimeZone.getTimeZone(v); }  @Override TimeZone unmarshal(String v); @Override String marshal(TimeZone v);  }### Answer:
@Test public void unmarshal_nullValue_throwsException_NullPointerException() { assertThrows( NullPointerException.class, new Executable() { @Override public void execute() throws Exception { objectUnderTest.unmarshal(null); } } ); }
@Test public void unmarshal_someDateString_someTimeZone() throws Exception { TimeZone expected = TimeZone.getTimeZone(TEST_TIMEZONE_ID); TimeZone actual = objectUnderTest.unmarshal(TEST_TIMEZONE_ID); assertEquals(expected, actual); }