Search in sources :

Example 61 with WeekFields

use of java.time.temporal.WeekFields in project j2objc by google.

the class TCKWeekFields method test_parse_resolve_localizedWoWBYDow.

// -----------------------------------------------------------------------
@Test
@UseDataProvider("data_weekFields")
public void test_parse_resolve_localizedWoWBYDow(DayOfWeek firstDayOfWeek, int minDays) {
    LocalDate date = LocalDate.of(2012, 12, 31);
    WeekFields week = WeekFields.of(firstDayOfWeek, minDays);
    TemporalField dowField = week.dayOfWeek();
    TemporalField wowbyField = week.weekOfWeekBasedYear();
    TemporalField yowbyField = week.weekBasedYear();
    for (int i = 1; i <= 60; i++) {
        DateTimeFormatter f = new DateTimeFormatterBuilder().appendValue(yowbyField).appendLiteral(':').appendValue(wowbyField).appendLiteral(':').appendValue(dowField).toFormatter();
        String str = date.get(yowbyField) + ":" + date.get(wowbyField) + ":" + date.get(dowField);
        LocalDate parsed = LocalDate.parse(str, f);
        assertEquals(" :: " + str + " " + i, parsed, date);
        date = date.plusDays(1);
    }
}
Also used : TemporalField(java.time.temporal.TemporalField) WeekFields(java.time.temporal.WeekFields) LocalDate(java.time.LocalDate) DateTimeFormatter(java.time.format.DateTimeFormatter) DateTimeFormatterBuilder(java.time.format.DateTimeFormatterBuilder) Test(org.junit.Test) AbstractTCKTest(tck.java.time.AbstractTCKTest) UseDataProvider(com.tngtech.java.junit.dataprovider.UseDataProvider)

Example 62 with WeekFields

use of java.time.temporal.WeekFields in project j2objc by google.

the class TCKWeekFields method test_parse_resolve_localizedWom_strict.

@Test
@UseDataProvider("data_weekFields")
public void test_parse_resolve_localizedWom_strict(DayOfWeek firstDayOfWeek, int minDays) {
    WeekFields week = WeekFields.of(firstDayOfWeek, minDays);
    TemporalField womField = week.weekOfMonth();
    DateTimeFormatter f = new DateTimeFormatterBuilder().appendValue(YEAR).appendLiteral(':').appendValue(MONTH_OF_YEAR).appendLiteral(':').appendValue(womField).appendLiteral(':').appendValue(DAY_OF_WEEK).toFormatter().withResolverStyle(STRICT);
    String str = "2012:1:0:1";
    try {
        LocalDate date = LocalDate.parse(str, f);
        assertEquals(date.getYear(), 2012);
        assertEquals(date.getMonthValue(), 1);
        assertEquals(date.get(womField), 0);
        assertEquals(date.get(DAY_OF_WEEK), 1);
    } catch (DateTimeException ex) {
    // expected
    }
}
Also used : TemporalField(java.time.temporal.TemporalField) DateTimeException(java.time.DateTimeException) WeekFields(java.time.temporal.WeekFields) DateTimeFormatter(java.time.format.DateTimeFormatter) LocalDate(java.time.LocalDate) DateTimeFormatterBuilder(java.time.format.DateTimeFormatterBuilder) Test(org.junit.Test) AbstractTCKTest(tck.java.time.AbstractTCKTest) UseDataProvider(com.tngtech.java.junit.dataprovider.UseDataProvider)

Example 63 with WeekFields

use of java.time.temporal.WeekFields in project j2objc by google.

the class TCKWeekFields method test_withDayOfWeek.

// -----------------------------------------------------------------------
// withDayOfWeek()
// -----------------------------------------------------------------------
@Test
@UseDataProvider("data_weekFields")
public void test_withDayOfWeek(DayOfWeek firstDayOfWeek, int minDays) {
    // Safely in the middle of a month
    LocalDate day = LocalDate.of(2012, 12, 15);
    WeekFields week = WeekFields.of(firstDayOfWeek, minDays);
    TemporalField dowField = week.dayOfWeek();
    TemporalField womField = week.weekOfMonth();
    TemporalField woyField = week.weekOfYear();
    int wom = day.get(womField);
    int woy = day.get(woyField);
    for (int dow = 1; dow <= 7; dow++) {
        LocalDate result = day.with(dowField, dow);
        assertEquals(String.format("Incorrect new Day of week: %s", result), result.get(dowField), dow);
        assertEquals("Week of Month should not change", result.get(womField), wom);
        assertEquals("Week of Year should not change", result.get(woyField), woy);
    }
}
Also used : TemporalField(java.time.temporal.TemporalField) WeekFields(java.time.temporal.WeekFields) LocalDate(java.time.LocalDate) Test(org.junit.Test) AbstractTCKTest(tck.java.time.AbstractTCKTest) UseDataProvider(com.tngtech.java.junit.dataprovider.UseDataProvider)

Example 64 with WeekFields

use of java.time.temporal.WeekFields in project j2objc by google.

the class TCKWeekFields method test_of_DayOfWeek_int_singleton.

@Test
@UseDataProvider("data_weekFields")
public void test_of_DayOfWeek_int_singleton(DayOfWeek firstDayOfWeek, int minDays) {
    WeekFields week = WeekFields.of(firstDayOfWeek, minDays);
    assertEquals("Incorrect firstDayOfWeek", week.getFirstDayOfWeek(), firstDayOfWeek);
    assertEquals("Incorrect MinimalDaysInFirstWeek", week.getMinimalDaysInFirstWeek(), minDays);
    assertSame(WeekFields.of(firstDayOfWeek, minDays), week);
}
Also used : WeekFields(java.time.temporal.WeekFields) Test(org.junit.Test) AbstractTCKTest(tck.java.time.AbstractTCKTest) UseDataProvider(com.tngtech.java.junit.dataprovider.UseDataProvider)

Example 65 with WeekFields

use of java.time.temporal.WeekFields in project j2objc by google.

the class TCKWeekFields method test_parse_resolve_localizedWoyDow.

// -----------------------------------------------------------------------
@Test
@UseDataProvider("data_weekFields")
public void test_parse_resolve_localizedWoyDow(DayOfWeek firstDayOfWeek, int minDays) {
    LocalDate date = LocalDate.of(2012, 12, 15);
    WeekFields week = WeekFields.of(firstDayOfWeek, minDays);
    TemporalField dowField = week.dayOfWeek();
    TemporalField woyField = week.weekOfYear();
    for (int i = 1; i <= 60; i++) {
        DateTimeFormatter f = new DateTimeFormatterBuilder().appendValue(YEAR).appendLiteral(':').appendValue(MONTH_OF_YEAR).appendLiteral(':').appendValue(woyField).appendLiteral(':').appendValue(dowField).toFormatter();
        String str = date.getYear() + ":" + date.getMonthValue() + ":" + date.get(woyField) + ":" + date.get(dowField);
        LocalDate parsed = LocalDate.parse(str, f);
        assertEquals(" :: " + str + " " + i, parsed, date);
        date = date.plusDays(1);
    }
}
Also used : TemporalField(java.time.temporal.TemporalField) WeekFields(java.time.temporal.WeekFields) LocalDate(java.time.LocalDate) DateTimeFormatter(java.time.format.DateTimeFormatter) DateTimeFormatterBuilder(java.time.format.DateTimeFormatterBuilder) Test(org.junit.Test) AbstractTCKTest(tck.java.time.AbstractTCKTest) UseDataProvider(com.tngtech.java.junit.dataprovider.UseDataProvider)

Aggregations

WeekFields (java.time.temporal.WeekFields)73 AbstractTCKTest (tck.java.time.AbstractTCKTest)58 LocalDate (java.time.LocalDate)57 TemporalField (java.time.temporal.TemporalField)51 DateTimeFormatter (java.time.format.DateTimeFormatter)36 DateTimeFormatterBuilder (java.time.format.DateTimeFormatterBuilder)34 Test (org.junit.Test)33 Test (org.testng.annotations.Test)33 UseDataProvider (com.tngtech.java.junit.dataprovider.UseDataProvider)31 DayOfWeek (java.time.DayOfWeek)7 DateTimeException (java.time.DateTimeException)6 ValueRange (java.time.temporal.ValueRange)6 ParsePosition (java.text.ParsePosition)4 TemporalAccessor (java.time.temporal.TemporalAccessor)4 ByteArrayInputStream (java.io.ByteArrayInputStream)2 ByteArrayOutputStream (java.io.ByteArrayOutputStream)2 IOException (java.io.IOException)2 ObjectInputStream (java.io.ObjectInputStream)2 ObjectOutputStream (java.io.ObjectOutputStream)2 GregorianCalendar (java.util.GregorianCalendar)2