a25b5bbfc9
Instead of forcing the tests to manually use memcmp(), specialize CppUnit::assertion_traits<> for wxImage. This allows to simply use CPPUNIT_ASSERT_EQUAL() and related macros with wxImage objects. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67616 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
44 lines
1.2 KiB
C++
44 lines
1.2 KiB
C++
///////////////////////////////////////////////////////////////////////////////
|
|
// Name: tests/testimage.h
|
|
// Purpose: Unit test helpers for dealing with wxImage.
|
|
// Author: Vadim Zeitlin
|
|
// RCS-ID: $Id$
|
|
// Copyright: (c) 2011 Vadim Zeitlin <vadim@wxwidgets.org>
|
|
// Licence: wxWindows licence
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _WX_TESTS_TESTIMAGE_H_
|
|
#define _WX_TESTS_TESTIMAGE_H_
|
|
|
|
#include "wx/image.h"
|
|
|
|
CPPUNIT_NS_BEGIN
|
|
|
|
template <>
|
|
struct assertion_traits<wxImage>
|
|
{
|
|
static bool equal(const wxImage& i1, const wxImage& i2)
|
|
{
|
|
if ( i1.GetWidth() != i2.GetWidth() )
|
|
return false;
|
|
|
|
if ( i1.GetHeight() != i2.GetHeight() )
|
|
return false;
|
|
|
|
return memcmp(i1.GetData(), i2.GetData(),
|
|
i1.GetWidth()*i1.GetHeight()*3) == 0;
|
|
}
|
|
|
|
static std::string toString(const wxImage& image)
|
|
{
|
|
return wxString::Format("image of size %d*%d",
|
|
image.GetWidth(),
|
|
image.GetHeight())
|
|
.ToStdString();
|
|
}
|
|
};
|
|
|
|
CPPUNIT_NS_END
|
|
|
|
#endif // _WX_TESTS_TESTIMAGE_H_
|