  @Test
  public void testNonStrict() {

    Date d = new Date(A_DATE);
    nonStrict(d, "2011-7-14T23:22:49.478Z", 5); // omit leading zero
    nonStrict(d, "2011-007-14T23:22:49.478Z", 5); // extra leading zero
    nonStrict(d, "2011/07/14T23:22:49.478Z", 4); // non-standard delimiters
    nonStrict(d, "2011-07-14T19:22:49.478-04:00?", 29); // extra character at end
    nonStrict(d, "2011-07-15T23:22:49.478+24:00", 25); // too large timezone offset
    nonStrict(d, "2011-07-14T08:52:49.478-14:30", 28); // too large timezone offset
    nonStrict(d, "2011-06-44T23:22:49.478Z", 9); // wrap the days field
    nonStrict(d, "2011-07-13T47:22:49.478Z", 12); // wrap the hours field
    nonStrict(d, "2011-07-14T22:82:49.478Z", 15); // wrap the minutes field
    
    d = DateTime.parse("2011-07-14T23:22:29.478Z");
    nonStrict(d, "2011-07-14T23:21:89.478Z", 18); // wrap the seconds field
    
    d = DateTime.parse("2011-07-15T00:00:15Z");
    nonStrict(d, "2011-07-14T24:00:15Z", 18); // past midnight
  }