CPPUNIT_TEST( TestDateParse );
CPPUNIT_TEST( TestTimeArithmetics );
CPPUNIT_TEST( TestDSTBug );
+ CPPUNIT_TEST( TestDateOnly );
CPPUNIT_TEST_SUITE_END();
void TestLeapYears();
void TestDateParse();
void TestTimeArithmetics();
void TestDSTBug();
+ void TestDateOnly();
DECLARE_NO_COPY_CLASS(DateTimeTestCase)
};
// convert back
wxDateTime dt2;
- const wxChar *result = dt2.ParseFormat(s, fmt);
+ const wxChar *result = dt2.ParseFormat(s.c_str(), fmt);
if ( !result )
{
// converion failed - should it have?
case CompareTime:
CPPUNIT_ASSERT( dt.IsSameTime(dt2) );
break;
+
+ case CompareNone:
+ wxFAIL_MSG( _T("unexpected") );
+ break;
}
}
}
{
/////////////////////////
// Test GetEndDST()
- wxDateTime dt = wxDateTime::GetEndDST(2004);
+ wxDateTime dt = wxDateTime::GetEndDST(2004, wxDateTime::France);
CPPUNIT_ASSERT_EQUAL(31, (int)dt.GetDay());
CPPUNIT_ASSERT_EQUAL(wxDateTime::Oct, dt.GetMonth());
CPPUNIT_ASSERT_EQUAL(2004, (int)dt.GetYear());
- CPPUNIT_ASSERT_EQUAL(2, (int)dt.GetHour());
+ CPPUNIT_ASSERT_EQUAL(1, (int)dt.GetHour());
CPPUNIT_ASSERT_EQUAL(0, (int)dt.GetMinute());
CPPUNIT_ASSERT_EQUAL(0, (int)dt.GetSecond());
CPPUNIT_ASSERT_EQUAL(0, (int)dt.GetMillisecond());
#endif // CHANGE_SYSTEM_DATE
}
+void DateTimeTestCase::TestDateOnly()
+{
+ wxDateTime dt(19, wxDateTime::Jan, 2007, 15, 01, 00);
+
+ static const wxDateTime::wxDateTime_t DATE_ZERO = 0;
+ CPPUNIT_ASSERT_EQUAL( DATE_ZERO, dt.GetDateOnly().GetHour() );
+ CPPUNIT_ASSERT_EQUAL( DATE_ZERO, dt.GetDateOnly().GetMinute() );
+ CPPUNIT_ASSERT_EQUAL( DATE_ZERO, dt.GetDateOnly().GetSecond() );
+ CPPUNIT_ASSERT_EQUAL( DATE_ZERO, dt.GetDateOnly().GetMillisecond() );
+
+ dt.ResetTime();
+ CPPUNIT_ASSERT_EQUAL( wxDateTime(19, wxDateTime::Jan, 2007), dt );
+
+ CPPUNIT_ASSERT_EQUAL( wxDateTime::Today(), wxDateTime::Now().GetDateOnly() );
+}
+
#endif // wxUSE_DATETIME