下面列出了java.time.OffsetTime#parse ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
/**
* Converts the string from the database to an array of OffsetTime objects.
* @param in the array as a string
* @param requestedClass the class that the user wanted
* @return an array of OffsetTime objects
*/
public static Object timetzOutArray(String in, Class<?> requestedClass) {
if ("{}".equals(in)) {
return new OffsetTime[] {};
}
String[] parts = in.substring(1, in.length() - 1).split(",");
OffsetTime[] result = new OffsetTime[parts.length];
for (int i = 0; i < parts.length; i++) {
if ("NULL".equals(parts[i])) {
result[i] = null;
} else {
result[i] = OffsetTime.parse(parts[i], offsetTimeFormatter);
}
}
return result;
}
@Test(expectedExceptions={DateTimeParseException.class})
public void factory_parse_illegalMinute() {
OffsetTime.parse("12:60+01:00");
}
@Test
public void testGetOffsetTimeConverter() {
OffsetTime value = config.getConverter(OffsetTime.class).get().convert("13:45:30.123456789+02:00");
OffsetTime parsed = OffsetTime.parse("13:45:30.123456789+02:00");
Assert.assertEquals(value, parsed);
}
@Test(expectedExceptions={DateTimeParseException.class})
public void factory_parse_illegalMinute() {
OffsetTime.parse("12:60+01:00");
}
@Test(dataProvider = "sampleBadParse", expectedExceptions={DateTimeParseException.class})
public void factory_parse_invalidText(String unparsable) {
OffsetTime.parse(unparsable);
}
@Test(expected=NullPointerException.class)
public void factory_parse_formatter_nullText() {
DateTimeFormatter f = DateTimeFormatter.ofPattern("y M d H m s");
OffsetTime.parse((String) null, f);
}
@Test(expectedExceptions={DateTimeParseException.class})
public void factory_parse_illegalHour() {
OffsetTime.parse("25:00+01:00");
}
@Test
public void factory_parse_formatter() {
DateTimeFormatter f = DateTimeFormatter.ofPattern("H m s XXX");
OffsetTime test = OffsetTime.parse("11 30 0 +01:00", f);
assertEquals(test, OffsetTime.of(11, 30, 0, 0, ZoneOffset.ofHours(1)));
}
@Test(expectedExceptions={DateTimeParseException.class})
public void factory_parse_illegalHour() {
OffsetTime.parse("25:00+01:00");
}
@Test(expected=DateTimeParseException.class)
public void factory_parse_illegalMinute() {
OffsetTime.parse("12:60+01:00");
}
@Test(expectedExceptions=NullPointerException.class)
public void factory_parse_formatter_nullFormatter() {
OffsetTime.parse("ANY", null);
}
@Test(dataProvider = "sampleBadParse", expectedExceptions={DateTimeParseException.class})
public void factory_parse_invalidText(String unparsable) {
OffsetTime.parse(unparsable);
}
@Override
public final OffsetTime decodeText(final String value) {
return OffsetTime.parse(value, formatter);
}
@Test
public void factory_parse_formatter() {
DateTimeFormatter f = DateTimeFormatter.ofPattern("H m s XXX");
OffsetTime test = OffsetTime.parse("11 30 0 +01:00", f);
assertEquals(test, OffsetTime.of(11, 30, 0, 0, ZoneOffset.ofHours(1)));
}
@Test
public void testOffsetTime() {
OffsetTime value = config.getValue("tck.config.test.javaconfig.converter.offsettimevalue", OffsetTime.class);
OffsetTime parsed = OffsetTime.parse("13:45:30.123456789+02:00");
Assert.assertEquals(value, parsed);
}
@Test(expectedExceptions=NullPointerException.class)
public void factory_parse_formatter_nullText() {
DateTimeFormatter f = DateTimeFormatter.ofPattern("y M d H m s");
OffsetTime.parse((String) null, f);
}
@Test(expectedExceptions=NullPointerException.class)
public void factory_parse_formatter_nullFormatter() {
OffsetTime.parse("ANY", null);
}
@Test(expectedExceptions={DateTimeParseException.class})
public void factory_parse_illegalSecond() {
OffsetTime.parse("12:12:60+01:00");
}
@Test(dataProvider = "sampleToString")
public void factory_parse_validText(int h, int m, int s, int n, String offsetId, String parsable) {
OffsetTime t = OffsetTime.parse(parsable);
assertNotNull(t, parsable);
check(t, h, m, s, n, ZoneOffset.of(offsetId));
}
@Test(dataProvider = "sampleBadParse", expectedExceptions={DateTimeParseException.class})
public void factory_parse_invalidText(String unparsable) {
OffsetTime.parse(unparsable);
}