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);
}
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" } };
}
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);
}
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));
}
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));
}
Aggregations