add a special macro for comparing time_t values to fix unit test compilation on platforms with 64 bit time_t (such as FreeBSD 6.2 apparently)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2008-06-01 13:01:59 +00:00
parent c4e2528835
commit 77fa3d8243
3 changed files with 11 additions and 5 deletions

View File

@ -104,6 +104,10 @@
} \
}
// Use this macro to compare the expected time_t value with the result of not
// necessarily time_t type
#define WX_ASSERT_TIME_T_EQUAL(t, n) CPPUNIT_ASSERT_EQUAL((t), (time_t)(n))
// Use this macro to assert with the given formatted message (it should contain
// the format string and arguments in a separate pair of parentheses)
#define WX_ASSERT_MESSAGE(msg, cond) \

View File

@ -376,11 +376,13 @@ wxDateTime::Country wxDateTime::ms_country = wxDateTime::Country_Unknown;
// debugger helper: shows what the date really is
#ifdef __WXDEBUG__
extern const wxChar *wxDumpDate(const wxDateTime* dt)
extern const char *wxDumpDate(const wxDateTime* dt)
{
static wxChar buf[128];
static char buf[128];
wxStrcpy(buf, dt->Format(_T("%Y-%m-%d (%a) %H:%M:%S")));
wxString fmt(dt->Format("%Y-%m-%d (%a) %H:%M:%S"));
wxStrncpy(buf, fmt + " (" + dt->GetValue().ToString() + " ticks)",
WXSIZEOF(buf));
return buf;
}

View File

@ -737,11 +737,11 @@ void DateTimeTestCase::TestTimeTicks()
// ignore DST, the test data already takes it into account
dt.MakeTimezone(TZ_TEST, true);
long ticks = (dt.GetValue() / 1000).ToLong();
CPPUNIT_ASSERT_EQUAL( d.ticks, ticks + tzOffset );
WX_ASSERT_TIME_T_EQUAL( d.ticks, ticks + tzOffset );
dt = d.DT().FromTimezone(wxDateTime::UTC);
ticks = (dt.GetValue() / 1000).ToLong();
CPPUNIT_ASSERT_EQUAL( d.gmticks, ticks );
WX_ASSERT_TIME_T_EQUAL( d.gmticks, ticks );
}
}