double jdn = dt.GetJulianDayNumber();
CPPUNIT_ASSERT( jdn == d.jdn );
+
+ dt.Set(jdn);
+ CPPUNIT_ASSERT( dt.GetJulianDayNumber() == jdn );
}
}
{ { 3, wxDateTime::Apr, 1925 }, 1, wxDateTime::Fri, wxDateTime::Apr, 1925 },
{ { 21, wxDateTime::Mar, 2093 }, 3, wxDateTime::Sat, wxDateTime::Mar, 2093 },
{ { 3, wxDateTime::Dec, 2074 }, -5, wxDateTime::Mon, wxDateTime::Dec, 2074 },
- };
- static const wxChar *fmt = _T("%d-%b-%Y");
+ };
wxDateTime dt;
for ( n = 0; n < WXSIZEOF(weekDatesTestData); n++ )
{ { 11, wxDateTime::Aug, 2079 }, 32, 2, 2, 223 },
{ { 2, wxDateTime::Feb, 2063 }, 5, 1, 1, 33 },
{ { 16, wxDateTime::Oct, 1942 }, 42, 3, 3, 289 },
+ { { 30, wxDateTime::Dec, 2003 }, 1, 5, 5, 364 },
+ { { 2, wxDateTime::Jan, 2004 }, 1, 1, 1, 2 },
};
for ( size_t n = 0; n < WXSIZEOF(weekNumberTestDates); n++ )
CPPUNIT_ASSERT( wmon2 == wn.wmon2 );
CPPUNIT_ASSERT( week == wn.week );
- wxDateTime dt2(1, wxDateTime::Jan, d.year);
- dt2.SetToTheWeek(wn.week, dt.GetWeekDay());
+ int year = d.year;
+ if ( week == 1 && d.month != wxDateTime::Jan )
+ {
+ // this means we're in the first week of the next year
+ year++;
+ }
+
+ wxDateTime
+ dt2 = wxDateTime::SetToWeekOfYear(year, week, dt.GetWeekDay());
CPPUNIT_ASSERT( dt2 == dt );
}
}