Java 类java.time.format.DecimalStyle 实例源码

项目:jdk8u-jdk    文件:TestZoneTextPrinterParser.java   
@Test(dataProvider="preferredZones")
public void test_ParseText(String expected, String text, Set<ZoneId> preferred, Locale locale, TextStyle style) {
    DateTimeFormatter fmt = new DateTimeFormatterBuilder().appendZoneText(style, preferred)
                                                          .toFormatter(locale)
                                                          .withDecimalStyle(DecimalStyle.of(locale));

    String ret = fmt.parse(text, TemporalQueries.zone()).getId();

    System.out.printf("[%-5s %s] %24s -> %s(%s)%n",
                      locale.toString(),
                      style == TextStyle.FULL ? " full" :"short",
                      text, ret, expected);

    assertEquals(ret, expected);

}
项目:jdk8u-jdk    文件:TCKDecimalStyle.java   
@Test
public void test_of_Locale() {
    DecimalStyle loc1 = DecimalStyle.of(Locale.CANADA);
    assertEquals(loc1.getZeroDigit(), '0');
    assertEquals(loc1.getPositiveSign(), '+');
    assertEquals(loc1.getNegativeSign(), '-');
    assertEquals(loc1.getDecimalSeparator(), '.');
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test
public void test_toFormat_parseObject_StringParsePosition_invalidPosition_tooSmall() throws Exception {
    // SimpleDateFormat throws StringIndexOutOfBoundException
    DateTimeFormatter dtf = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    ParsePosition pos = new ParsePosition(-1);
    Format test = dtf.toFormat();
    assertNull(test.parseObject("ONE30", pos));
    assertTrue(pos.getErrorIndex() >= 0);
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test(expectedExceptions=NullPointerException.class)
public void test_toFormat_parseObject_StringParsePosition_nullParsePosition() throws Exception {
    // SimpleDateFormat has this behavior
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    format.parseObject("ONE30", (ParsePosition) null);
}
项目:jdk8u-jdk    文件:TCKDecimalStyle.java   
@Test
public void test_equalsHashCode3() {
    DecimalStyle a = DecimalStyle.STANDARD.withZeroDigit('A');
    DecimalStyle b = DecimalStyle.STANDARD.withDecimalSeparator('A');
    assertEquals(a.equals(b), false);
    assertEquals(b.equals(a), false);
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test(expectedExceptions=ParseException.class)
public void test_toFormat_parseObject_String_parseError() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    try {
        format.parseObject("ONEXXX");
    } catch (ParseException ex) {
        assertEquals(ex.getMessage().contains("ONEXXX"), true);
        assertEquals(ex.getErrorOffset(), 3);
        throw ex;
    }
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test
public void test_print_TemporalAppendable() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    StringBuilder buf = new StringBuilder();
    test.formatTo(LocalDate.of(2008, 6, 30), buf);
    assertEquals(buf.toString(), "ONE30");
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test
public void test_parse_CharSequence() {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    TemporalAccessor result = test.parse("ONE30");
    assertEquals(result.isSupported(DAY_OF_MONTH), true);
    assertEquals(result.getLong(DAY_OF_MONTH), 30L);
    assertEquals(result.isSupported(HOUR_OF_DAY), false);
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test
public void test_parse_CharSequence_ParsePosition() {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    ParsePosition pos = new ParsePosition(3);
    TemporalAccessor result = test.parse("XXXONE30XXX", pos);
    assertEquals(pos.getIndex(), 8);
    assertEquals(pos.getErrorIndex(), -1);
    assertEquals(result.isSupported(DAY_OF_MONTH), true);
    assertEquals(result.getLong(DAY_OF_MONTH), 30L);
    assertEquals(result.isSupported(HOUR_OF_DAY), false);
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test(expectedExceptions=ParseException.class)
public void test_toFormat_parseObject_String_parseErrorLongText() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    try {
        format.parseObject("ONEXXX67890123456789012345678901234567890123456789012345678901234567890123456789");
    } catch (DateTimeParseException ex) {
        assertEquals(ex.getMessage().contains("ONEXXX6789012345678901234567890123456789012345678901234567890123..."), true);
        assertEquals(ex.getParsedString(), "ONEXXX67890123456789012345678901234567890123456789012345678901234567890123456789");
        assertEquals(ex.getErrorIndex(), 3);
        throw ex;
    }
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test(expectedExceptions=DateTimeParseException.class)
public void test_parseBest_String_parseIncomplete() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    try {
        test.parseBest("ONE30SomethingElse", ZonedDateTime::from, LocalDate::from);
    } catch (DateTimeParseException ex) {
        assertEquals(ex.getMessage().contains("could not be parsed"), true);
        assertEquals(ex.getMessage().contains("ONE30SomethingElse"), true);
        assertEquals(ex.getParsedString(), "ONE30SomethingElse");
        assertEquals(ex.getErrorIndex(), 5);
        throw ex;
    }
}
项目:openjdk-jdk10    文件:TestNonIsoFormatter.java   
@Test(dataProvider="format_data")
public void test_parseLocalizedText(Chronology chrono, Locale formatLocale, Locale numberingLocale,
                                    ChronoLocalDate expected, String text) {
    DateTimeFormatter dtf = DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL)
        .withChronology(chrono).withLocale(formatLocale)
        .withDecimalStyle(DecimalStyle.of(numberingLocale));
    TemporalAccessor temporal = dtf.parse(text);
    ChronoLocalDate date = chrono.date(temporal);
    assertEquals(date, expected);
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test
public void test_parseUnresolved_StringParsePosition() {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    ParsePosition pos = new ParsePosition(0);
    TemporalAccessor result = test.parseUnresolved("ONE30XXX", pos);
    assertEquals(pos.getIndex(), 5);
    assertEquals(pos.getErrorIndex(), -1);
    assertEquals(result.getLong(DAY_OF_MONTH), 30L);
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test
public void test_parseUnresolved_StringParsePosition_parseError() {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    ParsePosition pos = new ParsePosition(0);
    TemporalAccessor result = test.parseUnresolved("ONEXXX", pos);
    assertEquals(pos.getIndex(), 0);
    assertEquals(pos.getErrorIndex(), 3);
    assertEquals(result, null);
}
项目:openjdk-jdk10    文件:TestNonIsoFormatter.java   
@Test(dataProvider="format_data")
public void test_formatLocalizedDate(Chronology chrono, Locale formatLocale, Locale numberingLocale,
                                     ChronoLocalDate date, String expected) {
    DateTimeFormatter dtf = DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL)
        .withChronology(chrono).withLocale(formatLocale)
        .withDecimalStyle(DecimalStyle.of(numberingLocale));
    String text = dtf.format(date);
    assertEquals(text, expected);
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test
public void test_toFormat_format() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    String result = format.format(LocalDate.of(2008, 6, 30));
    assertEquals(result, "ONE30");
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test
public void test_toFormat_parseObject_String() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    TemporalAccessor result = (TemporalAccessor) format.parseObject("ONE30");
    assertEquals(result.isSupported(DAY_OF_MONTH), true);
    assertEquals(result.getLong(DAY_OF_MONTH), 30L);
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test(expectedExceptions=ParseException.class)
public void test_toFormat_parseObject_String_parseError() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    try {
        format.parseObject("ONEXXX");
    } catch (ParseException ex) {
        assertEquals(ex.getMessage().contains("ONEXXX"), true);
        assertEquals(ex.getErrorOffset(), 3);
        throw ex;
    }
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test(expectedExceptions=ParseException.class)
public void test_toFormat_parseObject_String_parseErrorLongText() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    try {
        format.parseObject("ONEXXX67890123456789012345678901234567890123456789012345678901234567890123456789");
    } catch (DateTimeParseException ex) {
        assertEquals(ex.getMessage().contains("ONEXXX6789012345678901234567890123456789012345678901234567890123..."), true);
        assertEquals(ex.getParsedString(), "ONEXXX67890123456789012345678901234567890123456789012345678901234567890123456789");
        assertEquals(ex.getErrorIndex(), 3);
        throw ex;
    }
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test
public void test_toFormat_parseObject_StringParsePosition_parseError() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    ParsePosition pos = new ParsePosition(0);
    TemporalAccessor result = (TemporalAccessor) format.parseObject("ONEXXX", pos);
    assertEquals(pos.getIndex(), 0);  // TODO: is this right?
    assertEquals(pos.getErrorIndex(), 3);
    assertEquals(result, null);
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test(expectedExceptions=NullPointerException.class)
public void test_toFormat_parseObject_StringParsePosition_nullString() throws Exception {
    // SimpleDateFormat has this behavior
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    ParsePosition pos = new ParsePosition(0);
    format.parseObject((String) null, pos);
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test(expectedExceptions=NullPointerException.class)
public void test_toFormat_parseObject_StringParsePosition_nullParsePosition() throws Exception {
    // SimpleDateFormat has this behavior
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    format.parseObject("ONE30", (ParsePosition) null);
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test
public void test_toFormat_format() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    String result = format.format(LocalDate.of(2008, 6, 30));
    assertEquals(result, "ONE30");
}
项目:jdk8u-jdk    文件:TCKDateTimeFormatter.java   
@Test
public void test_toFormat_parseObject_StringParsePosition_invalidPosition_tooSmall() throws Exception {
    // SimpleDateFormat throws StringIndexOutOfBoundException
    DateTimeFormatter dtf = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    ParsePosition pos = new ParsePosition(-1);
    Format test = dtf.toFormat();
    assertNull(test.parseObject("ONE30", pos));
    assertTrue(pos.getErrorIndex() >= 0);
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test(expectedExceptions=NullPointerException.class)
public void test_toFormat_parseObject_StringParsePosition_nullString() throws Exception {
    // SimpleDateFormat has this behavior
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    ParsePosition pos = new ParsePosition(0);
    format.parseObject((String) null, pos);
}
项目:jdk8u-jdk    文件:TestDateTimeFormatter.java   
@Test
public void test_withLocale_same() throws Exception {
    DateTimeFormatter base =
        new DateTimeFormatterBuilder().appendLiteral("ONE")
                                      .appendValue(DAY_OF_MONTH, 1, 2, SignStyle.NOT_NEGATIVE)
                                      .toFormatter(Locale.ENGLISH)
                                      .withDecimalStyle(DecimalStyle.STANDARD);
    DateTimeFormatter test = base.withLocale(Locale.ENGLISH);
    assertSame(test, base);
}
项目:jdk8u-jdk    文件:AbstractTestPrinterParser.java   
@BeforeMethod
public void setUp() {
    buf = new StringBuilder();
    builder = new DateTimeFormatterBuilder();
    dta = ZonedDateTime.of(LocalDateTime.of(2011, 6, 30, 12, 30, 40, 0), ZoneId.of("Europe/Paris"));
    locale = Locale.ENGLISH;
    decimalStyle = DecimalStyle.STANDARD;
}
项目:openjdk-jdk10    文件:TestZoneTextPrinterParser.java   
private DateTimeFormatter getFormatter(Locale locale, TextStyle style, boolean ci) {
    DateTimeFormatterBuilder db = new DateTimeFormatterBuilder();
    if (ci) {
        db = db.parseCaseInsensitive();
    }
    return db.appendZoneText(style)
             .toFormatter(locale)
             .withDecimalStyle(DecimalStyle.of(locale));
}
项目:jdk8u-jdk    文件:TestNonIsoFormatter.java   
@Test(dataProvider="format_data")
public void test_parseLocalizedText(Chronology chrono, Locale formatLocale, Locale numberingLocale,
                                    ChronoLocalDate expected, String text) {
    DateTimeFormatter dtf = DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL)
        .withChronology(chrono).withLocale(formatLocale)
        .withDecimalStyle(DecimalStyle.of(numberingLocale));
    TemporalAccessor temporal = dtf.parse(text);
    ChronoLocalDate date = chrono.date(temporal);
    assertEquals(date, expected);
}
项目:openjdk-jdk10    文件:TCKDecimalStyle.java   
@Test
public void test_of_Locale() {
    DecimalStyle loc1 = DecimalStyle.of(Locale.CANADA);
    assertEquals(loc1.getZeroDigit(), '0');
    assertEquals(loc1.getPositiveSign(), '+');
    assertEquals(loc1.getNegativeSign(), '-');
    assertEquals(loc1.getDecimalSeparator(), '.');
}
项目:openjdk-jdk10    文件:TCKDecimalStyle.java   
@Test
public void test_STANDARD() {
    DecimalStyle loc1 = DecimalStyle.STANDARD;
    assertEquals(loc1.getZeroDigit(), '0');
    assertEquals(loc1.getPositiveSign(), '+');
    assertEquals(loc1.getNegativeSign(), '-');
    assertEquals(loc1.getDecimalSeparator(), '.');
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test
public void test_toFormat_parseObject_StringParsePosition_invalidPosition_tooBig() throws Exception {
    // SimpleDateFormat has this behavior
    DateTimeFormatter dtf = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    ParsePosition pos = new ParsePosition(6);
    Format test = dtf.toFormat();
    assertNull(test.parseObject("ONE30", pos));
    assertTrue(pos.getErrorIndex() >= 0);
}
项目:openjdk-jdk10    文件:TCKDecimalStyle.java   
@Test
public void test_equalsHashCode1() {
    DecimalStyle a = DecimalStyle.STANDARD;
    DecimalStyle b = DecimalStyle.STANDARD;
    assertEquals(a.equals(b), true);
    assertEquals(b.equals(a), true);
    assertEquals(a.hashCode(), b.hashCode());
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test
public void test_toFormat_parseObject_String() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    TemporalAccessor result = (TemporalAccessor) format.parseObject("ONE30");
    assertEquals(result.isSupported(DAY_OF_MONTH), true);
    assertEquals(result.getLong(DAY_OF_MONTH), 30L);
}
项目:openjdk-jdk10    文件:TCKDecimalStyle.java   
@Test
public void test_equalsHashCode3() {
    DecimalStyle a = DecimalStyle.STANDARD.withZeroDigit('A');
    DecimalStyle b = DecimalStyle.STANDARD.withDecimalSeparator('A');
    assertEquals(a.equals(b), false);
    assertEquals(b.equals(a), false);
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test
public void test_print_TemporalAppendable() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    StringBuilder buf = new StringBuilder();
    test.formatTo(LocalDate.of(2008, 6, 30), buf);
    assertEquals(buf.toString(), "ONE30");
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test
public void test_toFormat_parseObject_StringParsePosition() throws Exception {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    Format format = test.toFormat();
    ParsePosition pos = new ParsePosition(0);
    TemporalAccessor result = (TemporalAccessor) format.parseObject("ONE30XXX", pos);
    assertEquals(pos.getIndex(), 5);
    assertEquals(pos.getErrorIndex(), -1);
    assertEquals(result.isSupported(DAY_OF_MONTH), true);
    assertEquals(result.getLong(DAY_OF_MONTH), 30L);
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test
public void test_parse_CharSequence() {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    TemporalAccessor result = test.parse("ONE30");
    assertEquals(result.isSupported(DAY_OF_MONTH), true);
    assertEquals(result.getLong(DAY_OF_MONTH), 30L);
    assertEquals(result.isSupported(HOUR_OF_DAY), false);
}
项目:openjdk-jdk10    文件:TestDateTimeFormatter.java   
@Test
public void test_withLocale_same() throws Exception {
    DateTimeFormatter base =
        new DateTimeFormatterBuilder().appendLiteral("ONE")
                                      .appendValue(DAY_OF_MONTH, 1, 2, SignStyle.NOT_NEGATIVE)
                                      .toFormatter(Locale.ENGLISH)
                                      .withDecimalStyle(DecimalStyle.STANDARD);
    DateTimeFormatter test = base.withLocale(Locale.ENGLISH);
    assertSame(test, base);
}
项目:openjdk-jdk10    文件:TCKDateTimeFormatter.java   
@Test
public void test_parse_CharSequence_ParsePosition() {
    DateTimeFormatter test = fmt.withLocale(Locale.ENGLISH).withDecimalStyle(DecimalStyle.STANDARD);
    ParsePosition pos = new ParsePosition(3);
    TemporalAccessor result = test.parse("XXXONE30XXX", pos);
    assertEquals(pos.getIndex(), 8);
    assertEquals(pos.getErrorIndex(), -1);
    assertEquals(result.isSupported(DAY_OF_MONTH), true);
    assertEquals(result.getLong(DAY_OF_MONTH), 30L);
    assertEquals(result.isSupported(HOUR_OF_DAY), false);
}