test/java/time/tck/java/time/format/TCKDateTimeFormatters.java
Print this page
*** 75,94 ****
import java.text.ParsePosition;
import java.time.DateTimeException;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.Year;
import java.time.YearMonth;
import java.time.ZoneId;
import java.time.ZoneOffset;
import java.time.ZonedDateTime;
import java.time.chrono.Chronology;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
import java.time.temporal.IsoFields;
- import java.time.temporal.Queries;
import java.time.temporal.TemporalAccessor;
import java.time.temporal.TemporalField;
import java.time.temporal.TemporalQuery;
import java.util.HashMap;
import java.util.Iterator;
--- 75,98 ----
import java.text.ParsePosition;
import java.time.DateTimeException;
import java.time.LocalDate;
import java.time.LocalDateTime;
+ import java.time.Month;
import java.time.Year;
import java.time.YearMonth;
import java.time.ZoneId;
import java.time.ZoneOffset;
import java.time.ZonedDateTime;
import java.time.chrono.Chronology;
+ import java.time.chrono.IsoChronology;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
+ import java.time.format.FormatStyle;
+ import java.time.format.ResolverStyle;
+ import java.time.format.TextStyle;
import java.time.temporal.IsoFields;
import java.time.temporal.TemporalAccessor;
import java.time.temporal.TemporalField;
import java.time.temporal.TemporalQuery;
import java.util.HashMap;
import java.util.Iterator;
*** 108,170 ****
@BeforeMethod
public void setUp() {
}
//-----------------------------------------------------------------------
! @Test(expectedExceptions=NullPointerException.class, groups={"tck"})
! public void test_print_nullCalendrical() {
DateTimeFormatter.ISO_DATE.format((TemporalAccessor) null);
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
! @Test(groups={"tck"})
public void test_pattern_String() {
DateTimeFormatter test = DateTimeFormatter.ofPattern("d MMM yyyy");
! assertEquals(test.toString(), "Value(DayOfMonth)' 'Text(MonthOfYear,SHORT)' 'Value(Year,4,19,EXCEEDS_PAD)");
assertEquals(test.getLocale(), Locale.getDefault());
}
! @Test(expectedExceptions=IllegalArgumentException.class, groups={"tck"})
public void test_pattern_String_invalid() {
DateTimeFormatter.ofPattern("p");
}
! @Test(expectedExceptions=NullPointerException.class, groups={"tck"})
public void test_pattern_String_null() {
DateTimeFormatter.ofPattern(null);
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
! @Test(groups={"tck"})
public void test_pattern_StringLocale() {
DateTimeFormatter test = DateTimeFormatter.ofPattern("d MMM yyyy", Locale.UK);
! assertEquals(test.toString(), "Value(DayOfMonth)' 'Text(MonthOfYear,SHORT)' 'Value(Year,4,19,EXCEEDS_PAD)");
assertEquals(test.getLocale(), Locale.UK);
}
! @Test(expectedExceptions=IllegalArgumentException.class, groups={"tck"})
public void test_pattern_StringLocale_invalid() {
DateTimeFormatter.ofPattern("p", Locale.UK);
}
! @Test(expectedExceptions=NullPointerException.class, groups={"tck"})
public void test_pattern_StringLocale_nullPattern() {
DateTimeFormatter.ofPattern(null, Locale.UK);
}
! @Test(expectedExceptions=NullPointerException.class, groups={"tck"})
public void test_pattern_StringLocale_nullLocale() {
DateTimeFormatter.ofPattern("yyyy", null);
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoLocalDate")
Object[][] provider_sample_isoLocalDate() {
return new Object[][]{
{2008, null, null, null, null, null, DateTimeException.class},
{null, 6, null, null, null, null, DateTimeException.class},
--- 112,206 ----
@BeforeMethod
public void setUp() {
}
//-----------------------------------------------------------------------
! @Test(expectedExceptions=NullPointerException.class)
! public void test_format_nullTemporalAccessor() {
DateTimeFormatter.ISO_DATE.format((TemporalAccessor) null);
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
! @Test
public void test_pattern_String() {
DateTimeFormatter test = DateTimeFormatter.ofPattern("d MMM yyyy");
! assertEquals(test.format(LocalDate.of(2012, 6, 30)), "30 " +
! Month.JUNE.getDisplayName(TextStyle.SHORT, Locale.getDefault()) + " 2012");
assertEquals(test.getLocale(), Locale.getDefault());
}
! @Test(expectedExceptions=IllegalArgumentException.class)
public void test_pattern_String_invalid() {
DateTimeFormatter.ofPattern("p");
}
! @Test(expectedExceptions=NullPointerException.class)
public void test_pattern_String_null() {
DateTimeFormatter.ofPattern(null);
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
! @Test
public void test_pattern_StringLocale() {
DateTimeFormatter test = DateTimeFormatter.ofPattern("d MMM yyyy", Locale.UK);
! assertEquals(test.format(LocalDate.of(2012, 6, 30)), "30 Jun 2012");
assertEquals(test.getLocale(), Locale.UK);
}
! @Test(expectedExceptions=IllegalArgumentException.class)
public void test_pattern_StringLocale_invalid() {
DateTimeFormatter.ofPattern("p", Locale.UK);
}
! @Test(expectedExceptions=NullPointerException.class)
public void test_pattern_StringLocale_nullPattern() {
DateTimeFormatter.ofPattern(null, Locale.UK);
}
! @Test(expectedExceptions=NullPointerException.class)
public void test_pattern_StringLocale_nullLocale() {
DateTimeFormatter.ofPattern("yyyy", null);
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
+ @Test
+ public void test_ofLocalizedDate_basics() {
+ assertEquals(DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL).getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL).getZone(), null);
+ assertEquals(DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL).getResolverStyle(), ResolverStyle.SMART);
+ }
+
+ @Test
+ public void test_ofLocalizedTime_basics() {
+ assertEquals(DateTimeFormatter.ofLocalizedTime(FormatStyle.FULL).getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ofLocalizedTime(FormatStyle.FULL).getZone(), null);
+ assertEquals(DateTimeFormatter.ofLocalizedTime(FormatStyle.FULL).getResolverStyle(), ResolverStyle.SMART);
+ }
+
+ @Test
+ public void test_ofLocalizedDateTime1_basics() {
+ assertEquals(DateTimeFormatter.ofLocalizedDateTime(FormatStyle.FULL).getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ofLocalizedDateTime(FormatStyle.FULL).getZone(), null);
+ assertEquals(DateTimeFormatter.ofLocalizedDateTime(FormatStyle.FULL).getResolverStyle(), ResolverStyle.SMART);
+ }
+
+ @Test
+ public void test_ofLocalizedDateTime2_basics() {
+ assertEquals(DateTimeFormatter.ofLocalizedDateTime(FormatStyle.FULL, FormatStyle.MEDIUM).getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ofLocalizedDateTime(FormatStyle.FULL, FormatStyle.MEDIUM).getZone(), null);
+ assertEquals(DateTimeFormatter.ofLocalizedDateTime(FormatStyle.FULL, FormatStyle.MEDIUM).getResolverStyle(), ResolverStyle.SMART);
+ }
+
+ //-----------------------------------------------------------------------
+ //-----------------------------------------------------------------------
+ //-----------------------------------------------------------------------
@DataProvider(name="sample_isoLocalDate")
Object[][] provider_sample_isoLocalDate() {
return new Object[][]{
{2008, null, null, null, null, null, DateTimeException.class},
{null, 6, null, null, null, null, DateTimeException.class},
*** 181,191 ****
{123456, 6, 30, null, null, "+123456-06-30", null},
};
}
! @Test(dataProvider="sample_isoLocalDate", groups={"tck"})
public void test_print_isoLocalDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, null, null, null, null, offsetId, zoneId);
if (expectedEx == null) {
--- 217,227 ----
{123456, 6, 30, null, null, "+123456-06-30", null},
};
}
! @Test(dataProvider="sample_isoLocalDate")
public void test_print_isoLocalDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, null, null, null, null, offsetId, zoneId);
if (expectedEx == null) {
*** 198,254 ****
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoLocalDate", groups={"tck"})
public void test_parse_isoLocalDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createDate(year, month, day);
// offset/zone not expected to be parsed
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
! @Test(groups={"tck"})
public void test_parse_isoLocalDate_999999999() {
Expected expected = createDate(999999999, 8, 6);
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE.parseUnresolved("+999999999-08-06", new ParsePosition(0)), expected);
assertEquals(LocalDate.parse("+999999999-08-06"), LocalDate.of(999999999, 8, 6));
}
! @Test(groups={"tck"})
public void test_parse_isoLocalDate_1000000000() {
Expected expected = createDate(1000000000, 8, 6);
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE.parseUnresolved("+1000000000-08-06", new ParsePosition(0)), expected);
}
! @Test(expectedExceptions = DateTimeException.class, groups={"tck"})
public void test_parse_isoLocalDate_1000000000_failedCreate() {
LocalDate.parse("+1000000000-08-06");
}
! @Test(groups={"tck"})
public void test_parse_isoLocalDate_M999999999() {
Expected expected = createDate(-999999999, 8, 6);
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE.parseUnresolved("-999999999-08-06", new ParsePosition(0)), expected);
assertEquals(LocalDate.parse("-999999999-08-06"), LocalDate.of(-999999999, 8, 6));
}
! @Test(groups={"tck"})
public void test_parse_isoLocalDate_M1000000000() {
Expected expected = createDate(-1000000000, 8, 6);
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE.parseUnresolved("-1000000000-08-06", new ParsePosition(0)), expected);
}
! @Test(expectedExceptions = DateTimeException.class, groups={"tck"})
public void test_parse_isoLocalDate_M1000000000_failedCreate() {
LocalDate.parse("-1000000000-08-06");
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoOffsetDate")
Object[][] provider_sample_isoOffsetDate() {
--- 234,297 ----
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoLocalDate")
public void test_parse_isoLocalDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createDate(year, month, day);
// offset/zone not expected to be parsed
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
! @Test
public void test_parse_isoLocalDate_999999999() {
Expected expected = createDate(999999999, 8, 6);
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE.parseUnresolved("+999999999-08-06", new ParsePosition(0)), expected);
assertEquals(LocalDate.parse("+999999999-08-06"), LocalDate.of(999999999, 8, 6));
}
! @Test
public void test_parse_isoLocalDate_1000000000() {
Expected expected = createDate(1000000000, 8, 6);
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE.parseUnresolved("+1000000000-08-06", new ParsePosition(0)), expected);
}
! @Test(expectedExceptions = DateTimeException.class)
public void test_parse_isoLocalDate_1000000000_failedCreate() {
LocalDate.parse("+1000000000-08-06");
}
! @Test
public void test_parse_isoLocalDate_M999999999() {
Expected expected = createDate(-999999999, 8, 6);
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE.parseUnresolved("-999999999-08-06", new ParsePosition(0)), expected);
assertEquals(LocalDate.parse("-999999999-08-06"), LocalDate.of(-999999999, 8, 6));
}
! @Test
public void test_parse_isoLocalDate_M1000000000() {
Expected expected = createDate(-1000000000, 8, 6);
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE.parseUnresolved("-1000000000-08-06", new ParsePosition(0)), expected);
}
! @Test(expectedExceptions = DateTimeException.class)
public void test_parse_isoLocalDate_M1000000000_failedCreate() {
LocalDate.parse("-1000000000-08-06");
}
+ @Test
+ public void test_isoLocalDate_basics() {
+ assertEquals(DateTimeFormatter.ISO_LOCAL_DATE.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ISO_LOCAL_DATE.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_LOCAL_DATE.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoOffsetDate")
Object[][] provider_sample_isoOffsetDate() {
*** 268,278 ****
{123456, 6, 30, "+01:00", null, "+123456-06-30+01:00", null},
};
}
! @Test(dataProvider="sample_isoOffsetDate", groups={"tck"})
public void test_print_isoOffsetDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, null, null, null, null, offsetId, zoneId);
if (expectedEx == null) {
--- 311,321 ----
{123456, 6, 30, "+01:00", null, "+123456-06-30+01:00", null},
};
}
! @Test(dataProvider="sample_isoOffsetDate")
public void test_print_isoOffsetDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, null, null, null, null, offsetId, zoneId);
if (expectedEx == null) {
*** 285,305 ****
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoOffsetDate", groups={"tck"})
public void test_parse_isoOffsetDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createDate(year, month, day);
buildCalendrical(expected, offsetId, null); // zone not expected to be parsed
assertParseMatch(DateTimeFormatter.ISO_OFFSET_DATE.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoDate")
Object[][] provider_sample_isoDate() {
--- 328,355 ----
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoOffsetDate")
public void test_parse_isoOffsetDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createDate(year, month, day);
buildCalendrical(expected, offsetId, null); // zone not expected to be parsed
assertParseMatch(DateTimeFormatter.ISO_OFFSET_DATE.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
+ @Test
+ public void test_isoOffsetDate_basics() {
+ assertEquals(DateTimeFormatter.ISO_OFFSET_DATE.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ISO_OFFSET_DATE.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_OFFSET_DATE.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoDate")
Object[][] provider_sample_isoDate() {
*** 319,329 ****
{123456, 6, 30, "+01:00", "Europe/Paris", "+123456-06-30+01:00", null},
};
}
! @Test(dataProvider="sample_isoDate", groups={"tck"})
public void test_print_isoDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, null, null, null, null, offsetId, zoneId);
if (expectedEx == null) {
--- 369,379 ----
{123456, 6, 30, "+01:00", "Europe/Paris", "+123456-06-30+01:00", null},
};
}
! @Test(dataProvider="sample_isoDate")
public void test_print_isoDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, null, null, null, null, offsetId, zoneId);
if (expectedEx == null) {
*** 336,346 ****
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoDate", groups={"tck"})
public void test_parse_isoDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createDate(year, month, day);
--- 386,396 ----
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoDate")
public void test_parse_isoDate(
Integer year, Integer month, Integer day, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createDate(year, month, day);
*** 349,358 ****
--- 399,415 ----
}
assertParseMatch(DateTimeFormatter.ISO_DATE.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
+ @Test
+ public void test_isoDate_basics() {
+ assertEquals(DateTimeFormatter.ISO_DATE.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ISO_DATE.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_DATE.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoLocalTime")
Object[][] provider_sample_isoLocalTime() {
*** 384,394 ****
{11, 5, 30, 500000000, null, "Europe/Paris", "11:05:30.5", null},
{11, 5, 30, 1, null, "Europe/Paris", "11:05:30.000000001", null},
};
}
! @Test(dataProvider="sample_isoLocalTime", groups={"tck"})
public void test_print_isoLocalTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(null, null, null, hour, min, sec, nano, offsetId, zoneId);
if (expectedEx == null) {
--- 441,451 ----
{11, 5, 30, 500000000, null, "Europe/Paris", "11:05:30.5", null},
{11, 5, 30, 1, null, "Europe/Paris", "11:05:30.000000001", null},
};
}
! @Test(dataProvider="sample_isoLocalTime")
public void test_print_isoLocalTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(null, null, null, hour, min, sec, nano, offsetId, zoneId);
if (expectedEx == null) {
*** 401,421 ****
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoLocalTime", groups={"tck"})
public void test_parse_isoLocalTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createTime(hour, min, sec, nano);
// offset/zone not expected to be parsed
assertParseMatch(DateTimeFormatter.ISO_LOCAL_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoOffsetTime")
Object[][] provider_sample_isoOffsetTime() {
--- 458,485 ----
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoLocalTime")
public void test_parse_isoLocalTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createTime(hour, min, sec, nano);
// offset/zone not expected to be parsed
assertParseMatch(DateTimeFormatter.ISO_LOCAL_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
+ @Test
+ public void test_isoLocalTime_basics() {
+ assertEquals(DateTimeFormatter.ISO_LOCAL_TIME.getChronology(), null);
+ assertEquals(DateTimeFormatter.ISO_LOCAL_TIME.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_LOCAL_TIME.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoOffsetTime")
Object[][] provider_sample_isoOffsetTime() {
*** 447,457 ****
{11, 5, 30, 500000000, null, "Europe/Paris", null, DateTimeException.class},
{11, 5, 30, 1, null, "Europe/Paris", null, DateTimeException.class},
};
}
! @Test(dataProvider="sample_isoOffsetTime", groups={"tck"})
public void test_print_isoOffsetTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(null, null, null, hour, min, sec, nano, offsetId, zoneId);
if (expectedEx == null) {
--- 511,521 ----
{11, 5, 30, 500000000, null, "Europe/Paris", null, DateTimeException.class},
{11, 5, 30, 1, null, "Europe/Paris", null, DateTimeException.class},
};
}
! @Test(dataProvider="sample_isoOffsetTime")
public void test_print_isoOffsetTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(null, null, null, hour, min, sec, nano, offsetId, zoneId);
if (expectedEx == null) {
*** 464,484 ****
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoOffsetTime", groups={"tck"})
public void test_parse_isoOffsetTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createTime(hour, min, sec, nano);
buildCalendrical(expected, offsetId, null); // zoneId is not expected from parse
assertParseMatch(DateTimeFormatter.ISO_OFFSET_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoTime")
Object[][] provider_sample_isoTime() {
--- 528,555 ----
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoOffsetTime")
public void test_parse_isoOffsetTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createTime(hour, min, sec, nano);
buildCalendrical(expected, offsetId, null); // zoneId is not expected from parse
assertParseMatch(DateTimeFormatter.ISO_OFFSET_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
+ @Test
+ public void test_isoOffsetTime_basics() {
+ assertEquals(DateTimeFormatter.ISO_OFFSET_TIME.getChronology(), null);
+ assertEquals(DateTimeFormatter.ISO_OFFSET_TIME.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_OFFSET_TIME.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoTime")
Object[][] provider_sample_isoTime() {
*** 510,520 ****
{11, 5, 30, 500000000, null, "Europe/Paris", "11:05:30.5", null},
{11, 5, 30, 1, null, "Europe/Paris", "11:05:30.000000001", null},
};
}
! @Test(dataProvider="sample_isoTime", groups={"tck"})
public void test_print_isoTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(null, null, null, hour, min, sec, nano, offsetId, zoneId);
if (expectedEx == null) {
--- 581,591 ----
{11, 5, 30, 500000000, null, "Europe/Paris", "11:05:30.5", null},
{11, 5, 30, 1, null, "Europe/Paris", "11:05:30.000000001", null},
};
}
! @Test(dataProvider="sample_isoTime")
public void test_print_isoTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(null, null, null, hour, min, sec, nano, offsetId, zoneId);
if (expectedEx == null) {
*** 527,537 ****
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoTime", groups={"tck"})
public void test_parse_isoTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createTime(hour, min, sec, nano);
--- 598,608 ----
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoTime")
public void test_parse_isoTime(
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createTime(hour, min, sec, nano);
*** 540,549 ****
--- 611,627 ----
}
assertParseMatch(DateTimeFormatter.ISO_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
+ @Test
+ public void test_isoTime_basics() {
+ assertEquals(DateTimeFormatter.ISO_TIME.getChronology(), null);
+ assertEquals(DateTimeFormatter.ISO_TIME.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_TIME.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoLocalDateTime")
Object[][] provider_sample_isoLocalDateTime() {
*** 583,593 ****
{123456, 6, 30, 11, 5, null, null, null, null, "+123456-06-30T11:05", null},
};
}
! @Test(dataProvider="sample_isoLocalDateTime", groups={"tck"})
public void test_print_isoLocalDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, hour, min, sec, nano, offsetId, zoneId);
--- 661,671 ----
{123456, 6, 30, 11, 5, null, null, null, null, "+123456-06-30T11:05", null},
};
}
! @Test(dataProvider="sample_isoLocalDateTime")
public void test_print_isoLocalDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, hour, min, sec, nano, offsetId, zoneId);
*** 601,621 ****
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoLocalDateTime", groups={"tck"})
public void test_parse_isoLocalDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createDateTime(year, month, day, hour, min, sec, nano);
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoOffsetDateTime")
Object[][] provider_sample_isoOffsetDateTime() {
--- 679,706 ----
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoLocalDateTime")
public void test_parse_isoLocalDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
Expected expected = createDateTime(year, month, day, hour, min, sec, nano);
assertParseMatch(DateTimeFormatter.ISO_LOCAL_DATE_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
+ @Test
+ public void test_isoLocalDateTime_basics() {
+ assertEquals(DateTimeFormatter.ISO_LOCAL_DATE_TIME.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ISO_LOCAL_DATE_TIME.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_LOCAL_DATE_TIME.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoOffsetDateTime")
Object[][] provider_sample_isoOffsetDateTime() {
*** 655,665 ****
{123456, 6, 30, 11, 5, null, null, "+01:00", null, "+123456-06-30T11:05+01:00", null},
};
}
! @Test(dataProvider="sample_isoOffsetDateTime", groups={"tck"})
public void test_print_isoOffsetDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, hour, min, sec, nano, offsetId, zoneId);
--- 740,750 ----
{123456, 6, 30, 11, 5, null, null, "+01:00", null, "+123456-06-30T11:05+01:00", null},
};
}
! @Test(dataProvider="sample_isoOffsetDateTime")
public void test_print_isoOffsetDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, hour, min, sec, nano, offsetId, zoneId);
*** 673,683 ****
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoOffsetDateTime", groups={"tck"})
public void test_parse_isoOffsetDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
--- 758,768 ----
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoOffsetDateTime")
public void test_parse_isoOffsetDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
*** 685,694 ****
--- 770,786 ----
buildCalendrical(expected, offsetId, null); // zone not expected to be parsed
assertParseMatch(DateTimeFormatter.ISO_OFFSET_DATE_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
+ @Test
+ public void test_isoOffsetDateTime_basics() {
+ assertEquals(DateTimeFormatter.ISO_OFFSET_DATE_TIME.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ISO_OFFSET_DATE_TIME.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_OFFSET_DATE_TIME.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoZonedDateTime")
Object[][] provider_sample_isoZonedDateTime() {
*** 737,747 ****
{123456, 6, 30, 11, 5, null, null, "+01:00", "Europe/Paris", "+123456-06-30T11:05+01:00[Europe/Paris]", null},
};
}
! @Test(dataProvider="sample_isoZonedDateTime", groups={"tck"})
public void test_print_isoZonedDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, hour, min, sec, nano, offsetId, zoneId);
--- 829,839 ----
{123456, 6, 30, 11, 5, null, null, "+01:00", "Europe/Paris", "+123456-06-30T11:05+01:00[Europe/Paris]", null},
};
}
! @Test(dataProvider="sample_isoZonedDateTime")
public void test_print_isoZonedDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, hour, min, sec, nano, offsetId, zoneId);
*** 755,765 ****
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoZonedDateTime", groups={"tck"})
public void test_parse_isoZonedDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
--- 847,857 ----
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoZonedDateTime")
public void test_parse_isoZonedDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
*** 771,780 ****
--- 863,879 ----
}
assertParseMatch(DateTimeFormatter.ISO_ZONED_DATE_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
+ @Test
+ public void test_isoZonedDateTime_basics() {
+ assertEquals(DateTimeFormatter.ISO_ZONED_DATE_TIME.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ISO_ZONED_DATE_TIME.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_ZONED_DATE_TIME.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="sample_isoDateTime")
Object[][] provider_sample_isoDateTime() {
*** 814,824 ****
{123456, 6, 30, 11, 5, null, null, null, null, "+123456-06-30T11:05", null},
};
}
! @Test(dataProvider="sample_isoDateTime", groups={"tck"})
public void test_print_isoDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, hour, min, sec, nano, offsetId, zoneId);
--- 913,923 ----
{123456, 6, 30, 11, 5, null, null, null, null, "+123456-06-30T11:05", null},
};
}
! @Test(dataProvider="sample_isoDateTime")
public void test_print_isoDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String expected, Class<?> expectedEx) {
TemporalAccessor test = buildAccessor(year, month, day, hour, min, sec, nano, offsetId, zoneId);
*** 832,842 ****
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoDateTime", groups={"tck"})
public void test_parse_isoDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
--- 931,941 ----
assertTrue(expectedEx.isInstance(ex));
}
}
}
! @Test(dataProvider="sample_isoDateTime")
public void test_parse_isoDateTime(
Integer year, Integer month, Integer day,
Integer hour, Integer min, Integer sec, Integer nano, String offsetId, String zoneId,
String input, Class<?> invalid) {
if (input != null) {
*** 849,880 ****
}
assertParseMatch(DateTimeFormatter.ISO_DATE_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
! @Test(groups={"tck"})
public void test_print_isoOrdinalDate() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), null, null);
assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.format(test), "2008-155");
}
! @Test(groups={"tck"})
public void test_print_isoOrdinalDate_offset() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), "Z", null);
assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.format(test), "2008-155Z");
}
! @Test(groups={"tck"})
public void test_print_isoOrdinalDate_zoned() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), "+02:00", "Europe/Paris");
assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.format(test), "2008-155+02:00");
}
! @Test(groups={"tck"})
public void test_print_isoOrdinalDate_zoned_largeYear() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(123456, 6, 3, 11, 5, 30), "Z", null);
assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.format(test), "+123456-155Z");
}
--- 948,986 ----
}
assertParseMatch(DateTimeFormatter.ISO_DATE_TIME.parseUnresolved(input, new ParsePosition(0)), expected);
}
}
+ @Test
+ public void test_isoDateTime_basics() {
+ assertEquals(DateTimeFormatter.ISO_DATE_TIME.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ISO_DATE_TIME.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_DATE_TIME.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
! @Test
public void test_print_isoOrdinalDate() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), null, null);
assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.format(test), "2008-155");
}
! @Test
public void test_print_isoOrdinalDate_offset() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), "Z", null);
assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.format(test), "2008-155Z");
}
! @Test
public void test_print_isoOrdinalDate_zoned() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), "+02:00", "Europe/Paris");
assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.format(test), "2008-155+02:00");
}
! @Test
public void test_print_isoOrdinalDate_zoned_largeYear() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(123456, 6, 3, 11, 5, 30), "Z", null);
assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.format(test), "+123456-155Z");
}
*** 905,973 ****
TemporalAccessor test = Year.of(2008);
DateTimeFormatter.ISO_ORDINAL_DATE.format(test);
}
//-----------------------------------------------------------------------
! @Test(groups={"tck"})
public void test_parse_isoOrdinalDate() {
Expected expected = new Expected(YEAR, 2008, DAY_OF_YEAR, 123);
assertParseMatch(DateTimeFormatter.ISO_ORDINAL_DATE.parseUnresolved("2008-123", new ParsePosition(0)), expected);
}
! @Test(groups={"tck"})
public void test_parse_isoOrdinalDate_largeYear() {
Expected expected = new Expected(YEAR, 123456, DAY_OF_YEAR, 123);
assertParseMatch(DateTimeFormatter.ISO_ORDINAL_DATE.parseUnresolved("+123456-123", new ParsePosition(0)), expected);
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
! @Test(groups={"tck"})
public void test_print_basicIsoDate() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), null, null);
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.format(test), "20080603");
}
! @Test(groups={"tck"})
public void test_print_basicIsoDate_offset() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), "Z", null);
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.format(test), "20080603Z");
}
! @Test(groups={"tck"})
public void test_print_basicIsoDate_zoned() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), "+02:00", "Europe/Paris");
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.format(test), "20080603+0200");
}
! @Test(expectedExceptions=DateTimeException.class, groups={"tck"})
public void test_print_basicIsoDate_largeYear() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(123456, 6, 3, 11, 5, 30), "Z", null);
DateTimeFormatter.BASIC_ISO_DATE.format(test);
}
! @Test(groups={"tck"})
public void test_print_basicIsoDate_fields() {
TemporalAccessor test = buildAccessor(LocalDate.of(2008, 6, 3), null, null);
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.format(test), "20080603");
}
! @Test(expectedExceptions=DateTimeException.class, groups={"tck"})
public void test_print_basicIsoDate_missingField() {
TemporalAccessor test = YearMonth.of(2008, 6);
DateTimeFormatter.BASIC_ISO_DATE.format(test);
}
//-----------------------------------------------------------------------
! @Test(groups={"tck"})
public void test_parse_basicIsoDate() {
LocalDate expected = LocalDate.of(2008, 6, 3);
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.parse("20080603", LocalDate::from), expected);
}
! @Test(expectedExceptions=DateTimeParseException.class, groups={"tck"})
public void test_parse_basicIsoDate_largeYear() {
try {
LocalDate expected = LocalDate.of(123456, 6, 3);
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.parse("+1234560603", LocalDate::from), expected);
} catch (DateTimeParseException ex) {
--- 1011,1086 ----
TemporalAccessor test = Year.of(2008);
DateTimeFormatter.ISO_ORDINAL_DATE.format(test);
}
//-----------------------------------------------------------------------
! @Test
public void test_parse_isoOrdinalDate() {
Expected expected = new Expected(YEAR, 2008, DAY_OF_YEAR, 123);
assertParseMatch(DateTimeFormatter.ISO_ORDINAL_DATE.parseUnresolved("2008-123", new ParsePosition(0)), expected);
}
! @Test
public void test_parse_isoOrdinalDate_largeYear() {
Expected expected = new Expected(YEAR, 123456, DAY_OF_YEAR, 123);
assertParseMatch(DateTimeFormatter.ISO_ORDINAL_DATE.parseUnresolved("+123456-123", new ParsePosition(0)), expected);
}
+ @Test
+ public void test_isoOrdinalDate_basics() {
+ assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_ORDINAL_DATE.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
! @Test
public void test_print_basicIsoDate() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), null, null);
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.format(test), "20080603");
}
! @Test
public void test_print_basicIsoDate_offset() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), "Z", null);
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.format(test), "20080603Z");
}
! @Test
public void test_print_basicIsoDate_zoned() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(2008, 6, 3, 11, 5, 30), "+02:00", "Europe/Paris");
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.format(test), "20080603+0200");
}
! @Test(expectedExceptions=DateTimeException.class)
public void test_print_basicIsoDate_largeYear() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(123456, 6, 3, 11, 5, 30), "Z", null);
DateTimeFormatter.BASIC_ISO_DATE.format(test);
}
! @Test
public void test_print_basicIsoDate_fields() {
TemporalAccessor test = buildAccessor(LocalDate.of(2008, 6, 3), null, null);
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.format(test), "20080603");
}
! @Test(expectedExceptions=DateTimeException.class)
public void test_print_basicIsoDate_missingField() {
TemporalAccessor test = YearMonth.of(2008, 6);
DateTimeFormatter.BASIC_ISO_DATE.format(test);
}
//-----------------------------------------------------------------------
! @Test
public void test_parse_basicIsoDate() {
LocalDate expected = LocalDate.of(2008, 6, 3);
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.parse("20080603", LocalDate::from), expected);
}
! @Test(expectedExceptions=DateTimeParseException.class)
public void test_parse_basicIsoDate_largeYear() {
try {
LocalDate expected = LocalDate.of(123456, 6, 3);
assertEquals(DateTimeFormatter.BASIC_ISO_DATE.parse("+1234560603", LocalDate::from), expected);
} catch (DateTimeParseException ex) {
*** 975,984 ****
--- 1088,1104 ----
assertEquals(ex.getParsedString(), "+1234560603");
throw ex;
}
}
+ @Test
+ public void test_basicIsoDate_basics() {
+ assertEquals(DateTimeFormatter.BASIC_ISO_DATE.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.BASIC_ISO_DATE.getZone(), null);
+ assertEquals(DateTimeFormatter.BASIC_ISO_DATE.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="weekDate")
Iterator<Object[]> weekDate() {
*** 1010,1057 ****
throw new UnsupportedOperationException();
}
};
}
! @Test(dataProvider="weekDate", groups={"tck"})
public void test_print_isoWeekDate(TemporalAccessor test, String expected) {
assertEquals(DateTimeFormatter.ISO_WEEK_DATE.format(test), expected);
}
! @Test(groups={"tck"})
public void test_print_isoWeekDate_zoned_largeYear() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(123456, 6, 3, 11, 5, 30), "Z", null);
assertEquals(DateTimeFormatter.ISO_WEEK_DATE.format(test), "+123456-W23-2Z");
}
! @Test(groups={"tck"})
public void test_print_isoWeekDate_fields() {
TemporalAccessor test = buildAccessor(LocalDate.of(2004, 1, 27), null, null);
assertEquals(DateTimeFormatter.ISO_WEEK_DATE.format(test), "2004-W05-2");
}
! @Test(expectedExceptions=DateTimeException.class, groups={"tck"})
public void test_print_isoWeekDate_missingField() {
TemporalAccessor test = YearMonth.of(2008, 6);
DateTimeFormatter.ISO_WEEK_DATE.format(test);
}
//-----------------------------------------------------------------------
! @Test(groups={"tck"})
public void test_parse_weekDate() {
LocalDate expected = LocalDate.of(2004, 1, 28);
assertEquals(DateTimeFormatter.ISO_WEEK_DATE.parse("2004-W05-3", LocalDate::from), expected);
}
! @Test(groups={"tck"})
public void test_parse_weekDate_largeYear() {
TemporalAccessor parsed = DateTimeFormatter.ISO_WEEK_DATE.parseUnresolved("+123456-W04-5", new ParsePosition(0));
assertEquals(parsed.getLong(IsoFields.WEEK_BASED_YEAR), 123456L);
assertEquals(parsed.getLong(IsoFields.WEEK_OF_WEEK_BASED_YEAR), 4L);
assertEquals(parsed.getLong(DAY_OF_WEEK), 5L);
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="rfc")
Object[][] data_rfc() {
--- 1130,1194 ----
throw new UnsupportedOperationException();
}
};
}
! @Test(dataProvider="weekDate")
public void test_print_isoWeekDate(TemporalAccessor test, String expected) {
assertEquals(DateTimeFormatter.ISO_WEEK_DATE.format(test), expected);
}
! @Test
public void test_print_isoWeekDate_zoned_largeYear() {
TemporalAccessor test = buildAccessor(LocalDateTime.of(123456, 6, 3, 11, 5, 30), "Z", null);
assertEquals(DateTimeFormatter.ISO_WEEK_DATE.format(test), "+123456-W23-2Z");
}
! @Test
public void test_print_isoWeekDate_fields() {
TemporalAccessor test = buildAccessor(LocalDate.of(2004, 1, 27), null, null);
assertEquals(DateTimeFormatter.ISO_WEEK_DATE.format(test), "2004-W05-2");
}
! @Test(expectedExceptions=DateTimeException.class)
public void test_print_isoWeekDate_missingField() {
TemporalAccessor test = YearMonth.of(2008, 6);
DateTimeFormatter.ISO_WEEK_DATE.format(test);
}
//-----------------------------------------------------------------------
! @Test
public void test_parse_weekDate() {
LocalDate expected = LocalDate.of(2004, 1, 28);
assertEquals(DateTimeFormatter.ISO_WEEK_DATE.parse("2004-W05-3", LocalDate::from), expected);
}
! @Test
public void test_parse_weekDate_largeYear() {
TemporalAccessor parsed = DateTimeFormatter.ISO_WEEK_DATE.parseUnresolved("+123456-W04-5", new ParsePosition(0));
assertEquals(parsed.getLong(IsoFields.WEEK_BASED_YEAR), 123456L);
assertEquals(parsed.getLong(IsoFields.WEEK_OF_WEEK_BASED_YEAR), 4L);
assertEquals(parsed.getLong(DAY_OF_WEEK), 5L);
}
+ @Test
+ public void test_isoWeekDate_basics() {
+ assertEquals(DateTimeFormatter.ISO_WEEK_DATE.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.ISO_WEEK_DATE.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_WEEK_DATE.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
+ //-----------------------------------------------------------------------
+ //-----------------------------------------------------------------------
+ //-----------------------------------------------------------------------
+ @Test
+ public void test_isoInstant_basics() {
+ assertEquals(DateTimeFormatter.ISO_INSTANT.getChronology(), null);
+ assertEquals(DateTimeFormatter.ISO_INSTANT.getZone(), null);
+ assertEquals(DateTimeFormatter.ISO_INSTANT.getResolverStyle(), ResolverStyle.STRICT);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
@DataProvider(name="rfc")
Object[][] data_rfc() {
*** 1061,1088 ****
{LocalDateTime.of(2008, 6, 3, 11, 5, 30), "+02:00", "Tue, 3 Jun 2008 11:05:30 +0200"},
{LocalDateTime.of(2008, 6, 30, 11, 5, 30), "-03:00", "Mon, 30 Jun 2008 11:05:30 -0300"},
};
}
! @Test(groups={"tck"}, dataProvider="rfc")
public void test_print_rfc1123(LocalDateTime base, String offsetId, String expected) {
TemporalAccessor test = buildAccessor(base, offsetId, null);
assertEquals(DateTimeFormatter.RFC_1123_DATE_TIME.format(test), expected);
}
! @Test(groups={"tck"}, dataProvider="rfc")
public void test_print_rfc1123_french(LocalDateTime base, String offsetId, String expected) {
TemporalAccessor test = buildAccessor(base, offsetId, null);
assertEquals(DateTimeFormatter.RFC_1123_DATE_TIME.withLocale(Locale.FRENCH).format(test), expected);
}
! @Test(groups={"tck"}, expectedExceptions=DateTimeException.class)
public void test_print_rfc1123_missingField() {
TemporalAccessor test = YearMonth.of(2008, 6);
DateTimeFormatter.RFC_1123_DATE_TIME.format(test);
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
private Expected createDate(Integer year, Integer month, Integer day) {
Expected test = new Expected();
--- 1198,1232 ----
{LocalDateTime.of(2008, 6, 3, 11, 5, 30), "+02:00", "Tue, 3 Jun 2008 11:05:30 +0200"},
{LocalDateTime.of(2008, 6, 30, 11, 5, 30), "-03:00", "Mon, 30 Jun 2008 11:05:30 -0300"},
};
}
! @Test(dataProvider="rfc")
public void test_print_rfc1123(LocalDateTime base, String offsetId, String expected) {
TemporalAccessor test = buildAccessor(base, offsetId, null);
assertEquals(DateTimeFormatter.RFC_1123_DATE_TIME.format(test), expected);
}
! @Test(dataProvider="rfc")
public void test_print_rfc1123_french(LocalDateTime base, String offsetId, String expected) {
TemporalAccessor test = buildAccessor(base, offsetId, null);
assertEquals(DateTimeFormatter.RFC_1123_DATE_TIME.withLocale(Locale.FRENCH).format(test), expected);
}
! @Test(expectedExceptions=DateTimeException.class)
public void test_print_rfc1123_missingField() {
TemporalAccessor test = YearMonth.of(2008, 6);
DateTimeFormatter.RFC_1123_DATE_TIME.format(test);
}
+ @Test
+ public void test_rfc1123_basics() {
+ assertEquals(DateTimeFormatter.RFC_1123_DATE_TIME.getChronology(), IsoChronology.INSTANCE);
+ assertEquals(DateTimeFormatter.RFC_1123_DATE_TIME.getZone(), null);
+ assertEquals(DateTimeFormatter.RFC_1123_DATE_TIME.getResolverStyle(), ResolverStyle.SMART);
+ }
+
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
private Expected createDate(Integer year, Integer month, Integer day) {
Expected test = new Expected();
*** 1202,1218 ****
private void assertParseMatch(TemporalAccessor parsed, Expected expected) {
for (TemporalField field : expected.fieldValues.keySet()) {
assertEquals(parsed.isSupported(field), true);
parsed.getLong(field);
}
! assertEquals(parsed.query(Queries.chronology()), expected.chrono);
! assertEquals(parsed.query(Queries.zoneId()), expected.zone);
}
//-------------------------------------------------------------------------
- Map<TemporalField, Long> fields = new HashMap<>();
- ZoneId zoneId;
static class MockAccessor implements TemporalAccessor {
Map<TemporalField, Long> fields = new HashMap<>();
ZoneId zoneId;
void setFields(LocalDate dt) {
--- 1346,1360 ----
private void assertParseMatch(TemporalAccessor parsed, Expected expected) {
for (TemporalField field : expected.fieldValues.keySet()) {
assertEquals(parsed.isSupported(field), true);
parsed.getLong(field);
}
! assertEquals(parsed.query(TemporalQuery.chronology()), expected.chrono);
! assertEquals(parsed.query(TemporalQuery.zoneId()), expected.zone);
}
//-------------------------------------------------------------------------
static class MockAccessor implements TemporalAccessor {
Map<TemporalField, Long> fields = new HashMap<>();
ZoneId zoneId;
void setFields(LocalDate dt) {
*** 1270,1280 ****
}
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
! if (query == Queries.zoneId()) {
return (R) zoneId;
}
return TemporalAccessor.super.query(query);
}
--- 1412,1422 ----
}
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
! if (query == TemporalQuery.zoneId()) {
return (R) zoneId;
}
return TemporalAccessor.super.query(query);
}