Search in sources :

Example 1 with ThaiBuddhistDate

use of java.time.chrono.ThaiBuddhistDate in project jdk8u_jdk by JetBrains.

the class TestExampleCode method test_calendarPackageExample.

@Test
public void test_calendarPackageExample() {
    // Enumerate the list of available calendars and print today for each
    Set<Chronology> chronos = Chronology.getAvailableChronologies();
    for (Chronology chrono : chronos) {
        ChronoLocalDate date = chrono.dateNow();
        System.out.printf("   %20s: %s%n", chrono.getId(), date.toString());
    }
    // Print the Thai Buddhist date
    ThaiBuddhistDate now1 = ThaiBuddhistDate.now();
    int day = now1.get(ChronoField.DAY_OF_MONTH);
    int dow = now1.get(ChronoField.DAY_OF_WEEK);
    int month = now1.get(ChronoField.MONTH_OF_YEAR);
    int year = now1.get(ChronoField.YEAR);
    System.out.printf("  Today is %s %s %d-%s-%d%n", now1.getChronology().getId(), dow, day, month, year);
    // Print today's date and the last day of the year for the Thai Buddhist Calendar.
    ThaiBuddhistDate first = now1.with(ChronoField.DAY_OF_MONTH, 1).with(ChronoField.MONTH_OF_YEAR, 1);
    ThaiBuddhistDate last = first.plus(1, ChronoUnit.YEARS).minus(1, ChronoUnit.DAYS);
    System.out.printf("  %s: 1st of year: %s; end of year: %s%n", last.getChronology().getId(), first, last);
}
Also used : ChronoLocalDate(java.time.chrono.ChronoLocalDate) ThaiBuddhistDate(java.time.chrono.ThaiBuddhistDate) HijrahChronology(java.time.chrono.HijrahChronology) Chronology(java.time.chrono.Chronology) Test(org.testng.annotations.Test)

Example 2 with ThaiBuddhistDate

use of java.time.chrono.ThaiBuddhistDate in project jdk8u_jdk by JetBrains.

the class TCKDateTimeFormatter method data_format_withZone_withChronology.

//-----------------------------------------------------------------------
// format
//-----------------------------------------------------------------------
@DataProvider(name = "formatWithZoneWithChronology")
Object[][] data_format_withZone_withChronology() {
    YearMonth ym = YearMonth.of(2008, 6);
    LocalDate ld = LocalDate.of(2008, 6, 30);
    LocalTime lt = LocalTime.of(11, 30);
    LocalDateTime ldt = LocalDateTime.of(2008, 6, 30, 11, 30);
    OffsetTime ot = OffsetTime.of(LocalTime.of(11, 30), OFFSET_PONE);
    OffsetDateTime odt = OffsetDateTime.of(LocalDateTime.of(2008, 6, 30, 11, 30), OFFSET_PONE);
    ZonedDateTime zdt = ZonedDateTime.of(LocalDateTime.of(2008, 6, 30, 11, 30), ZONE_PARIS);
    ChronoZonedDateTime<ThaiBuddhistDate> thaiZdt = ThaiBuddhistChronology.INSTANCE.zonedDateTime(zdt);
    Instant instant = Instant.ofEpochSecond(3600);
    return new Object[][] { { null, null, DayOfWeek.MONDAY, "::::" }, { null, null, ym, "2008::::ISO" }, { null, null, ld, "2008::::ISO" }, { null, null, lt, ":11:::" }, { null, null, ldt, "2008:11:::ISO" }, { null, null, ot, ":11:+01:00::" }, { null, null, odt, "2008:11:+01:00::ISO" }, { null, null, zdt, "2008:11:+02:00:Europe/Paris:ISO" }, { null, null, instant, "::::" }, { IsoChronology.INSTANCE, null, DayOfWeek.MONDAY, "::::ISO" }, { IsoChronology.INSTANCE, null, ym, "2008::::ISO" }, { IsoChronology.INSTANCE, null, ld, "2008::::ISO" }, { IsoChronology.INSTANCE, null, lt, ":11:::ISO" }, { IsoChronology.INSTANCE, null, ldt, "2008:11:::ISO" }, { IsoChronology.INSTANCE, null, ot, ":11:+01:00::ISO" }, { IsoChronology.INSTANCE, null, odt, "2008:11:+01:00::ISO" }, { IsoChronology.INSTANCE, null, zdt, "2008:11:+02:00:Europe/Paris:ISO" }, { IsoChronology.INSTANCE, null, instant, "::::ISO" }, { null, ZONE_PARIS, DayOfWeek.MONDAY, ":::Europe/Paris:" }, { null, ZONE_PARIS, ym, "2008:::Europe/Paris:ISO" }, { null, ZONE_PARIS, ld, "2008:::Europe/Paris:ISO" }, { null, ZONE_PARIS, lt, ":11::Europe/Paris:" }, { null, ZONE_PARIS, ldt, "2008:11::Europe/Paris:ISO" }, { null, ZONE_PARIS, ot, ":11:+01:00:Europe/Paris:" }, { null, ZONE_PARIS, odt, "2008:12:+02:00:Europe/Paris:ISO" }, { null, ZONE_PARIS, zdt, "2008:11:+02:00:Europe/Paris:ISO" }, { null, ZONE_PARIS, instant, "1970:02:+01:00:Europe/Paris:ISO" }, { null, OFFSET_PTHREE, DayOfWeek.MONDAY, ":::+03:00:" }, { null, OFFSET_PTHREE, ym, "2008:::+03:00:ISO" }, { null, OFFSET_PTHREE, ld, "2008:::+03:00:ISO" }, { null, OFFSET_PTHREE, lt, ":11::+03:00:" }, { null, OFFSET_PTHREE, ldt, "2008:11::+03:00:ISO" }, // offset and zone clash
    { null, OFFSET_PTHREE, ot, null }, { null, OFFSET_PTHREE, odt, "2008:13:+03:00:+03:00:ISO" }, { null, OFFSET_PTHREE, zdt, "2008:12:+03:00:+03:00:ISO" }, { null, OFFSET_PTHREE, instant, "1970:04:+03:00:+03:00:ISO" }, // not a complete date
    { ThaiBuddhistChronology.INSTANCE, null, DayOfWeek.MONDAY, null }, // not a complete date
    { ThaiBuddhistChronology.INSTANCE, null, ym, null }, { ThaiBuddhistChronology.INSTANCE, null, ld, "2551::::ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, null, lt, ":11:::ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, null, ldt, "2551:11:::ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, null, ot, ":11:+01:00::ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, null, odt, "2551:11:+01:00::ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, null, zdt, "2551:11:+02:00:Europe/Paris:ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, null, instant, "::::ThaiBuddhist" }, // not a complete date
    { ThaiBuddhistChronology.INSTANCE, null, DayOfWeek.MONDAY, null }, // not a complete date
    { ThaiBuddhistChronology.INSTANCE, ZONE_PARIS, ym, null }, { ThaiBuddhistChronology.INSTANCE, ZONE_PARIS, ld, "2551:::Europe/Paris:ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, ZONE_PARIS, lt, ":11::Europe/Paris:ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, ZONE_PARIS, ldt, "2551:11::Europe/Paris:ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, ZONE_PARIS, ot, ":11:+01:00:Europe/Paris:ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, ZONE_PARIS, odt, "2551:12:+02:00:Europe/Paris:ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, ZONE_PARIS, zdt, "2551:11:+02:00:Europe/Paris:ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, ZONE_PARIS, instant, "2513:02:+01:00:Europe/Paris:ThaiBuddhist" }, { null, ZONE_PARIS, thaiZdt, "2551:11:+02:00:Europe/Paris:ThaiBuddhist" }, { ThaiBuddhistChronology.INSTANCE, ZONE_PARIS, thaiZdt, "2551:11:+02:00:Europe/Paris:ThaiBuddhist" }, { IsoChronology.INSTANCE, ZONE_PARIS, thaiZdt, "2008:11:+02:00:Europe/Paris:ISO" } };
}
Also used : LocalDateTime(java.time.LocalDateTime) ThaiBuddhistDate(java.time.chrono.ThaiBuddhistDate) YearMonth(java.time.YearMonth) LocalTime(java.time.LocalTime) OffsetDateTime(java.time.OffsetDateTime) ZonedDateTime(java.time.ZonedDateTime) ChronoZonedDateTime(java.time.chrono.ChronoZonedDateTime) OffsetTime(java.time.OffsetTime) Instant(java.time.Instant) LocalDate(java.time.LocalDate) DataProvider(org.testng.annotations.DataProvider)

Example 3 with ThaiBuddhistDate

use of java.time.chrono.ThaiBuddhistDate in project jdk8u_jdk by JetBrains.

the class TCKThaiBuddhistChronology method test_resolve_yd_lenient.

@Test(dataProvider = "resolve_yd")
public void test_resolve_yd_lenient(int y, int d, ThaiBuddhistDate expected, boolean smart, boolean strict) {
    Map<TemporalField, Long> fieldValues = new HashMap<>();
    fieldValues.put(ChronoField.YEAR, (long) y);
    fieldValues.put(ChronoField.DAY_OF_YEAR, (long) d);
    ThaiBuddhistDate date = ThaiBuddhistChronology.INSTANCE.resolveDate(fieldValues, ResolverStyle.LENIENT);
    assertEquals(date, expected);
    assertEquals(fieldValues.size(), 0);
}
Also used : ThaiBuddhistDate(java.time.chrono.ThaiBuddhistDate) TemporalField(java.time.temporal.TemporalField) HashMap(java.util.HashMap) Test(org.testng.annotations.Test)

Example 4 with ThaiBuddhistDate

use of java.time.chrono.ThaiBuddhistDate in project jdk8u_jdk by JetBrains.

the class TCKThaiBuddhistChronology method test_periodUntilDiffChrono.

@Test
public void test_periodUntilDiffChrono() {
    ThaiBuddhistDate mdate1 = ThaiBuddhistDate.of(1, 1, 1);
    ThaiBuddhistDate mdate2 = ThaiBuddhistDate.of(2, 2, 2);
    MinguoDate ldate2 = MinguoChronology.INSTANCE.date(mdate2);
    ChronoPeriod period = mdate1.until(ldate2);
    assertEquals(period, ThaiBuddhistChronology.INSTANCE.period(1, 1, 1));
}
Also used : ChronoPeriod(java.time.chrono.ChronoPeriod) ThaiBuddhistDate(java.time.chrono.ThaiBuddhistDate) MinguoDate(java.time.chrono.MinguoDate) Test(org.testng.annotations.Test)

Example 5 with ThaiBuddhistDate

use of java.time.chrono.ThaiBuddhistDate in project jdk8u_jdk by JetBrains.

the class TCKThaiBuddhistChronology method test_adjust1.

//-----------------------------------------------------------------------
// with(WithAdjuster)
//-----------------------------------------------------------------------
@Test
public void test_adjust1() {
    ThaiBuddhistDate base = ThaiBuddhistChronology.INSTANCE.date(1728, 10, 29);
    ThaiBuddhistDate test = base.with(TemporalAdjusters.lastDayOfMonth());
    assertEquals(test, ThaiBuddhistChronology.INSTANCE.date(1728, 10, 31));
}
Also used : ThaiBuddhistDate(java.time.chrono.ThaiBuddhistDate) Test(org.testng.annotations.Test)

Aggregations

ThaiBuddhistDate (java.time.chrono.ThaiBuddhistDate)32 Test (org.testng.annotations.Test)29 TemporalField (java.time.temporal.TemporalField)10 HashMap (java.util.HashMap)10 DateTimeException (java.time.DateTimeException)7 LocalDateTime (java.time.LocalDateTime)3 ChronoPeriod (java.time.chrono.ChronoPeriod)3 MinguoDate (java.time.chrono.MinguoDate)3 LocalDate (java.time.LocalDate)2 ChronoLocalDate (java.time.chrono.ChronoLocalDate)2 DateTimeFormatterBuilder (java.time.format.DateTimeFormatterBuilder)2 ParsePosition (java.text.ParsePosition)1 Clock (java.time.Clock)1 Instant (java.time.Instant)1 LocalTime (java.time.LocalTime)1 OffsetDateTime (java.time.OffsetDateTime)1 OffsetTime (java.time.OffsetTime)1 YearMonth (java.time.YearMonth)1 ZonedDateTime (java.time.ZonedDateTime)1 ChronoZonedDateTime (java.time.chrono.ChronoZonedDateTime)1