| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- package net.ranides.assira.time;
- import org.junit.Test;
- import java.time.LocalDate;
- import java.time.ZoneId;
- import java.time.ZonedDateTime;
- import static org.junit.Assert.*;
- public class ZonedDateTest {
- @Test
- public void testConstructor() {
- ZonedDate date = ZonedDate.of(DateTimeZones.PL, LocalDate.of(2020, 11, 28));
- assertEquals("2020-11-28 [Europe/Warsaw]", date.toString());
- assertEquals(DateTimeZones.PL, ZoneId.from(date));
- }
- @Test
- public void testEpochSeconds() {
- ZonedDateTime datetime1 = DateTimeLiteral.datetimeUtc(2020, 11, 20, 20, 45, 0);
- ZonedDateTime datetime2 = DateTimeLiteral.datetimeUtc(2020, 11, 20, 20, 45, 0);
- ZonedDateTime datetime3 = DateTimeLiteral.datetimeUtc(2020, 11, 20, 23, 45, 0);
- ZonedDate date1 = ZonedDate.of(DateTimeUtils.withZone(datetime1, DateTimeZones.UTC));
- ZonedDate date2 = ZonedDate.of(DateTimeUtils.withZone(datetime2, DateTimeZones.PL));
- ZonedDate date3 = ZonedDate.of(DateTimeUtils.withZone(datetime3, DateTimeZones.PL));
- assertEquals("2020-11-20 [UTC]", date1.toString());
- assertEquals("2020-11-20 [Europe/Warsaw]", date2.toString());
- assertEquals("2020-11-21 [Europe/Warsaw]", date3.toString());
- assertEquals(1605830400L, date1.withMin().toEpochSecond());
- assertEquals(1605826800L, date2.withMin().toEpochSecond());
- assertEquals(1605913200L, date3.withMin().toEpochSecond());
- ZonedDate date4 = ZonedDate.of(DateTimeZones.UTC, datetime1.toLocalDate());
- ZonedDate date5 = ZonedDate.of(DateTimeZones.PL, datetime2.toLocalDate());
- ZonedDate date6 = ZonedDate.of(DateTimeZones.PL, datetime3.toLocalDate());
- assertEquals("2020-11-20 [UTC]", date4.toString());
- assertEquals("2020-11-20 [Europe/Warsaw]", date5.toString());
- assertEquals("2020-11-20 [Europe/Warsaw]", date6.toString());
- assertEquals(1605830400L, date4.withMin().toEpochSecond());
- assertEquals(1605826800L, date5.withMin().toEpochSecond());
- assertEquals(1605826800L, date6.withMin().toEpochSecond());
- }
- @Test
- public void testEpochDay() {
- ZonedDateTime datetime1 = DateTimeLiteral.datetimeUtc(2020, 11, 20, 20, 45, 0);
- ZonedDateTime datetime2 = DateTimeLiteral.datetimeUtc(2020, 11, 20, 20, 45, 0);
- ZonedDateTime datetime3 = DateTimeLiteral.datetimeUtc(2020, 11, 20, 23, 45, 0);
- ZonedDate date1 = ZonedDate.of(DateTimeUtils.withZone(datetime1, DateTimeZones.UTC));
- ZonedDate date2 = ZonedDate.of(DateTimeUtils.withZone(datetime2, DateTimeZones.PL));
- ZonedDate date3 = ZonedDate.of(DateTimeUtils.withZone(datetime3, DateTimeZones.PL));
- assertEquals("2020-11-20 [UTC]", date1.toString());
- assertEquals("2020-11-20 [Europe/Warsaw]", date2.toString());
- assertEquals("2020-11-21 [Europe/Warsaw]", date3.toString());
- assertEquals(18586, date1.toEpochDay());
- assertEquals(18586, date2.toEpochDay());
- assertEquals(18587, date3.toEpochDay());
- ZonedDate date4 = ZonedDate.of(DateTimeZones.UTC, datetime1.toLocalDate());
- ZonedDate date5 = ZonedDate.of(DateTimeZones.PL, datetime2.toLocalDate());
- ZonedDate date6 = ZonedDate.of(DateTimeZones.PL, datetime3.toLocalDate());
- assertEquals("2020-11-20 [UTC]", date4.toString());
- assertEquals("2020-11-20 [Europe/Warsaw]", date5.toString());
- assertEquals("2020-11-20 [Europe/Warsaw]", date6.toString());
- assertEquals(18586, date4.toEpochDay());
- assertEquals(18586, date5.toEpochDay());
- assertEquals(18586, date6.toEpochDay());
- }
- }
|