00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef _SK_CPPUNIT_STRINGASSERT_H_
00011 #define _SK_CPPUNIT_STRINGASSERT_H_
00012
00013 #include <cppunit/TestAssert.h>
00014 #include <sk/util/String.h>
00015
00016 CPPUNIT_NS_BEGIN
00017
00018 template<>
00019 struct assertion_traits<std::string> {
00020 static bool equal(const std::string& x, const std::string& y) {
00021 return sk::util::String(x).equals(y);
00022 }
00023
00024 static std::string toString(const std::string& x) {
00025 return sk::util::String(x).inspect();
00026 }
00027 };
00028
00029 template<>
00030 struct assertion_traits<sk::util::String> {
00031 static bool equal(const sk::util::String& x, const sk::util::String& y) {
00032 return x.equals(y);
00033 }
00034
00035 static std::string toString(const sk::util::String& x) {
00036 return x.inspect();
00037 }
00038 };
00039
00040 void assertEquals(const char* expected, const char* actual, SourceLine sourceLine, const std::string& message);
00041 void assertEquals(const char* expected, const std::string& actual, SourceLine sourceLine, const std::string& message);
00042 void assertEquals(const std::string& expected, const char* actual, SourceLine sourceLine, const std::string& message);
00043 void assertEquals(const std::string& expected, const std::string& actual, SourceLine sourceLine, const std::string& message);
00044
00045 CPPUNIT_NS_END
00046
00047 #endif