summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/CppUnit')
m---------3rdParty/CppUnit0
-rw-r--r--3rdParty/CppUnit/README3
-rw-r--r--3rdParty/CppUnit/SConscript42
-rw-r--r--3rdParty/CppUnit/cppunit/AdditionalMessage.h76
-rw-r--r--3rdParty/CppUnit/cppunit/Asserter.h143
-rw-r--r--3rdParty/CppUnit/cppunit/BriefTestProgressListener.h43
-rw-r--r--3rdParty/CppUnit/cppunit/Exception.h90
-rw-r--r--3rdParty/CppUnit/cppunit/Message.h156
-rw-r--r--3rdParty/CppUnit/cppunit/Outputter.h26
-rw-r--r--3rdParty/CppUnit/cppunit/Portability.h177
-rw-r--r--3rdParty/CppUnit/cppunit/Protector.h94
-rw-r--r--3rdParty/CppUnit/cppunit/SourceLine.h63
-rw-r--r--3rdParty/CppUnit/cppunit/SynchronizedObject.h80
-rw-r--r--3rdParty/CppUnit/cppunit/Test.h117
-rw-r--r--3rdParty/CppUnit/cppunit/TestAssert.h428
-rw-r--r--3rdParty/CppUnit/cppunit/TestCaller.h204
-rw-r--r--3rdParty/CppUnit/cppunit/TestCase.h55
-rw-r--r--3rdParty/CppUnit/cppunit/TestComposite.h45
-rw-r--r--3rdParty/CppUnit/cppunit/TestFailure.h58
-rw-r--r--3rdParty/CppUnit/cppunit/TestFixture.h99
-rw-r--r--3rdParty/CppUnit/cppunit/TestLeaf.h44
-rw-r--r--3rdParty/CppUnit/cppunit/TestListener.h148
-rw-r--r--3rdParty/CppUnit/cppunit/TestPath.h211
-rw-r--r--3rdParty/CppUnit/cppunit/TestResult.h156
-rw-r--r--3rdParty/CppUnit/cppunit/TestResultCollector.h87
-rw-r--r--3rdParty/CppUnit/cppunit/TestRunner.h135
-rw-r--r--3rdParty/CppUnit/cppunit/TestSuccessListener.h39
-rw-r--r--3rdParty/CppUnit/cppunit/TestSuite.h80
-rw-r--r--3rdParty/CppUnit/cppunit/TextOutputter.h59
-rw-r--r--3rdParty/CppUnit/cppunit/TextTestProgressListener.h44
-rw-r--r--3rdParty/CppUnit/cppunit/TextTestResult.h39
-rw-r--r--3rdParty/CppUnit/cppunit/XmlOutputter.h167
-rw-r--r--3rdParty/CppUnit/cppunit/XmlOutputterHook.h163
-rw-r--r--3rdParty/CppUnit/cppunit/config-auto.h161
-rw-r--r--3rdParty/CppUnit/cppunit/config/CppUnitApi.h33
-rw-r--r--3rdParty/CppUnit/cppunit/config/SelectDllLoader.h76
-rw-r--r--3rdParty/CppUnit/cppunit/config/SourcePrefix.h14
-rw-r--r--3rdParty/CppUnit/cppunit/config/config-msvc6.h83
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/AutoRegisterSuite.h83
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/ExceptionTestCaseDecorator.h104
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/HelperMacros.h541
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/TestCaseDecorator.h40
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/TestFactory.h27
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/TestFactoryRegistry.h182
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/TestFixtureFactory.h50
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/TestNamer.h89
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/TestSuiteBuilderContext.h131
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/TestSuiteFactory.h27
-rw-r--r--3rdParty/CppUnit/cppunit/extensions/TypeInfoHelper.h33
-rw-r--r--3rdParty/CppUnit/cppunit/portability/CppUnitDeque.h25
-rw-r--r--3rdParty/CppUnit/cppunit/portability/CppUnitMap.h29
-rw-r--r--3rdParty/CppUnit/cppunit/portability/CppUnitSet.h28
-rw-r--r--3rdParty/CppUnit/cppunit/portability/CppUnitVector.h25
-rw-r--r--3rdParty/CppUnit/cppunit/portability/Stream.h347
-rw-r--r--3rdParty/CppUnit/cppunit/tools/Algorithm.h23
-rw-r--r--3rdParty/CppUnit/cppunit/tools/StringTools.h34
-rw-r--r--3rdParty/CppUnit/cppunit/tools/XmlDocument.h86
-rw-r--r--3rdParty/CppUnit/cppunit/tools/XmlElement.h149
-rw-r--r--3rdParty/CppUnit/cppunit/ui/text/TestRunner.h24
-rw-r--r--3rdParty/CppUnit/cppunit/ui/text/TextTestRunner.h97
-rw-r--r--3rdParty/CppUnit/src/AdditionalMessage.cpp41
-rw-r--r--3rdParty/CppUnit/src/Asserter.cpp101
-rw-r--r--3rdParty/CppUnit/src/BriefTestProgressListener.cpp49
-rw-r--r--3rdParty/CppUnit/src/DefaultProtector.cpp42
-rw-r--r--3rdParty/CppUnit/src/DefaultProtector.h27
-rw-r--r--3rdParty/CppUnit/src/Exception.cpp126
-rw-r--r--3rdParty/CppUnit/src/Message.cpp170
-rw-r--r--3rdParty/CppUnit/src/Protector.cpp86
-rw-r--r--3rdParty/CppUnit/src/ProtectorChain.cpp86
-rw-r--r--3rdParty/CppUnit/src/ProtectorChain.h51
-rw-r--r--3rdParty/CppUnit/src/ProtectorContext.h38
-rw-r--r--3rdParty/CppUnit/src/SourceLine.cpp81
-rw-r--r--3rdParty/CppUnit/src/StringTools.cpp80
-rw-r--r--3rdParty/CppUnit/src/SynchronizedObject.cpp32
-rw-r--r--3rdParty/CppUnit/src/Test.cpp97
-rw-r--r--3rdParty/CppUnit/src/TestCase.cpp137
-rw-r--r--3rdParty/CppUnit/src/TestComposite.cpp77
-rw-r--r--3rdParty/CppUnit/src/TestFactoryRegistry.cpp161
-rw-r--r--3rdParty/CppUnit/src/TestFailure.cpp71
-rw-r--r--3rdParty/CppUnit/src/TestLeaf.cpp28
-rw-r--r--3rdParty/CppUnit/src/TestNamer.cpp44
-rw-r--r--3rdParty/CppUnit/src/TestPath.cpp254
-rw-r--r--3rdParty/CppUnit/src/TestResult.cpp196
-rw-r--r--3rdParty/CppUnit/src/TestResultCollector.cpp117
-rw-r--r--3rdParty/CppUnit/src/TestRunner.cpp101
-rw-r--r--3rdParty/CppUnit/src/TestSuccessListener.cpp44
-rw-r--r--3rdParty/CppUnit/src/TestSuite.cpp64
-rw-r--r--3rdParty/CppUnit/src/TestSuiteBuilderContext.cpp85
-rw-r--r--3rdParty/CppUnit/src/TextOutputter.cpp140
-rw-r--r--3rdParty/CppUnit/src/TextTestProgressListener.cpp43
-rw-r--r--3rdParty/CppUnit/src/TextTestRunner.cpp144
-rw-r--r--3rdParty/CppUnit/src/TypeInfoHelper.cpp54
-rw-r--r--3rdParty/CppUnit/src/XmlDocument.cpp106
-rw-r--r--3rdParty/CppUnit/src/XmlElement.cpp226
-rw-r--r--3rdParty/CppUnit/src/XmlOutputter.cpp205
95 files changed, 0 insertions, 9316 deletions
diff --git a/3rdParty/CppUnit b/3rdParty/CppUnit
new file mode 160000
+Subproject b4c34eb947c6497c6387c55c7581ec875f4e7d4
diff --git a/3rdParty/CppUnit/README b/3rdParty/CppUnit/README
deleted file mode 100644
index 1dcd7ca..0000000
--- a/3rdParty/CppUnit/README
+++ /dev/null
@@ -1,3 +0,0 @@
-cppunit/conf-auto.h needs to be adapted for other platforms.
-Currently it works on all platforms, but I suspect breakage
-when dropping cygwin on Windows.
diff --git a/3rdParty/CppUnit/SConscript b/3rdParty/CppUnit/SConscript
deleted file mode 100644
index aabb196..0000000
--- a/3rdParty/CppUnit/SConscript
+++ /dev/null
@@ -1,42 +0,0 @@
-Import("env")
-
-env["CPPUNIT_FLAGS"] = {
- "CPPPATH": [env.Dir(".")],
- "LIBPATH": [env.Dir(".")],
- "LIBS": ["CppUnit"]
- }
-
-env.StaticLibrary("CppUnit", [
- "src/TextTestRunner.cpp",
- "src/TextTestProgressListener.cpp",
- "src/BriefTestProgressListener.cpp",
- "src/TextOutputter.cpp",
- "src/XmlOutputter.cpp",
- "src/XmlElement.cpp",
- "src/XmlDocument.cpp",
- "src/StringTools.cpp",
- "src/DefaultProtector.cpp",
- "src/Protector.cpp",
- "src/ProtectorChain.cpp",
- "src/SynchronizedObject.cpp",
- "src/SourceLine.cpp",
- "src/TestRunner.cpp",
- "src/TestFactoryRegistry.cpp",
- "src/TestSuite.cpp",
- "src/TestSuiteBuilderContext.cpp",
- "src/TestResult.cpp",
- "src/TestResultCollector.cpp",
- "src/TestSuccessListener.cpp",
- "src/TestComposite.cpp",
- "src/TestCase.cpp",
- "src/TestFailure.cpp",
- "src/TestLeaf.cpp",
- "src/TestNamer.cpp",
- "src/Asserter.cpp",
- "src/TypeInfoHelper.cpp",
- "src/Exception.cpp",
- "src/Message.cpp",
- "src/AdditionalMessage.cpp",
- "src/Test.cpp",
- "src/TestPath.cpp"
- ], CPPPATH = ".")
diff --git a/3rdParty/CppUnit/cppunit/AdditionalMessage.h b/3rdParty/CppUnit/cppunit/AdditionalMessage.h
deleted file mode 100644
index 917d754..0000000
--- a/3rdParty/CppUnit/cppunit/AdditionalMessage.h
+++ /dev/null
@@ -1,76 +0,0 @@
-#ifndef CPPUNIT_ADDITIONALMESSAGE_H
-#define CPPUNIT_ADDITIONALMESSAGE_H
-
-#include <cppunit/Message.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief An additional Message for assertions.
- * \ingroup CreatingNewAssertions
- *
- * Provides a implicit constructor that takes a single string. This allow this
- * class to be used as the message arguments in macros.
- *
- * The constructed object is either a Message with a single detail string if
- * a string was passed to the macro, or a copy of the Message passed to the macro.
- *
- * Here is an example of usage:
- * \code
- *
- * void checkStringEquals( const std::string &expected,
- * const std::string &actual,
- * const CppUnit::SourceLine &sourceLine,
- * const CppUnit::AdditionalMessage &message );
- *
- * #define XTLUT_ASSERT_STRING_EQUAL_MESSAGE( expected, actual, message ) \
- * ::XtlUt::Impl::checkStringEquals( ::Xtl::toString(expected), \
- * ::Xtl::toString(actual), \
- * CPPUNIT_SOURCELINE(), \
- * message )
- * \endcode
- *
- * In the previous example, the user can specify a simple string for \a message,
- * or a complex Message object.
- *
- * \see Message
- */
-class CPPUNIT_API AdditionalMessage : public Message
-{
-public:
- typedef Message SuperClass;
-
- /// Constructs an empty Message.
- AdditionalMessage();
-
- /*! \brief Constructs a Message with the specified detail string.
- * \param detail1 Detail string of the message. If empty, then it is not added.
- */
- AdditionalMessage( const std::string &detail1 );
-
- /*! \brief Constructs a Message with the specified detail string.
- * \param detail1 Detail string of the message. If empty, then it is not added.
- */
- AdditionalMessage( const char *detail1 );
-
- /*! \brief Constructs a copy of the specified message.
- * \param other Message to copy.
- */
- AdditionalMessage( const Message &other );
-
- /*! \brief Assignment operator.
- * \param other Message to copy.
- * \return Reference on this object.
- */
- AdditionalMessage &operator =( const Message &other );
-
-private:
-};
-
-
-CPPUNIT_NS_END
-
-
-
-#endif // CPPUNIT_ADDITIONALMESSAGE_H
diff --git a/3rdParty/CppUnit/cppunit/Asserter.h b/3rdParty/CppUnit/cppunit/Asserter.h
deleted file mode 100644
index 94dadaa..0000000
--- a/3rdParty/CppUnit/cppunit/Asserter.h
+++ /dev/null
@@ -1,143 +0,0 @@
-#ifndef CPPUNIT_ASSERTER_H
-#define CPPUNIT_ASSERTER_H
-
-#include <cppunit/AdditionalMessage.h>
-#include <cppunit/SourceLine.h>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-
-class Message;
-
-
-/*! \brief A set of functions to help writing assertion macros.
- * \ingroup CreatingNewAssertions
- *
- * Here is an example of assertion, a simplified version of the
- * actual assertion implemented in examples/cppunittest/XmlUniformiser.h:
- * \code
- * #include <cppunit/SourceLine.h>
- * #include <cppunit/TestAssert.h>
- *
- * void
- * checkXmlEqual( std::string expectedXml,
- * std::string actualXml,
- * CppUnit::SourceLine sourceLine )
- * {
- * std::string expected = XmlUniformiser( expectedXml ).stripped();
- * std::string actual = XmlUniformiser( actualXml ).stripped();
- *
- * if ( expected == actual )
- * return;
- *
- * ::CppUnit::Asserter::failNotEqual( expected,
- * actual,
- * sourceLine );
- * }
- *
- * /// Asserts that two XML strings are equivalent.
- * #define CPPUNITTEST_ASSERT_XML_EQUAL( expected, actual ) \
- * checkXmlEqual( expected, actual, \
- * CPPUNIT_SOURCELINE() )
- * \endcode
- */
-struct Asserter
-{
- /*! \brief Throws a Exception with the specified message and location.
- */
- static void CPPUNIT_API fail( const Message &message,
- const SourceLine &sourceLine = SourceLine() );
-
- /*! \brief Throws a Exception with the specified message and location.
- * \deprecated Use fail( Message, SourceLine ) instead.
- */
- static void CPPUNIT_API fail( std::string message,
- const SourceLine &sourceLine = SourceLine() );
-
- /*! \brief Throws a Exception with the specified message and location.
- * \param shouldFail if \c true then the exception is thrown. Otherwise
- * nothing happen.
- * \param message Message explaining the assertion failiure.
- * \param sourceLine Location of the assertion.
- */
- static void CPPUNIT_API failIf( bool shouldFail,
- const Message &message,
- const SourceLine &sourceLine = SourceLine() );
-
- /*! \brief Throws a Exception with the specified message and location.
- * \deprecated Use failIf( bool, Message, SourceLine ) instead.
- * \param shouldFail if \c true then the exception is thrown. Otherwise
- * nothing happen.
- * \param message Message explaining the assertion failiure.
- * \param sourceLine Location of the assertion.
- */
- static void CPPUNIT_API failIf( bool shouldFail,
- std::string message,
- const SourceLine &sourceLine = SourceLine() );
-
- /*! \brief Returns a expected value string for a message.
- * Typically used to create 'not equal' message, or to check that a message
- * contains the expected content when writing unit tests for your custom
- * assertions.
- *
- * \param expectedValue String that represents the expected value.
- * \return \a expectedValue prefixed with "Expected: ".
- * \see makeActual().
- */
- static std::string CPPUNIT_API makeExpected( const std::string &expectedValue );
-
- /*! \brief Returns an actual value string for a message.
- * Typically used to create 'not equal' message, or to check that a message
- * contains the expected content when writing unit tests for your custom
- * assertions.
- *
- * \param actualValue String that represents the actual value.
- * \return \a actualValue prefixed with "Actual : ".
- * \see makeExpected().
- */
- static std::string CPPUNIT_API makeActual( const std::string &actualValue );
-
- static Message CPPUNIT_API makeNotEqualMessage( const std::string &expectedValue,
- const std::string &actualValue,
- const AdditionalMessage &additionalMessage = AdditionalMessage(),
- const std::string &shortDescription = "equality assertion failed");
-
- /*! \brief Throws an Exception with the specified message and location.
- * \param expected Text describing the expected value.
- * \param actual Text describing the actual value.
- * \param sourceLine Location of the assertion.
- * \param additionalMessage Additional message. Usually used to report
- * what are the differences between the expected and actual value.
- * \param shortDescription Short description for the failure message.
- */
- static void CPPUNIT_API failNotEqual( std::string expected,
- std::string actual,
- const SourceLine &sourceLine,
- const AdditionalMessage &additionalMessage = AdditionalMessage(),
- std::string shortDescription = "equality assertion failed" );
-
- /*! \brief Throws an Exception with the specified message and location.
- * \param shouldFail if \c true then the exception is thrown. Otherwise
- * nothing happen.
- * \param expected Text describing the expected value.
- * \param actual Text describing the actual value.
- * \param sourceLine Location of the assertion.
- * \param additionalMessage Additional message. Usually used to report
- * where the "difference" is located.
- * \param shortDescription Short description for the failure message.
- */
- static void CPPUNIT_API failNotEqualIf( bool shouldFail,
- std::string expected,
- std::string actual,
- const SourceLine &sourceLine,
- const AdditionalMessage &additionalMessage = AdditionalMessage(),
- std::string shortDescription = "equality assertion failed" );
-
-};
-
-
-CPPUNIT_NS_END
-
-
-#endif // CPPUNIT_ASSERTER_H
diff --git a/3rdParty/CppUnit/cppunit/BriefTestProgressListener.h b/3rdParty/CppUnit/cppunit/BriefTestProgressListener.h
deleted file mode 100644
index 137ca44..0000000
--- a/3rdParty/CppUnit/cppunit/BriefTestProgressListener.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef CPPUNIT_BRIEFTESTPROGRESSLISTENER_H
-#define CPPUNIT_BRIEFTESTPROGRESSLISTENER_H
-
-#include <cppunit/TestListener.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief TestListener that prints the name of each test before running it.
- * \ingroup TrackingTestExecution
- */
-class CPPUNIT_API BriefTestProgressListener : public TestListener
-{
-public:
- /*! Constructs a BriefTestProgressListener object.
- */
- BriefTestProgressListener();
-
- /// Destructor.
- virtual ~BriefTestProgressListener();
-
- void startTest( Test *test );
-
- void addFailure( const TestFailure &failure );
-
- void endTest( Test *test );
-
-private:
- /// Prevents the use of the copy constructor.
- BriefTestProgressListener( const BriefTestProgressListener &copy );
-
- /// Prevents the use of the copy operator.
- void operator =( const BriefTestProgressListener &copy );
-
-private:
- bool m_lastTestFailed;
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_BRIEFTESTPROGRESSLISTENER_H
diff --git a/3rdParty/CppUnit/cppunit/Exception.h b/3rdParty/CppUnit/cppunit/Exception.h
deleted file mode 100644
index bf5fcac..0000000
--- a/3rdParty/CppUnit/cppunit/Exception.h
+++ /dev/null
@@ -1,90 +0,0 @@
-#ifndef CPPUNIT_EXCEPTION_H
-#define CPPUNIT_EXCEPTION_H
-
-#include <cppunit/Portability.h>
-#include <cppunit/Message.h>
-#include <cppunit/SourceLine.h>
-#include <exception>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief Exceptions thrown by failed assertions.
- * \ingroup BrowsingCollectedTestResult
- *
- * Exception is an exception that serves
- * descriptive strings through its what() method
- */
-class CPPUNIT_API Exception : public std::exception
-{
-public:
- /*! \brief Constructs the exception with the specified message and source location.
- * \param message Message associated to the exception.
- * \param sourceLine Source location related to the exception.
- */
- Exception( const Message &message = Message(),
- const SourceLine &sourceLine = SourceLine() );
-
-#ifdef CPPUNIT_ENABLE_SOURCELINE_DEPRECATED
- /*!
- * \deprecated Use other constructor instead.
- */
- Exception( std::string message,
- long lineNumber,
- std::string fileName );
-#endif
-
- /*! \brief Constructs a copy of an exception.
- * \param other Exception to copy.
- */
- Exception( const Exception &other );
-
- /// Destructs the exception
- virtual ~Exception() throw();
-
- /// Performs an assignment
- Exception &operator =( const Exception &other );
-
- /// Returns descriptive message
- const char *what() const throw();
-
- /// Location where the error occured
- SourceLine sourceLine() const;
-
- /// Message related to the exception.
- Message message() const;
-
- /// Set the message.
- void setMessage( const Message &message );
-
-#ifdef CPPUNIT_ENABLE_SOURCELINE_DEPRECATED
- /// The line on which the error occurred
- long lineNumber() const;
-
- /// The file in which the error occurred
- std::string fileName() const;
-
- static const std::string UNKNOWNFILENAME;
- static const long UNKNOWNLINENUMBER;
-#endif
-
- /// Clones the exception.
- virtual Exception *clone() const;
-
-protected:
- // VC++ does not recognize call to parent class when prefixed
- // with a namespace. This is a workaround.
- typedef std::exception SuperClass;
-
- Message m_message;
- SourceLine m_sourceLine;
- std::string m_whatMessage;
-};
-
-
-CPPUNIT_NS_END
-
-
-#endif // CPPUNIT_EXCEPTION_H
-
diff --git a/3rdParty/CppUnit/cppunit/Message.h b/3rdParty/CppUnit/cppunit/Message.h
deleted file mode 100644
index 1ae51cc..0000000
--- a/3rdParty/CppUnit/cppunit/Message.h
+++ /dev/null
@@ -1,156 +0,0 @@
-#ifndef CPPUNIT_MESSAGE_H
-#define CPPUNIT_MESSAGE_H
-
-#include <cppunit/Portability.h>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251 ) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-#include <cppunit/portability/CppUnitDeque.h>
-#include <string>
-
-
-CPPUNIT_NS_BEGIN
-
-
-#if CPPUNIT_NEED_DLL_DECL
-// template class CPPUNIT_API std::deque<std::string>;
-#endif
-
-/*! \brief Message associated to an Exception.
- * \ingroup CreatingNewAssertions
- * A message is composed of two items:
- * - a short description (~20/30 characters)
- * - a list of detail strings
- *
- * The short description is used to indicate how the detail strings should be
- * interpreted. It usually indicates the failure types, such as
- * "assertion failed", "forced failure", "unexpected exception caught",
- * "equality assertion failed"... It should not contains new line character (\n).
- *
- * Detail strings are used to provide more information about the failure. It
- * can contains the asserted expression, the expected and actual values in an
- * equality assertion, some addional messages... Detail strings can contains
- * new line characters (\n).
- */
-class CPPUNIT_API Message
-{
-public:
- Message();
-
- // Ensure thread-safe copy by detaching the string.
- Message( const Message &other );
-
- explicit Message( const std::string &shortDescription );
-
- Message( const std::string &shortDescription,
- const std::string &detail1 );
-
- Message( const std::string &shortDescription,
- const std::string &detail1,
- const std::string &detail2 );
-
- Message( const std::string &shortDescription,
- const std::string &detail1,
- const std::string &detail2,
- const std::string &detail3 );
-
- Message &operator =( const Message &other );
-
- /*! \brief Returns the short description.
- * \return Short description.
- */
- const std::string &shortDescription() const;
-
- /*! \brief Returns the number of detail string.
- * \return Number of detail string.
- */
- int detailCount() const;
-
- /*! \brief Returns the detail at the specified index.
- * \param index Zero based index of the detail string to return.
- * \returns Detail string at the specified index.
- * \exception std::invalid_argument if \a index < 0 or index >= detailCount().
- */
- std::string detailAt( int index ) const;
-
- /*! \brief Returns a string that represents a list of the detail strings.
- *
- * Example:
- * \code
- * Message message( "not equal", "Expected: 3", "Actual: 7" );
- * std::string details = message.details();
- * // details contains:
- * // "- Expected: 3\n- Actual: 7\n" \endcode
- *
- * \return A string that is a concatenation of all the detail strings. Each detail
- * string is prefixed with '- ' and suffixed with '\n' before being
- * concatenated to the other.
- */
- std::string details() const;
-
- /*! \brief Removes all detail strings.
- */
- void clearDetails();
-
- /*! \brief Adds a single detail string.
- * \param detail Detail string to add.
- */
- void addDetail( const std::string &detail );
-
- /*! \brief Adds two detail strings.
- * \param detail1 Detail string to add.
- * \param detail2 Detail string to add.
- */
- void addDetail( const std::string &detail1,
- const std::string &detail2 );
-
- /*! \brief Adds three detail strings.
- * \param detail1 Detail string to add.
- * \param detail2 Detail string to add.
- * \param detail3 Detail string to add.
- */
- void addDetail( const std::string &detail1,
- const std::string &detail2,
- const std::string &detail3 );
-
- /*! \brief Adds the detail strings of the specified message.
- * \param message All the detail strings of this message are added to this one.
- */
- void addDetail( const Message &message );
-
- /*! \brief Sets the short description.
- * \param shortDescription New short description.
- */
- void setShortDescription( const std::string &shortDescription );
-
- /*! \brief Tests if a message is identical to another one.
- * \param other Message this message is compared to.
- * \return \c true if the two message are identical, \c false otherwise.
- */
- bool operator ==( const Message &other ) const;
-
- /*! \brief Tests if a message is different from another one.
- * \param other Message this message is compared to.
- * \return \c true if the two message are not identical, \c false otherwise.
- */
- bool operator !=( const Message &other ) const;
-
-private:
- std::string m_shortDescription;
-
- typedef CppUnitDeque<std::string> Details;
- Details m_details;
-};
-
-
-CPPUNIT_NS_END
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( pop )
-#endif
-
-
-#endif // CPPUNIT_MESSAGE_H
diff --git a/3rdParty/CppUnit/cppunit/Outputter.h b/3rdParty/CppUnit/cppunit/Outputter.h
deleted file mode 100644
index f31d681..0000000
--- a/3rdParty/CppUnit/cppunit/Outputter.h
+++ /dev/null
@@ -1,26 +0,0 @@
-#ifndef CPPUNIT_OUTPUTTER_H
-#define CPPUNIT_OUTPUTTER_H
-
-#include <cppunit/Portability.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief Abstract outputter to print test result summary.
- * \ingroup WritingTestResult
- */
-class CPPUNIT_API Outputter
-{
-public:
- /// Destructor.
- virtual ~Outputter() {}
-
- virtual void write() =0;
-};
-
-
-CPPUNIT_NS_END
-
-
-#endif // CPPUNIT_OUTPUTTER_H
diff --git a/3rdParty/CppUnit/cppunit/Portability.h b/3rdParty/CppUnit/cppunit/Portability.h
deleted file mode 100644
index ddf0316..0000000
--- a/3rdParty/CppUnit/cppunit/Portability.h
+++ /dev/null
@@ -1,177 +0,0 @@
-#ifndef CPPUNIT_PORTABILITY_H
-#define CPPUNIT_PORTABILITY_H
-
-#if defined(_WIN32) && !defined(WIN32)
-# define WIN32 1
-#endif
-
-/* include platform specific config */
-#if defined(__BORLANDC__)
-# include <cppunit/config/config-bcb5.h>
-#elif defined (_MSC_VER)
-# if _MSC_VER == 1200 && defined(_WIN32_WCE) //evc4
-# include <cppunit/config/config-evc4.h>
-# else
-# include <cppunit/config/config-msvc6.h>
-# endif
-#else
-# include <cppunit/config-auto.h>
-#endif
-
-// Version number of package
-#ifndef CPPUNIT_VERSION
-#define CPPUNIT_VERSION "1.12.0"
-#endif
-
-#include <cppunit/config/CppUnitApi.h> // define CPPUNIT_API & CPPUNIT_NEED_DLL_DECL
-#include <cppunit/config/SelectDllLoader.h>
-
-
-/* Options that the library user may switch on or off.
- * If the user has not done so, we chose default values.
- */
-
-
-/* Define to 1 if you wish to have the old-style macros
- assert(), assertEqual(), assertDoublesEqual(), and assertLongsEqual() */
-#if !defined(CPPUNIT_ENABLE_NAKED_ASSERT)
-# define CPPUNIT_ENABLE_NAKED_ASSERT 0
-#endif
-
-/* Define to 1 if you wish to have the old-style CU_TEST family
- of macros. */
-#if !defined(CPPUNIT_ENABLE_CU_TEST_MACROS)
-# define CPPUNIT_ENABLE_CU_TEST_MACROS 0
-#endif
-
-/* Define to 1 if the preprocessor expands (#foo) to "foo" (quotes incl.)
- I don't think there is any C preprocess that does NOT support this! */
-#if !defined(CPPUNIT_HAVE_CPP_SOURCE_ANNOTATION)
-# define CPPUNIT_HAVE_CPP_SOURCE_ANNOTATION 1
-#endif
-
-/* Assumes that STL and CppUnit are in global space if the compiler does not
- support namespace. */
-#if !defined(CPPUNIT_HAVE_NAMESPACES)
-# if !defined(CPPUNIT_NO_NAMESPACE)
-# define CPPUNIT_NO_NAMESPACE 1
-# endif // !defined(CPPUNIT_NO_NAMESPACE)
-# if !defined(CPPUNIT_NO_STD_NAMESPACE)
-# define CPPUNIT_NO_STD_NAMESPACE 1
-# endif // !defined(CPPUNIT_NO_STD_NAMESPACE)
-#endif // !defined(CPPUNIT_HAVE_NAMESPACES)
-
-/* Define CPPUNIT_STD_NEED_ALLOCATOR to 1 if you need to specify
- * the allocator you used when instantiating STL container. Typically
- * used for compilers that do not support template default parameter.
- * CPPUNIT_STD_ALLOCATOR will be used as the allocator. Default is
- * std::allocator. On some compilers, you may need to change this to
- * std::allocator<T>.
- */
-#if CPPUNIT_STD_NEED_ALLOCATOR
-# if !defined(CPPUNIT_STD_ALLOCATOR)
-# define CPPUNIT_STD_ALLOCATOR std::allocator
-# endif // !defined(CPPUNIT_STD_ALLOCATOR)
-#endif // defined(CPPUNIT_STD_NEED_ALLOCATOR)
-
-
-// Compiler error location format for CompilerOutputter
-// If not define, assumes that it's gcc
-// See class CompilerOutputter for format.
-#if !defined(CPPUNIT_COMPILER_LOCATION_FORMAT)
-#if defined(__GNUC__) && ( defined(__APPLE_CPP__) || defined(__APPLE_CC__) )
-// gcc/Xcode integration on Mac OS X
-# define CPPUNIT_COMPILER_LOCATION_FORMAT "%p:%l: "
-#else
-# define CPPUNIT_COMPILER_LOCATION_FORMAT "%f:%l:"
-#endif
-#endif
-
-// If CPPUNIT_HAVE_CPP_CAST is defined, then c++ style cast will be used,
-// otherwise, C style cast are used.
-#if defined( CPPUNIT_HAVE_CPP_CAST )
-# define CPPUNIT_CONST_CAST( TargetType, pointer ) \
- const_cast<TargetType>( pointer )
-
-# define CPPUNIT_STATIC_CAST( TargetType, pointer ) \
- static_cast<TargetType>( pointer )
-#else // defined( CPPUNIT_HAVE_CPP_CAST )
-# define CPPUNIT_CONST_CAST( TargetType, pointer ) \
- ((TargetType)( pointer ))
-# define CPPUNIT_STATIC_CAST( TargetType, pointer ) \
- ((TargetType)( pointer ))
-#endif // defined( CPPUNIT_HAVE_CPP_CAST )
-
-// If CPPUNIT_NO_STD_NAMESPACE is defined then STL are in the global space.
-// => Define macro 'std' to nothing
-#if defined(CPPUNIT_NO_STD_NAMESPACE)
-# undef std
-# define std
-#endif // defined(CPPUNIT_NO_STD_NAMESPACE)
-
-// If CPPUNIT_NO_NAMESPACE is defined, then put CppUnit classes in the
-// global namespace: the compiler does not support namespace.
-#if defined(CPPUNIT_NO_NAMESPACE)
-# define CPPUNIT_NS_BEGIN
-# define CPPUNIT_NS_END
-# define CPPUNIT_NS
-#else // defined(CPPUNIT_NO_NAMESPACE)
-# define CPPUNIT_NS_BEGIN namespace CppUnit {
-# define CPPUNIT_NS_END }
-# define CPPUNIT_NS CppUnit
-#endif // defined(CPPUNIT_NO_NAMESPACE)
-
-/*! Stringize a symbol.
- *
- * Use this macro to convert a preprocessor symbol to a string.
- *
- * Example of usage:
- * \code
- * #define CPPUNIT_PLUGIN_EXPORTED_NAME cppunitTestPlugIn
- * const char *name = CPPUNIT_STRINGIZE( CPPUNIT_PLUGIN_EXPORTED_NAME );
- * \endcode
- */
-#define CPPUNIT_STRINGIZE( symbol ) _CPPUNIT_DO_STRINGIZE( symbol )
-
-/// \internal
-#define _CPPUNIT_DO_STRINGIZE( symbol ) #symbol
-
-/*! Joins to symbol after expanding them into string.
- *
- * Use this macro to join two symbols. Example of usage:
- *
- * \code
- * #define MAKE_UNIQUE_NAME(prefix) CPPUNIT_JOIN( prefix, __LINE__ )
- * \endcode
- *
- * The macro defined in the example concatenate a given prefix with the line number
- * to obtain a 'unique' identifier.
- *
- * \internal From boost documentation:
- * The following piece of macro magic joins the two
- * arguments together, even when one of the arguments is
- * itself a macro (see 16.3.1 in C++ standard). The key
- * is that macro expansion of macro arguments does not
- * occur in CPPUNIT_JOIN2 but does in CPPUNIT_JOIN.
- */
-#define CPPUNIT_JOIN( symbol1, symbol2 ) _CPPUNIT_DO_JOIN( symbol1, symbol2 )
-
-/// \internal
-#define _CPPUNIT_DO_JOIN( symbol1, symbol2 ) _CPPUNIT_DO_JOIN2( symbol1, symbol2 )
-
-/// \internal
-#define _CPPUNIT_DO_JOIN2( symbol1, symbol2 ) symbol1##symbol2
-
-/*! Adds the line number to the specified string to create a unique identifier.
- * \param prefix Prefix added to the line number to create a unique identifier.
- * \see CPPUNIT_TEST_SUITE_REGISTRATION for an example of usage.
- */
-#define CPPUNIT_MAKE_UNIQUE_NAME( prefix ) CPPUNIT_JOIN( prefix, __LINE__ )
-
-/*! Defines wrap colunm for %CppUnit. Used by CompilerOuputter.
- */
-#if !defined(CPPUNIT_WRAP_COLUMN)
-# define CPPUNIT_WRAP_COLUMN 79
-#endif
-
-#endif // CPPUNIT_PORTABILITY_H
diff --git a/3rdParty/CppUnit/cppunit/Protector.h b/3rdParty/CppUnit/cppunit/Protector.h
deleted file mode 100644
index d14e75f..0000000
--- a/3rdParty/CppUnit/cppunit/Protector.h
+++ /dev/null
@@ -1,94 +0,0 @@
-#ifndef CPPUNIT_PROTECTOR_H
-#define CPPUNIT_PROTECTOR_H
-
-#include <cppunit/SourceLine.h>
-
-CPPUNIT_NS_BEGIN
-
-class Exception;
-class Message;
-class ProtectorContext;
-class TestResult;
-
-
-class CPPUNIT_API Functor
-{
-public:
- virtual ~Functor();
-
- virtual bool operator()() const =0;
-};
-
-
-/*! \brief Protects one or more test case run.
- *
- * Protector are used to globably 'decorate' a test case. The most common
- * usage of Protector is to catch exception that do not subclass std::exception,
- * such as MFC CException class or Rogue Wave RWXMsg class, and capture the
- * message associated to the exception. In fact, CppUnit capture message from
- * Exception and std::exception using a Protector.
- *
- * Protector are chained. When you add a Protector using
- * TestResult::pushProtector(), your protector is in fact passed as a Functor
- * to the first protector of the chain.
- *
- * TestCase protects call to setUp(), runTest() and tearDown() by calling
- * TestResult::protect().
- *
- * Because the protector chain is handled by TestResult, a protector can be
- * active for a single test, or a complete test run.
- *
- * Here are some possible usages:
- * - run all test case in a separate thread and assumes the test failed if it
- * did not finish in a given time (infinite loop work around)
- * - performance tracing : time only the runTest() time.
- * \sa TestResult, TestCase, TestListener.
- */
-class CPPUNIT_API Protector
-{
-public:
- virtual ~Protector();
-
- virtual bool protect( const Functor &functor,
- const ProtectorContext &context ) =0;
-
-protected:
- void reportError( const ProtectorContext &context,
- const Exception &error ) const;
-
- void reportError( const ProtectorContext &context,
- const Message &message,
- const SourceLine &sourceLine = SourceLine() ) const;
-
- void reportFailure( const ProtectorContext &context,
- const Exception &failure ) const;
-
- Message actualMessage( const Message &message,
- const ProtectorContext &context ) const;
-};
-
-
-/*! \brief Scoped protector push to TestResult.
- *
- * Adds the specified Protector to the specified TestResult for the object
- * life-time.
- */
-class CPPUNIT_API ProtectorGuard
-{
-public:
- /// Pushes the specified protector.
- ProtectorGuard( TestResult *result,
- Protector *protector );
-
- /// Pops the protector.
- ~ProtectorGuard();
-
-private:
- TestResult *m_result;
-};
-
-CPPUNIT_NS_END
-
-
-#endif // CPPUNIT_PROTECTOR_H
-
diff --git a/3rdParty/CppUnit/cppunit/SourceLine.h b/3rdParty/CppUnit/cppunit/SourceLine.h
deleted file mode 100644
index f7a85df..0000000
--- a/3rdParty/CppUnit/cppunit/SourceLine.h
+++ /dev/null
@@ -1,63 +0,0 @@
-#ifndef CPPUNIT_SOURCELINE_H
-#define CPPUNIT_SOURCELINE_H
-
-#include <cppunit/Portability.h>
-#include <string>
-
-/*! \brief Constructs a SourceLine object initialized with the location where the macro is expanded.
- * \ingroup CreatingNewAssertions
- * \relates CppUnit::SourceLine
- * Used to write your own assertion macros.
- * \see Asserter for example of usage.
- */
-#define CPPUNIT_SOURCELINE() CPPUNIT_NS::SourceLine( __FILE__, __LINE__ )
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief Represents a source line location.
- * \ingroup CreatingNewAssertions
- * \ingroup BrowsingCollectedTestResult
- *
- * Used to capture the failure location in assertion.
- *
- * Use the CPPUNIT_SOURCELINE() macro to construct that object. Typically used when
- * writing an assertion macro in association with Asserter.
- *
- * \see Asserter.
- */
-class CPPUNIT_API SourceLine
-{
-public:
- SourceLine();
-
- // Ensure thread-safe copy by detaching the string buffer.
- SourceLine( const SourceLine &other );
-
- SourceLine( const std::string &fileName,
- int lineNumber );
-
- SourceLine &operator =( const SourceLine &other );
-
- /// Destructor.
- virtual ~SourceLine();
-
- bool isValid() const;
-
- int lineNumber() const;
-
- std::string fileName() const;
-
- bool operator ==( const SourceLine &other ) const;
- bool operator !=( const SourceLine &other ) const;
-
-private:
- std::string m_fileName;
- int m_lineNumber;
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_SOURCELINE_H
diff --git a/3rdParty/CppUnit/cppunit/SynchronizedObject.h b/3rdParty/CppUnit/cppunit/SynchronizedObject.h
deleted file mode 100644
index 0f7d094..0000000
--- a/3rdParty/CppUnit/cppunit/SynchronizedObject.h
+++ /dev/null
@@ -1,80 +0,0 @@
-#ifndef CPPUNIT_SYNCHRONIZEDOBJECT_H
-#define CPPUNIT_SYNCHRONIZEDOBJECT_H
-
-#include <cppunit/Portability.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief Base class for synchronized object.
- *
- * Synchronized object are object which members are used concurrently by mutiple
- * threads.
- *
- * This class define the class SynchronizationObject which must be subclassed
- * to implement an actual lock.
- *
- * Each instance of this class holds a pointer on a lock object.
- *
- * See src/msvc6/MfcSynchronizedObject.h for an example.
- */
-class CPPUNIT_API SynchronizedObject
-{
-public:
- /*! \brief Abstract synchronization object (mutex)
- */
- class SynchronizationObject
- {
- public:
- SynchronizationObject() {}
- virtual ~SynchronizationObject() {}
-
- virtual void lock() {}
- virtual void unlock() {}
- };
-
- /*! Constructs a SynchronizedObject object.
- */
- SynchronizedObject( SynchronizationObject *syncObject =0 );
-
- /// Destructor.
- virtual ~SynchronizedObject();
-
-protected:
- /*! \brief Locks a synchronization object in the current scope.
- */
- class ExclusiveZone
- {
- SynchronizationObject *m_syncObject;
-
- public:
- ExclusiveZone( SynchronizationObject *syncObject )
- : m_syncObject( syncObject )
- {
- m_syncObject->lock();
- }
-
- ~ExclusiveZone()
- {
- m_syncObject->unlock ();
- }
- };
-
- virtual void setSynchronizationObject( SynchronizationObject *syncObject );
-
-protected:
- SynchronizationObject *m_syncObject;
-
-private:
- /// Prevents the use of the copy constructor.
- SynchronizedObject( const SynchronizedObject &copy );
-
- /// Prevents the use of the copy operator.
- void operator =( const SynchronizedObject &copy );
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_SYNCHRONIZEDOBJECT_H
diff --git a/3rdParty/CppUnit/cppunit/Test.h b/3rdParty/CppUnit/cppunit/Test.h
deleted file mode 100644
index a56be0f..0000000
--- a/3rdParty/CppUnit/cppunit/Test.h
+++ /dev/null
@@ -1,117 +0,0 @@
-#ifndef CPPUNIT_TEST_H
-#define CPPUNIT_TEST_H
-
-#include <cppunit/Portability.h>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-
-class TestResult;
-class TestPath;
-
-/*! \brief Base class for all test objects.
- * \ingroup BrowsingCollectedTestResult
- *
- * All test objects should be a subclass of Test. Some test objects,
- * TestCase for example, represent one individual test. Other test
- * objects, such as TestSuite, are comprised of several tests.
- *
- * When a Test is run, the result is collected by a TestResult object.
- *
- * \see TestCase
- * \see TestSuite
- */
-class CPPUNIT_API Test
-{
-public:
- virtual ~Test() {};
-
- /*! \brief Run the test, collecting results.
- */
- virtual void run( TestResult *result ) =0;
-
- /*! \brief Return the number of test cases invoked by run().
- *
- * The base unit of testing is the class TestCase. This
- * method returns the number of TestCase objects invoked by
- * the run() method.
- */
- virtual int countTestCases () const =0;
-
- /*! \brief Returns the number of direct child of the test.
- */
- virtual int getChildTestCount() const =0;
-
- /*! \brief Returns the child test of the specified index.
- *
- * This method test if the index is valid, then call doGetChildTestAt() if
- * the index is valid. Otherwise std::out_of_range exception is thrown.
- *
- * You should override doGetChildTestAt() method.
- *
- * \param index Zero based index of the child test to return.
- * \return Pointer on the test. Never \c NULL.
- * \exception std::out_of_range is \a index is < 0 or >= getChildTestCount().
- */
- virtual Test *getChildTestAt( int index ) const;
-
- /*! \brief Returns the test name.
- *
- * Each test has a name. This name may be used to find the
- * test in a suite or registry of tests.
- */
- virtual std::string getName () const =0;
-
- /*! \brief Finds the test with the specified name and its parents test.
- * \param testName Name of the test to find.
- * \param testPath If the test is found, then all the tests traversed to access
- * \a test are added to \a testPath, including \c this and \a test.
- * \return \c true if a test with the specified name is found, \c false otherwise.
- */
- virtual bool findTestPath( const std::string &testName,
- TestPath &testPath ) const;
-
- /*! \brief Finds the specified test and its parents test.
- * \param test Test to find.
- * \param testPath If the test is found, then all the tests traversed to access
- * \a test are added to \a testPath, including \c this and \a test.
- * \return \c true if the specified test is found, \c false otherwise.
- */
- virtual bool findTestPath( const Test *test,
- TestPath &testPath ) const;
-
- /*! \brief Finds the test with the specified name in the hierarchy.
- * \param testName Name of the test to find.
- * \return Pointer on the first test found that is named \a testName. Never \c NULL.
- * \exception std::invalid_argument if no test named \a testName is found.
- */
- virtual Test *findTest( const std::string &testName ) const;
-
- /*! \brief Resolved the specified test path with this test acting as 'root'.
- * \param testPath Test path string to resolve.
- * \return Resolved TestPath.
- * \exception std::invalid_argument if \a testPath could not be resolved.
- * \see TestPath.
- */
- virtual TestPath resolveTestPath( const std::string &testPath ) const;
-
-protected:
- /*! Throws an exception if the specified index is invalid.
- * \param index Zero base index of a child test.
- * \exception std::out_of_range is \a index is < 0 or >= getChildTestCount().
- */
- virtual void checkIsValidIndex( int index ) const;
-
- /*! \brief Returns the child test of the specified valid index.
- * \param index Zero based valid index of the child test to return.
- * \return Pointer on the test. Never \c NULL.
- */
- virtual Test *doGetChildTestAt( int index ) const =0;
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TEST_H
-
diff --git a/3rdParty/CppUnit/cppunit/TestAssert.h b/3rdParty/CppUnit/cppunit/TestAssert.h
deleted file mode 100644
index f74797b..0000000
--- a/3rdParty/CppUnit/cppunit/TestAssert.h
+++ /dev/null
@@ -1,428 +0,0 @@
-#ifndef CPPUNIT_TESTASSERT_H
-#define CPPUNIT_TESTASSERT_H
-
-#include <cppunit/Portability.h>
-#include <cppunit/Exception.h>
-#include <cppunit/Asserter.h>
-#include <cppunit/portability/Stream.h>
-#include <stdio.h>
-#include <float.h> // For struct assertion_traits<double>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief Traits used by CPPUNIT_ASSERT_EQUAL().
- *
- * Here is an example of specialising these traits:
- *
- * \code
- * template<>
- * struct assertion_traits<std::string> // specialization for the std::string type
- * {
- * static bool equal( const std::string& x, const std::string& y )
- * {
- * return x == y;
- * }
- *
- * static std::string toString( const std::string& x )
- * {
- * std::string text = '"' + x + '"'; // adds quote around the string to see whitespace
- * OStringStream ost;
- * ost << text;
- * return ost.str();
- * }
- * };
- * \endcode
- */
-template <class T>
-struct assertion_traits
-{
- static bool equal( const T& x, const T& y )
- {
- return x == y;
- }
-
- static std::string toString( const T& x )
- {
- OStringStream ost;
- ost << x;
- return ost.str();
- }
-};
-
-
-/*! \brief Traits used by CPPUNIT_ASSERT_DOUBLES_EQUAL().
- *
- * This specialisation from @c struct @c assertion_traits<> ensures that
- * doubles are converted in full, instead of being rounded to the default
- * 6 digits of precision. Use the system defined ISO C99 macro DBL_DIG
- * within float.h is available to define the maximum precision, otherwise
- * use the hard-coded maximum precision of 15.
- */
-template <>
-struct assertion_traits<double>
-{
- static bool equal( double x, double y )
- {
- return x == y;
- }
-
- static std::string toString( double x )
- {
-#ifdef DBL_DIG
- const int precision = DBL_DIG;
-#else
- const int precision = 15;
-#endif // #ifdef DBL_DIG
- char buffer[128];
-#ifdef __STDC_SECURE_LIB__ // Use secure version with visual studio 2005 to avoid warning.
- sprintf_s(buffer, sizeof(buffer), "%.*g", precision, x);
-#else
- sprintf(buffer, "%.*g", precision, x);
-#endif
- return buffer;
- }
-};
-
-
-/*! \brief (Implementation) Asserts that two objects of the same type are equals.
- * Use CPPUNIT_ASSERT_EQUAL instead of this function.
- * \sa assertion_traits, Asserter::failNotEqual().
- */
-template <class T>
-void assertEquals( const T& expected,
- const T& actual,
- SourceLine sourceLine,
- const std::string &message )
-{
- if ( !assertion_traits<T>::equal(expected,actual) ) // lazy toString conversion...
- {
- Asserter::failNotEqual( assertion_traits<T>::toString(expected),
- assertion_traits<T>::toString(actual),
- sourceLine,
- message );
- }
-}
-
-
-/*! \brief (Implementation) Asserts that two double are equals given a tolerance.
- * Use CPPUNIT_ASSERT_DOUBLES_EQUAL instead of this function.
- * \sa Asserter::failNotEqual().
- * \sa CPPUNIT_ASSERT_DOUBLES_EQUAL for detailed semantic of the assertion.
- */
-void CPPUNIT_API assertDoubleEquals( double expected,
- double actual,
- double delta,
- SourceLine sourceLine,
- const std::string &message );
-
-
-/* A set of macros which allow us to get the line number
- * and file name at the point of an error.
- * Just goes to show that preprocessors do have some
- * redeeming qualities.
- */
-#if CPPUNIT_HAVE_CPP_SOURCE_ANNOTATION
-/** Assertions that a condition is \c true.
- * \ingroup Assertions
- */
-#define CPPUNIT_ASSERT(condition) \
- ( CPPUNIT_NS::Asserter::failIf( !(condition), \
- CPPUNIT_NS::Message( "assertion failed", \
- "Expression: " #condition), \
- CPPUNIT_SOURCELINE() ) )
-#else
-#define CPPUNIT_ASSERT(condition) \
- ( CPPUNIT_NS::Asserter::failIf( !(condition), \
- CPPUNIT_NS::Message( "assertion failed" ), \
- CPPUNIT_SOURCELINE() ) )
-#endif
-
-/** Assertion with a user specified message.
- * \ingroup Assertions
- * \param message Message reported in diagnostic if \a condition evaluates
- * to \c false.
- * \param condition If this condition evaluates to \c false then the
- * test failed.
- */
-#define CPPUNIT_ASSERT_MESSAGE(message,condition) \
- ( CPPUNIT_NS::Asserter::failIf( !(condition), \
- CPPUNIT_NS::Message( "assertion failed", \
- "Expression: " \
- #condition, \
- message ), \
- CPPUNIT_SOURCELINE() ) )
-
-/** Fails with the specified message.
- * \ingroup Assertions
- * \param message Message reported in diagnostic.
- */
-#define CPPUNIT_FAIL( message ) \
- ( CPPUNIT_NS::Asserter::fail( CPPUNIT_NS::Message( "forced failure", \
- message ), \
- CPPUNIT_SOURCELINE() ) )
-
-#ifdef CPPUNIT_ENABLE_SOURCELINE_DEPRECATED
-/// Generalized macro for primitive value comparisons
-#define CPPUNIT_ASSERT_EQUAL(expected,actual) \
- ( CPPUNIT_NS::assertEquals( (expected), \
- (actual), \
- __LINE__, __FILE__ ) )
-#else
-/** Asserts that two values are equals.
- * \ingroup Assertions
- *
- * Equality and string representation can be defined with
- * an appropriate CppUnit::assertion_traits class.
- *
- * A diagnostic is printed if actual and expected values disagree.
- *
- * Requirement for \a expected and \a actual parameters:
- * - They are exactly of the same type
- * - They are serializable into a std::strstream using operator <<.
- * - They can be compared using operator ==.
- *
- * The last two requirements (serialization and comparison) can be
- * removed by specializing the CppUnit::assertion_traits.
- */
-#define CPPUNIT_ASSERT_EQUAL(expected,actual) \
- ( CPPUNIT_NS::assertEquals( (expected), \
- (actual), \
- CPPUNIT_SOURCELINE(), \
- "" ) )
-
-/** Asserts that two values are equals, provides additional message on failure.
- * \ingroup Assertions
- *
- * Equality and string representation can be defined with
- * an appropriate assertion_traits class.
- *
- * A diagnostic is printed if actual and expected values disagree.
- * The message is printed in addition to the expected and actual value
- * to provide additional information.
- *
- * Requirement for \a expected and \a actual parameters:
- * - They are exactly of the same type
- * - They are serializable into a std::strstream using operator <<.
- * - They can be compared using operator ==.
- *
- * The last two requirements (serialization and comparison) can be
- * removed by specializing the CppUnit::assertion_traits.
- */
-#define CPPUNIT_ASSERT_EQUAL_MESSAGE(message,expected,actual) \
- ( CPPUNIT_NS::assertEquals( (expected), \
- (actual), \
- CPPUNIT_SOURCELINE(), \
- (message) ) )
-#endif
-
-/*! \brief Macro for primitive double value comparisons.
- * \ingroup Assertions
- *
- * The assertion pass if both expected and actual are finite and
- * \c fabs( \c expected - \c actual ) <= \c delta.
- * If either \c expected or actual are infinite (+/- inf), the
- * assertion pass if \c expected == \c actual.
- * If either \c expected or \c actual is a NaN (not a number), then
- * the assertion fails.
- */
-#define CPPUNIT_ASSERT_DOUBLES_EQUAL(expected,actual,delta) \
- ( CPPUNIT_NS::assertDoubleEquals( (expected), \
- (actual), \
- (delta), \
- CPPUNIT_SOURCELINE(), \
- "" ) )
-
-
-/*! \brief Macro for primitive double value comparisons, setting a
- * user-supplied message in case of failure.
- * \ingroup Assertions
- * \sa CPPUNIT_ASSERT_DOUBLES_EQUAL for detailed semantic of the assertion.
- */
-#define CPPUNIT_ASSERT_DOUBLES_EQUAL_MESSAGE(message,expected,actual,delta) \
- ( CPPUNIT_NS::assertDoubleEquals( (expected), \
- (actual), \
- (delta), \
- CPPUNIT_SOURCELINE(), \
- (message) ) )
-
-
-/** Asserts that the given expression throws an exception of the specified type.
- * \ingroup Assertions
- * Example of usage:
- * \code
- * std::vector<int> v;
- * CPPUNIT_ASSERT_THROW( v.at( 50 ), std::out_of_range );
- * \endcode
- */
-# define CPPUNIT_ASSERT_THROW( expression, ExceptionType ) \
- CPPUNIT_ASSERT_THROW_MESSAGE( CPPUNIT_NS::AdditionalMessage(), \
- expression, \
- ExceptionType )
-
-
-// implementation detail
-#if CPPUNIT_USE_TYPEINFO_NAME
-#define CPPUNIT_EXTRACT_EXCEPTION_TYPE_( exception, no_rtti_message ) \
- CPPUNIT_NS::TypeInfoHelper::getClassName( typeid(exception) )
-#else
-#define CPPUNIT_EXTRACT_EXCEPTION_TYPE_( exception, no_rtti_message ) \
- std::string( no_rtti_message )
-#endif // CPPUNIT_USE_TYPEINFO_NAME
-
-// implementation detail
-#define CPPUNIT_GET_PARAMETER_STRING( parameter ) #parameter
-
-/** Asserts that the given expression throws an exception of the specified type,
- * setting a user supplied message in case of failure.
- * \ingroup Assertions
- * Example of usage:
- * \code
- * std::vector<int> v;
- * CPPUNIT_ASSERT_THROW_MESSAGE( "- std::vector<int> v;", v.at( 50 ), std::out_of_range );
- * \endcode
- */
-# define CPPUNIT_ASSERT_THROW_MESSAGE( message, expression, ExceptionType ) \
- do { \
- bool cpputCorrectExceptionThrown_ = false; \
- CPPUNIT_NS::Message cpputMsg_( "expected exception not thrown" ); \
- cpputMsg_.addDetail( message ); \
- cpputMsg_.addDetail( "Expected: " \
- CPPUNIT_GET_PARAMETER_STRING( ExceptionType ) ); \
- \
- try { \
- expression; \
- } catch ( const ExceptionType & ) { \
- cpputCorrectExceptionThrown_ = true; \
- } catch ( const std::exception &e) { \
- cpputMsg_.addDetail( "Actual : " + \
- CPPUNIT_EXTRACT_EXCEPTION_TYPE_( e, \
- "std::exception or derived") ); \
- cpputMsg_.addDetail( std::string("What() : ") + e.what() ); \
- } catch ( ... ) { \
- cpputMsg_.addDetail( "Actual : unknown."); \
- } \
- \
- if ( cpputCorrectExceptionThrown_ ) \
- break; \
- \
- CPPUNIT_NS::Asserter::fail( cpputMsg_, \
- CPPUNIT_SOURCELINE() ); \
- } while ( false )
-
-
-/** Asserts that the given expression does not throw any exceptions.
- * \ingroup Assertions
- * Example of usage:
- * \code
- * std::vector<int> v;
- * v.push_back( 10 );
- * CPPUNIT_ASSERT_NO_THROW( v.at( 0 ) );
- * \endcode
- */
-# define CPPUNIT_ASSERT_NO_THROW( expression ) \
- CPPUNIT_ASSERT_NO_THROW_MESSAGE( CPPUNIT_NS::AdditionalMessage(), \
- expression )
-
-
-/** Asserts that the given expression does not throw any exceptions,
- * setting a user supplied message in case of failure.
- * \ingroup Assertions
- * Example of usage:
- * \code
- * std::vector<int> v;
- * v.push_back( 10 );
- * CPPUNIT_ASSERT_NO_THROW( "std::vector<int> v;", v.at( 0 ) );
- * \endcode
- */
-# define CPPUNIT_ASSERT_NO_THROW_MESSAGE( message, expression ) \
- do { \
- CPPUNIT_NS::Message cpputMsg_( "unexpected exception caught" ); \
- cpputMsg_.addDetail( message ); \
- \
- try { \
- expression; \
- } catch ( const std::exception &e ) { \
- cpputMsg_.addDetail( "Caught: " + \
- CPPUNIT_EXTRACT_EXCEPTION_TYPE_( e, \
- "std::exception or derived" ) ); \
- cpputMsg_.addDetail( std::string("What(): ") + e.what() ); \
- CPPUNIT_NS::Asserter::fail( cpputMsg_, \
- CPPUNIT_SOURCELINE() ); \
- } catch ( ... ) { \
- cpputMsg_.addDetail( "Caught: unknown." ); \
- CPPUNIT_NS::Asserter::fail( cpputMsg_, \
- CPPUNIT_SOURCELINE() ); \
- } \
- } while ( false )
-
-
-/** Asserts that an assertion fail.
- * \ingroup Assertions
- * Use to test assertions.
- * Example of usage:
- * \code
- * CPPUNIT_ASSERT_ASSERTION_FAIL( CPPUNIT_ASSERT( 1 == 2 ) );
- * \endcode
- */
-# define CPPUNIT_ASSERT_ASSERTION_FAIL( assertion ) \
- CPPUNIT_ASSERT_THROW( assertion, CPPUNIT_NS::Exception )
-
-
-/** Asserts that an assertion fail, with a user-supplied message in
- * case of error.
- * \ingroup Assertions
- * Use to test assertions.
- * Example of usage:
- * \code
- * CPPUNIT_ASSERT_ASSERTION_FAIL_MESSAGE( "1 == 2", CPPUNIT_ASSERT( 1 == 2 ) );
- * \endcode
- */
-# define CPPUNIT_ASSERT_ASSERTION_FAIL_MESSAGE( message, assertion ) \
- CPPUNIT_ASSERT_THROW_MESSAGE( message, assertion, CPPUNIT_NS::Exception )
-
-
-/** Asserts that an assertion pass.
- * \ingroup Assertions
- * Use to test assertions.
- * Example of usage:
- * \code
- * CPPUNIT_ASSERT_ASSERTION_PASS( CPPUNIT_ASSERT( 1 == 1 ) );
- * \endcode
- */
-# define CPPUNIT_ASSERT_ASSERTION_PASS( assertion ) \
- CPPUNIT_ASSERT_NO_THROW( assertion )
-
-
-/** Asserts that an assertion pass, with a user-supplied message in
- * case of failure.
- * \ingroup Assertions
- * Use to test assertions.
- * Example of usage:
- * \code
- * CPPUNIT_ASSERT_ASSERTION_PASS_MESSAGE( "1 != 1", CPPUNIT_ASSERT( 1 == 1 ) );
- * \endcode
- */
-# define CPPUNIT_ASSERT_ASSERTION_PASS_MESSAGE( message, assertion ) \
- CPPUNIT_ASSERT_NO_THROW_MESSAGE( message, assertion )
-
-
-
-
-// Backwards compatibility
-
-#if CPPUNIT_ENABLE_NAKED_ASSERT
-
-#undef assert
-#define assert(c) CPPUNIT_ASSERT(c)
-#define assertEqual(e,a) CPPUNIT_ASSERT_EQUAL(e,a)
-#define assertDoublesEqual(e,a,d) CPPUNIT_ASSERT_DOUBLES_EQUAL(e,a,d)
-#define assertLongsEqual(e,a) CPPUNIT_ASSERT_EQUAL(e,a)
-
-#endif
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TESTASSERT_H
diff --git a/3rdParty/CppUnit/cppunit/TestCaller.h b/3rdParty/CppUnit/cppunit/TestCaller.h
deleted file mode 100644
index dc4d82e..0000000
--- a/3rdParty/CppUnit/cppunit/TestCaller.h
+++ /dev/null
@@ -1,204 +0,0 @@
-#ifndef CPPUNIT_TESTCALLER_H // -*- C++ -*-
-#define CPPUNIT_TESTCALLER_H
-
-#include <cppunit/Exception.h>
-#include <cppunit/TestCase.h>
-
-
-#if CPPUNIT_USE_TYPEINFO_NAME
-# include <cppunit/extensions/TypeInfoHelper.h>
-#endif
-
-
-CPPUNIT_NS_BEGIN
-
-#if 0
-/*! \brief Marker class indicating that no exception is expected by TestCaller.
- * This class is an implementation detail. You should never use this class directly.
- */
-class CPPUNIT_API NoExceptionExpected
-{
-private:
- //! Prevent class instantiation.
- NoExceptionExpected();
-};
-
-
-/*! \brief (Implementation) Traits used by TestCaller to expect an exception.
- *
- * This class is an implementation detail. You should never use this class directly.
- */
-template<class ExceptionType>
-struct ExpectedExceptionTraits
-{
- static void expectedException()
- {
-#if CPPUNIT_USE_TYPEINFO_NAME
- throw Exception( Message(
- "expected exception not thrown",
- "Expected exception type: " +
- TypeInfoHelper::getClassName( typeid( ExceptionType ) ) ) );
-#else
- throw Exception( "expected exception not thrown" );
-#endif
- }
-};
-
-
-/*! \brief (Implementation) Traits specialization used by TestCaller to
- * expect no exception.
- *
- * This class is an implementation detail. You should never use this class directly.
- */
-template<>
-struct ExpectedExceptionTraits<NoExceptionExpected>
-{
- static void expectedException()
- {
- }
-};
-
-
-#endif
-
-//*** FIXME: rework this when class Fixture is implemented. ***//
-
-
-/*! \brief Generate a test case from a fixture method.
- * \ingroup WritingTestFixture
- *
- * A test caller provides access to a test case method
- * on a test fixture class. Test callers are useful when
- * you want to run an individual test or add it to a
- * suite.
- * Test Callers invoke only one Test (i.e. test method) on one
- * Fixture of a TestFixture.
- *
- * Here is an example:
- * \code
- * class MathTest : public CppUnit::TestFixture {
- * ...
- * public:
- * void setUp();
- * void tearDown();
- *
- * void testAdd();
- * void testSubtract();
- * };
- *
- * CppUnit::Test *MathTest::suite() {
- * CppUnit::TestSuite *suite = new CppUnit::TestSuite;
- *
- * suite->addTest( new CppUnit::TestCaller<MathTest>( "testAdd", testAdd ) );
- * return suite;
- * }
- * \endcode
- *
- * You can use a TestCaller to bind any test method on a TestFixture
- * class, as long as it accepts void and returns void.
- *
- * \see TestCase
- */
-
-template <class Fixture>
-class TestCaller : public TestCase
-{
- typedef void (Fixture::*TestMethod)();
-
-public:
- /*!
- * Constructor for TestCaller. This constructor builds a new Fixture
- * instance owned by the TestCaller.
- * \param name name of this TestCaller
- * \param test the method this TestCaller calls in runTest()
- */
- TestCaller( std::string name, TestMethod test ) :
- TestCase( name ),
- m_ownFixture( true ),
- m_fixture( new Fixture() ),
- m_test( test )
- {
- }
-
- /*!
- * Constructor for TestCaller.
- * This constructor does not create a new Fixture instance but accepts
- * an existing one as parameter. The TestCaller will not own the
- * Fixture object.
- * \param name name of this TestCaller
- * \param test the method this TestCaller calls in runTest()
- * \param fixture the Fixture to invoke the test method on.
- */
- TestCaller(std::string name, TestMethod test, Fixture& fixture) :
- TestCase( name ),
- m_ownFixture( false ),
- m_fixture( &fixture ),
- m_test( test )
- {
- }
-
- /*!
- * Constructor for TestCaller.
- * This constructor does not create a new Fixture instance but accepts
- * an existing one as parameter. The TestCaller will own the
- * Fixture object and delete it in its destructor.
- * \param name name of this TestCaller
- * \param test the method this TestCaller calls in runTest()
- * \param fixture the Fixture to invoke the test method on.
- */
- TestCaller(std::string name, TestMethod test, Fixture* fixture) :
- TestCase( name ),
- m_ownFixture( true ),
- m_fixture( fixture ),
- m_test( test )
- {
- }
-
- ~TestCaller()
- {
- if (m_ownFixture)
- delete m_fixture;
- }
-
- void runTest()
- {
-// try {
- (m_fixture->*m_test)();
-// }
-// catch ( ExpectedException & ) {
-// return;
-// }
-
-// ExpectedExceptionTraits<ExpectedException>::expectedException();
- }
-
- void setUp()
- {
- m_fixture->setUp ();
- }
-
- void tearDown()
- {
- m_fixture->tearDown ();
- }
-
- std::string toString() const
- {
- return "TestCaller " + getName();
- }
-
-private:
- TestCaller( const TestCaller &other );
- TestCaller &operator =( const TestCaller &other );
-
-private:
- bool m_ownFixture;
- Fixture *m_fixture;
- TestMethod m_test;
-};
-
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TESTCALLER_H
diff --git a/3rdParty/CppUnit/cppunit/TestCase.h b/3rdParty/CppUnit/cppunit/TestCase.h
deleted file mode 100644
index d4b7a46..0000000
--- a/3rdParty/CppUnit/cppunit/TestCase.h
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifndef CPPUNIT_TESTCASE_H
-#define CPPUNIT_TESTCASE_H
-
-#include <cppunit/Portability.h>
-#include <cppunit/TestLeaf.h>
-#include <cppunit/TestAssert.h>
-#include <cppunit/TestFixture.h>
-#include <string>
-
-
-CPPUNIT_NS_BEGIN
-
-
-class TestResult;
-
-
-/*! \brief A single test object.
- *
- * This class is used to implement a simple test case: define a subclass
- * that overrides the runTest method.
- *
- * You don't usually need to use that class, but TestFixture and TestCaller instead.
- *
- * You are expected to subclass TestCase is you need to write a class similiar
- * to TestCaller.
- */
-class CPPUNIT_API TestCase : public TestLeaf,
- public TestFixture
-{
-public:
-
- TestCase( const std::string &name );
-
- TestCase();
-
- ~TestCase();
-
- virtual void run(TestResult *result);
-
- std::string getName() const;
-
- //! FIXME: this should probably be pure virtual.
- virtual void runTest();
-
-private:
- TestCase( const TestCase &other );
- TestCase &operator=( const TestCase &other );
-
-private:
- const std::string m_name;
-};
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TESTCASE_H
diff --git a/3rdParty/CppUnit/cppunit/TestComposite.h b/3rdParty/CppUnit/cppunit/TestComposite.h
deleted file mode 100644
index 0ded95f..0000000
--- a/3rdParty/CppUnit/cppunit/TestComposite.h
+++ /dev/null
@@ -1,45 +0,0 @@
-#ifndef CPPUNIT_TESTCOMPSITE_H // -*- C++ -*-
-#define CPPUNIT_TESTCOMPSITE_H
-
-#include <cppunit/Test.h>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief A Composite of Tests.
- *
- * Base class for all test composites. Subclass this class if you need to implement
- * a custom TestSuite.
- *
- * \see Test, TestSuite.
- */
-class CPPUNIT_API TestComposite : public Test
-{
-public:
- TestComposite( const std::string &name = "" );
-
- ~TestComposite();
-
- void run( TestResult *result );
-
- int countTestCases() const;
-
- std::string getName() const;
-
-private:
- TestComposite( const TestComposite &other );
- TestComposite &operator =( const TestComposite &other );
-
- virtual void doStartSuite( TestResult *controller );
- virtual void doRunChildTests( TestResult *controller );
- virtual void doEndSuite( TestResult *controller );
-
-private:
- const std::string m_name;
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TESTCOMPSITE_H
diff --git a/3rdParty/CppUnit/cppunit/TestFailure.h b/3rdParty/CppUnit/cppunit/TestFailure.h
deleted file mode 100644
index 6419979..0000000
--- a/3rdParty/CppUnit/cppunit/TestFailure.h
+++ /dev/null
@@ -1,58 +0,0 @@
-#ifndef CPPUNIT_TESTFAILURE_H // -*- C++ -*-
-#define CPPUNIT_TESTFAILURE_H
-
-#include <cppunit/Portability.h>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-
-class Exception;
-class SourceLine;
-class Test;
-
-
-/*! \brief Record of a failed Test execution.
- * \ingroup BrowsingCollectedTestResult
- *
- * A TestFailure collects a failed test together with
- * the caught exception.
- *
- * TestFailure assumes lifetime control for any exception
- * passed to it.
- */
-class CPPUNIT_API TestFailure
-{
-public:
- TestFailure( Test *failedTest,
- Exception *thrownException,
- bool isError );
-
- virtual ~TestFailure ();
-
- virtual Test *failedTest() const;
-
- virtual Exception *thrownException() const;
-
- virtual SourceLine sourceLine() const;
-
- virtual bool isError() const;
-
- virtual std::string failedTestName() const;
-
- virtual TestFailure *clone() const;
-
-protected:
- Test *m_failedTest;
- Exception *m_thrownException;
- bool m_isError;
-
-private:
- TestFailure( const TestFailure &other );
- TestFailure &operator =( const TestFailure& other );
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TESTFAILURE_H
diff --git a/3rdParty/CppUnit/cppunit/TestFixture.h b/3rdParty/CppUnit/cppunit/TestFixture.h
deleted file mode 100644
index 1223adb..0000000
--- a/3rdParty/CppUnit/cppunit/TestFixture.h
+++ /dev/null
@@ -1,99 +0,0 @@
-#ifndef CPPUNIT_TESTFIXTURE_H // -*- C++ -*-
-#define CPPUNIT_TESTFIXTURE_H
-
-#include <cppunit/Portability.h>
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief Wraps a test case with setUp and tearDown methods.
- * \ingroup WritingTestFixture
- *
- * A TestFixture is used to provide a common environment for a set
- * of test cases.
- *
- * To define a test fixture, do the following:
- * - implement a subclass of TestCase
- * - the fixture is defined by instance variables
- * - initialize the fixture state by overriding setUp
- * (i.e. construct the instance variables of the fixture)
- * - clean-up after a test by overriding tearDown.
- *
- * Each test runs in its own fixture so there
- * can be no side effects among test runs.
- * Here is an example:
- *
- * \code
- * class MathTest : public CppUnit::TestFixture {
- * protected:
- * int m_value1, m_value2;
- *
- * public:
- * MathTest() {}
- *
- * void setUp () {
- * m_value1 = 2;
- * m_value2 = 3;
- * }
- * }
- * \endcode
- *
- * For each test implement a method which interacts
- * with the fixture. Verify the expected results with assertions specified
- * by calling CPPUNIT_ASSERT on the expression you want to test:
- *
- * \code
- * public:
- * void testAdd () {
- * int result = m_value1 + m_value2;
- * CPPUNIT_ASSERT( result == 5 );
- * }
- * \endcode
- *
- * Once the methods are defined you can run them. To do this, use
- * a TestCaller.
- *
- * \code
- * CppUnit::Test *test = new CppUnit::TestCaller<MathTest>( "testAdd",
- * &MathTest::testAdd );
- * test->run();
- * \endcode
- *
- *
- * The tests to be run can be collected into a TestSuite.
- *
- * \code
- * public:
- * static CppUnit::TestSuite *MathTest::suite () {
- * CppUnit::TestSuite *suiteOfTests = new CppUnit::TestSuite;
- * suiteOfTests->addTest(new CppUnit::TestCaller<MathTest>(
- * "testAdd", &MathTest::testAdd));
- * suiteOfTests->addTest(new CppUnit::TestCaller<MathTest>(
- * "testDivideByZero", &MathTest::testDivideByZero));
- * return suiteOfTests;
- * }
- * \endcode
- *
- * A set of macros have been created for convenience. They are located in HelperMacros.h.
- *
- * \see TestResult, TestSuite, TestCaller,
- * \see CPPUNIT_TEST_SUB_SUITE, CPPUNIT_TEST, CPPUNIT_TEST_SUITE_END,
- * \see CPPUNIT_TEST_SUITE_REGISTRATION, CPPUNIT_TEST_EXCEPTION, CPPUNIT_TEST_FAIL.
- */
-class CPPUNIT_API TestFixture
-{
-public:
- virtual ~TestFixture() {};
-
- //! \brief Set up context before running a test.
- virtual void setUp() {};
-
- //! Clean up after the test run.
- virtual void tearDown() {};
-};
-
-
-CPPUNIT_NS_END
-
-
-#endif
diff --git a/3rdParty/CppUnit/cppunit/TestLeaf.h b/3rdParty/CppUnit/cppunit/TestLeaf.h
deleted file mode 100644
index c83b075..0000000
--- a/3rdParty/CppUnit/cppunit/TestLeaf.h
+++ /dev/null
@@ -1,44 +0,0 @@
-#ifndef CPPUNIT_TESTLEAF_H
-#define CPPUNIT_TESTLEAF_H
-
-#include <cppunit/Test.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief A single test object.
- *
- * Base class for single test case: a test that doesn't have any children.
- *
- */
-class CPPUNIT_API TestLeaf: public Test
-{
-public:
- /*! Returns 1 as the default number of test cases invoked by run().
- *
- * You may override this method when many test cases are invoked (RepeatedTest
- * for example).
- *
- * \return 1.
- * \see Test::countTestCases().
- */
- int countTestCases() const;
-
- /*! Returns the number of child of this test case: 0.
- *
- * You should never override this method: a TestLeaf as no children by definition.
- *
- * \return 0.
- */
- int getChildTestCount() const;
-
- /*! Always throws std::out_of_range.
- * \see Test::doGetChildTestAt().
- */
- Test *doGetChildTestAt( int index ) const;
-};
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TESTLEAF_H
diff --git a/3rdParty/CppUnit/cppunit/TestListener.h b/3rdParty/CppUnit/cppunit/TestListener.h
deleted file mode 100644
index 330262d..0000000
--- a/3rdParty/CppUnit/cppunit/TestListener.h
+++ /dev/null
@@ -1,148 +0,0 @@
-#ifndef CPPUNIT_TESTLISTENER_H // -*- C++ -*-
-#define CPPUNIT_TESTLISTENER_H
-
-#include <cppunit/Portability.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-class Exception;
-class Test;
-class TestFailure;
-class TestResult;
-
-
-/*! \brief Listener for test progress and result.
- * \ingroup TrackingTestExecution
- *
- * Implementing the Observer pattern a TestListener may be registered
- * to a TestResult to obtain information on the testing progress. Use
- * specialized sub classes of TestListener for text output
- * (TextTestProgressListener). Do not use the Listener for the test
- * result output, use a subclass of Outputter instead.
- *
- * The test framework distinguishes between failures and errors.
- * A failure is anticipated and checked for with assertions. Errors are
- * unanticipated problems signified by exceptions that are not generated
- * by the framework.
- *
- * Here is an example to track test time:
- *
- *
- * \code
- * #include <cppunit/TestListener.h>
- * #include <cppunit/Test.h>
- * #include <time.h> // for clock()
- *
- * class TimingListener : public CppUnit::TestListener
- * {
- * public:
- * void startTest( CppUnit::Test *test )
- * {
- * _chronometer.start();
- * }
- *
- * void endTest( CppUnit::Test *test )
- * {
- * _chronometer.end();
- * addTest( test, _chronometer.elapsedTime() );
- * }
- *
- * // ... (interface to add/read test timing result)
- *
- * private:
- * Clock _chronometer;
- * };
- * \endcode
- *
- * And another example that track failure/success at test suite level and captures
- * the TestPath of each suite:
- * \code
- * class SuiteTracker : public CppUnit::TestListener
- * {
- * public:
- * void startSuite( CppUnit::Test *suite )
- * {
- * m_currentPath.add( suite );
- * }
- *
- * void addFailure( const TestFailure &failure )
- * {
- * m_suiteFailure.top() = false;
- * }
- *
- * void endSuite( CppUnit::Test *suite )
- * {
- * m_suiteStatus.insert( std::make_pair( suite, m_suiteFailure.top() ) );
- * m_suitePaths.insert( std::make_pair( suite, m_currentPath ) );
- *
- * m_currentPath.up();
- * m_suiteFailure.pop();
- * }
- *
- * private:
- * std::stack<bool> m_suiteFailure;
- * CppUnit::TestPath m_currentPath;
- * std::map<CppUnit::Test *, bool> m_suiteStatus;
- * std::map<CppUnit::Test *, CppUnit::TestPath> m_suitePaths;
- * };
- * \endcode
- *
- * \see TestResult
- */
-class CPPUNIT_API TestListener
-{
-public:
- virtual ~TestListener() {}
-
- /// Called when just before a TestCase is run.
- virtual void startTest( Test * /*test*/ ) {}
-
- /*! \brief Called when a failure occurs while running a test.
- * \see TestFailure.
- * \warning \a failure is a temporary object that is destroyed after the
- * method call. Use TestFailure::clone() to create a duplicate.
- */
- virtual void addFailure( const TestFailure & /*failure*/ ) {}
-
- /// Called just after a TestCase was run (even if a failure occured).
- virtual void endTest( Test * /*test*/ ) {}
-
- /*! \brief Called by a TestComposite just before running its child tests.
- */
- virtual void startSuite( Test * /*suite*/ ) {}
-
- /*! \brief Called by a TestComposite after running its child tests.
- */
- virtual void endSuite( Test * /*suite*/ ) {}
-
- /*! \brief Called by a TestRunner before running the test.
- *
- * You can use this to do some global initialisation. A listener
- * could also use to output a 'prolog' to the test run.
- *
- * \param test Test that is going to be run.
- * \param eventManager Event manager used for the test run.
- */
- virtual void startTestRun( Test * /*test*/,
- TestResult * /*eventManager*/ ) {}
-
- /*! \brief Called by a TestRunner after running the test.
- *
- * TextTestProgressListener use this to emit a line break. You can also use this
- * to do some global uninitialisation.
- *
- * \param test Test that was run.
- * \param eventManager Event manager used for the test run.
- */
- virtual void endTestRun( Test * /*test*/,
- TestResult * /*eventManager*/ ) {}
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TESTLISTENER_H
-
-
diff --git a/3rdParty/CppUnit/cppunit/TestPath.h b/3rdParty/CppUnit/cppunit/TestPath.h
deleted file mode 100644
index c3c851c..0000000
--- a/3rdParty/CppUnit/cppunit/TestPath.h
+++ /dev/null
@@ -1,211 +0,0 @@
-#ifndef CPPUNIT_TESTPATH_H
-#define CPPUNIT_TESTPATH_H
-
-#include <cppunit/Portability.h>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251 ) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-#include <cppunit/portability/CppUnitDeque.h>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-
-class Test;
-
-#if CPPUNIT_NEED_DLL_DECL
-// template class CPPUNIT_API std::deque<Test *>;
-#endif
-
-
-/*! \brief A List of Test representing a path to access a Test.
- * \ingroup ExecutingTest
- *
- * The path can be converted to a string and resolved from a string with toString()
- * and TestPath( Test *root, const std::string &pathAsString ).
- *
- * Pointed tests are not owned by the class.
- *
- * \see Test::resolvedTestPath()
- */
-class CPPUNIT_API TestPath
-{
-public:
- /*! \brief Constructs an invalid path.
- *
- * The path is invalid until a test is added with add().
- */
- TestPath();
-
- /*! \brief Constructs a valid path.
- *
- * \param root Test to add.
- */
- TestPath( Test *root );
-
- /*! \brief Constructs a path using a slice of another path.
- * \param otherPath Path the test are copied from.
- * \param indexFirst Zero based index of the first test to copy. Adjusted to be in valid
- * range. \a count is adjusted with \a indexFirst.
- * \param count Number of tests to copy. If < 0 then all test starting from index
- * \a indexFirst are copied.
- */
- TestPath( const TestPath &otherPath,
- int indexFirst,
- int count = -1 );
-
- /*! \brief Resolves a path from a string returned by toString().
- *
- * If \a pathAsString is an absolute path (begins with '/'), then the first test name
- * of the path must be the name of \a searchRoot. Otherwise, \a pathAsString is a
- * relative path, and the first test found using Test::findTest() matching the first
- * test name is used as root. An empty string resolve to a path containing
- * \a searchRoot.
- *
- * The resolved path is always valid.
- *
- * \param searchRoot Test used to resolve the path.
- * \param pathAsString String that contains the path as a string created by toString().
- * \exception std::invalid_argument if one of the test names can not be resolved.
- * \see toString().
- */
- TestPath( Test *searchRoot,
- const std::string &pathAsString );
-
- /*! \brief Copy constructor.
- * \param other Object to copy.
- */
- TestPath( const TestPath &other );
-
- virtual ~TestPath();
-
- /*! \brief Tests if the path contains at least one test.
- * \return \c true if the path contains at least one test, otherwise returns \c false.
- */
- virtual bool isValid() const;
-
- /*! \brief Adds a test to the path.
- * \param test Pointer on the test to add. Must not be \c NULL.
- */
- virtual void add( Test *test );
-
- /*! \brief Adds all the tests of the specified path.
- * \param path Path that contains the test to add.
- */
- virtual void add( const TestPath &path );
-
- /*! \brief Inserts a test at the specified index.
- * \param test Pointer on the test to insert. Must not be \c NULL.
- * \param index Zero based index indicating where the test is inserted.
- * \exception std::out_of_range is \a index < 0 or \a index > getTestCount().
- */
- virtual void insert( Test *test, int index );
-
- /*! \brief Inserts all the tests at the specified path at a given index.
- * \param path Path that contains the test to insert.
- * \param index Zero based index indicating where the tests are inserted.
- * \exception std::out_of_range is \a index < 0 or \a index > getTestCount(), and
- * \a path is valid.
- */
- virtual void insert( const TestPath &path, int index );
-
- /*! \brief Removes all the test from the path.
- *
- * The path becomes invalid after this call.
- */
- virtual void removeTests();
-
- /*! \brief Removes the test at the specified index of the path.
- * \param index Zero based index of the test to remove.
- * \exception std::out_of_range is \a index < 0 or \a index >= getTestCount().
- */
- virtual void removeTest( int index );
-
- /*! \brief Removes the last test.
- * \exception std::out_of_range is the path is invalid.
- * \see isValid().
- */
- virtual void up();
-
- /*! \brief Returns the number of tests in the path.
- * \return Number of tests in the path.
- */
- virtual int getTestCount() const;
-
- /*! \brief Returns the test of the specified index.
- * \param index Zero based index of the test to return.
- * \return Pointer on the test at index \a index. Never \c NULL.
- * \exception std::out_of_range is \a index < 0 or \a index >= getTestCount().
- */
- virtual Test *getTestAt( int index ) const;
-
- /*! \brief Get the last test of the path.
- * \return Pointer on the last test (test at the bottom of the hierarchy). Never \c NULL.
- * \exception std::out_of_range if the path is not valid ( isValid() returns \c false ).
- */
- virtual Test *getChildTest() const;
-
- /*! \brief Returns the path as a string.
- *
- * For example, if a path is composed of three tests named "All Tests", "Math" and
- * "Math::testAdd", toString() will return:
- *
- * "All Tests/Math/Math::testAdd".
- *
- * \return A string composed of the test names separated with a '/'. It is a relative
- * path.
- */
- virtual std::string toString() const;
-
- /*! \brief Assignment operator.
- * \param other Object to copy.
- * \return This object.
- */
- TestPath &operator =( const TestPath &other );
-
-protected:
- /*! \brief Checks that the specified test index is within valid range.
- * \param index Zero based index to check.
- * \exception std::out_of_range is \a index < 0 or \a index >= getTestCount().
- */
- void checkIndexValid( int index ) const;
-
- /// A list of test names.
- typedef CppUnitDeque<std::string> PathTestNames;
-
- /*! \brief Splits a path string into its test name components.
- * \param pathAsString Path string created with toString().
- * \param testNames Test name components are added to that container.
- * \return \c true if the path is relative (does not begin with '/'), \c false
- * if it is absolute (begin with '/').
- */
- bool splitPathString( const std::string &pathAsString,
- PathTestNames &testNames );
-
- /*! \brief Finds the actual root of a path string and get the path string name components.
- * \param searchRoot Test used as root if the path string is absolute, or to search
- * the root test if the path string is relative.
- * \param pathAsString Path string. May be absolute or relative.
- * \param testNames Test name components are added to that container.
- * \return Pointer on the resolved root test. Never \c NULL.
- * \exception std::invalid_argument if either the root name can not be resolved or if
- * pathAsString contains no name components.
- */
- Test *findActualRoot( Test *searchRoot,
- const std::string &pathAsString,
- PathTestNames &testNames );
-
-protected:
- typedef CppUnitDeque<Test *> Tests;
- Tests m_tests;
-
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TESTPATH_H
-
diff --git a/3rdParty/CppUnit/cppunit/TestResult.h b/3rdParty/CppUnit/cppunit/TestResult.h
deleted file mode 100644
index e7e1050..0000000
--- a/3rdParty/CppUnit/cppunit/TestResult.h
+++ /dev/null
@@ -1,156 +0,0 @@
-#ifndef CPPUNIT_TESTRESULT_H
-#define CPPUNIT_TESTRESULT_H
-
-#include <cppunit/Portability.h>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251 ) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-#include <cppunit/SynchronizedObject.h>
-#include <cppunit/portability/CppUnitDeque.h>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-
-class Exception;
-class Functor;
-class Protector;
-class ProtectorChain;
-class Test;
-class TestFailure;
-class TestListener;
-
-
-#if CPPUNIT_NEED_DLL_DECL
-// template class CPPUNIT_API std::deque<TestListener *>;
-#endif
-
-/*! \brief Manages TestListener.
- * \ingroup TrackingTestExecution
- *
- * A single instance of this class is used when running the test. It is usually
- * created by the test runner (TestRunner).
- *
- * This class shouldn't have to be inherited from. Use a TestListener
- * or one of its subclasses to be informed of the ongoing tests.
- * Use a Outputter to receive a test summary once it has finished
- *
- * TestResult supplies a template method 'setSynchronizationObject()'
- * so that subclasses can provide mutual exclusion in the face of multiple
- * threads. This can be useful when tests execute in one thread and
- * they fill a subclass of TestResult which effects change in another
- * thread. To have mutual exclusion, override setSynchronizationObject()
- * and make sure that you create an instance of ExclusiveZone at the
- * beginning of each method.
- *
- * \see Test, TestListener, TestResultCollector, Outputter.
- */
-class CPPUNIT_API TestResult : protected SynchronizedObject
-{
-public:
- /// Construct a TestResult
- TestResult( SynchronizationObject *syncObject = 0 );
-
- /// Destroys a test result
- virtual ~TestResult();
-
- virtual void addListener( TestListener *listener );
-
- virtual void removeListener( TestListener *listener );
-
- /// Resets the stop flag.
- virtual void reset();
-
- /// Stop testing
- virtual void stop();
-
- /// Returns whether testing should be stopped
- virtual bool shouldStop() const;
-
- /// Informs TestListener that a test will be started.
- virtual void startTest( Test *test );
-
- /*! \brief Adds an error to the list of errors.
- * The passed in exception
- * caused the error
- */
- virtual void addError( Test *test, Exception *e );
-
- /*! \brief Adds a failure to the list of failures. The passed in exception
- * caused the failure.
- */
- virtual void addFailure( Test *test, Exception *e );
-
- /// Informs TestListener that a test was completed.
- virtual void endTest( Test *test );
-
- /// Informs TestListener that a test suite will be started.
- virtual void startSuite( Test *test );
-
- /// Informs TestListener that a test suite was completed.
- virtual void endSuite( Test *test );
-
- /*! \brief Run the specified test.
- *
- * Calls startTestRun(), test->run(this), and finally endTestRun().
- */
- virtual void runTest( Test *test );
-
- /*! \brief Protects a call to the specified functor.
- *
- * See Protector to understand how protector works. A default protector is
- * always present. It captures CppUnit::Exception, std::exception and
- * any other exceptions, retrieving as much as possible information about
- * the exception as possible.
- *
- * Additional Protector can be added to the chain to support other exception
- * types using pushProtector() and popProtector().
- *
- * \param functor Functor to call (typically a call to setUp(), runTest() or
- * tearDown().
- * \param test Test the functor is associated to (used for failure reporting).
- * \param shortDescription Short description override for the failure message.
- */
- virtual bool protect( const Functor &functor,
- Test *test,
- const std::string &shortDescription = std::string("") );
-
- /// Adds the specified protector to the protector chain.
- virtual void pushProtector( Protector *protector );
-
- /// Removes the last protector from the protector chain.
- virtual void popProtector();
-
-protected:
- /*! \brief Called to add a failure to the list of failures.
- */
- void addFailure( const TestFailure &failure );
-
- virtual void startTestRun( Test *test );
- virtual void endTestRun( Test *test );
-
-protected:
- typedef CppUnitDeque<TestListener *> TestListeners;
- TestListeners m_listeners;
- ProtectorChain *m_protectorChain;
- bool m_stop;
-
-private:
- TestResult( const TestResult &other );
- TestResult &operator =( const TestResult &other );
-};
-
-
-CPPUNIT_NS_END
-
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( pop )
-#endif
-
-#endif // CPPUNIT_TESTRESULT_H
-
-
diff --git a/3rdParty/CppUnit/cppunit/TestResultCollector.h b/3rdParty/CppUnit/cppunit/TestResultCollector.h
deleted file mode 100644
index 01b0a54..0000000
--- a/3rdParty/CppUnit/cppunit/TestResultCollector.h
+++ /dev/null
@@ -1,87 +0,0 @@
-#ifndef CPPUNIT_TESTRESULTCOLLECTOR_H
-#define CPPUNIT_TESTRESULTCOLLECTOR_H
-
-#include <cppunit/Portability.h>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251 4660 ) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-#include <cppunit/TestSuccessListener.h>
-#include <cppunit/portability/CppUnitDeque.h>
-
-
-CPPUNIT_NS_BEGIN
-
-#if CPPUNIT_NEED_DLL_DECL
-// template class CPPUNIT_API std::deque<TestFailure *>;
-// template class CPPUNIT_API std::deque<Test *>;
-#endif
-
-
-/*! \brief Collects test result.
- * \ingroup WritingTestResult
- * \ingroup BrowsingCollectedTestResult
- *
- * A TestResultCollector is a TestListener which collects the results of executing
- * a test case. It is an instance of the Collecting Parameter pattern.
- *
- * The test framework distinguishes between failures and errors.
- * A failure is anticipated and checked for with assertions. Errors are
- * unanticipated problems signified by exceptions that are not generated
- * by the framework.
- * \see TestListener, TestFailure.
- */
-class CPPUNIT_API TestResultCollector : public TestSuccessListener
-{
-public:
- typedef CppUnitDeque<TestFailure *> TestFailures;
- typedef CppUnitDeque<Test *> Tests;
-
-
- /*! Constructs a TestResultCollector object.
- */
- TestResultCollector( SynchronizationObject *syncObject = 0 );
-
- /// Destructor.
- virtual ~TestResultCollector();
-
- void startTest( Test *test );
- void addFailure( const TestFailure &failure );
-
- virtual void reset();
-
- virtual int runTests() const;
- virtual int testErrors() const;
- virtual int testFailures() const;
- virtual int testFailuresTotal() const;
-
- virtual const TestFailures& failures() const;
- virtual const Tests &tests() const;
-
-protected:
- void freeFailures();
-
- Tests m_tests;
- TestFailures m_failures;
- int m_testErrors;
-
-private:
- /// Prevents the use of the copy constructor.
- TestResultCollector( const TestResultCollector &copy );
-
- /// Prevents the use of the copy operator.
- void operator =( const TestResultCollector &copy );
-};
-
-
-
-CPPUNIT_NS_END
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( pop )
-#endif
-
-
-#endif // CPPUNIT_TESTRESULTCOLLECTOR_H
diff --git a/3rdParty/CppUnit/cppunit/TestRunner.h b/3rdParty/CppUnit/cppunit/TestRunner.h
deleted file mode 100644
index 930370a..0000000
--- a/3rdParty/CppUnit/cppunit/TestRunner.h
+++ /dev/null
@@ -1,135 +0,0 @@
-#ifndef CPPUNIT_TESTRUNNER_H
-#define CPPUNIT_TESTRUNNER_H
-
-#include <cppunit/TestSuite.h>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-
-class Test;
-class TestResult;
-
-
-/*! \brief Generic test runner.
- * \ingroup ExecutingTest
- *
- * The TestRunner assumes ownership of all added tests: you can not add test
- * or suite that are local variable since they can't be deleted.
- *
- * Example of usage:
- * \code
- * #include <cppunit/extensions/TestFactoryRegistry.h>
- * #include <cppunit/CompilerOutputter.h>
- * #include <cppunit/TestResult.h>
- * #include <cppunit/TestResultCollector.h>
- * #include <cppunit/TestRunner.h>
- * #include <cppunit/TextTestProgressListener.h>
- *
- *
- * int
- * main( int argc, char* argv[] )
- * {
- * std::string testPath = (argc > 1) ? std::string(argv[1]) : "";
- *
- * // Create the event manager and test controller
- * CppUnit::TestResult controller;
- *
- * // Add a listener that colllects test result
- * CppUnit::TestResultCollector result;
- * controller.addListener( &result );
- *
- * // Add a listener that print dots as test run.
- * CppUnit::TextTestProgressListener progress;
- * controller.addListener( &progress );
- *
- * // Add the top suite to the test runner
- * CppUnit::TestRunner runner;
- * runner.addTest( CppUnit::TestFactoryRegistry::getRegistry().makeTest() );
- * try
- * {
- * std::cout << "Running " << testPath;
- * runner.run( controller, testPath );
- *
- * std::cerr << std::endl;
- *
- * // Print test in a compiler compatible format.
- * CppUnit::CompilerOutputter outputter( &result, std::cerr );
- * outputter.write();
- * }
- * catch ( std::invalid_argument &e ) // Test path not resolved
- * {
- * std::cerr << std::endl
- * << "ERROR: " << e.what()
- * << std::endl;
- * return 0;
- * }
- *
- * return result.wasSuccessful() ? 0 : 1;
- * }
- * \endcode
- */
-class CPPUNIT_API TestRunner
-{
-public:
- /*! \brief Constructs a TestRunner object.
- */
- TestRunner( );
-
- /// Destructor.
- virtual ~TestRunner();
-
- /*! \brief Adds the specified test.
- * \param test Test to add. The TestRunner takes ownership of the test.
- */
- virtual void addTest( Test *test );
-
- /*! \brief Runs a test using the specified controller.
- * \param controller Event manager and controller used for testing
- * \param testPath Test path string. See Test::resolveTestPath() for detail.
- * \exception std::invalid_argument if no test matching \a testPath is found.
- * see TestPath::TestPath( Test*, const std::string &)
- * for detail.
- */
- virtual void run( TestResult &controller,
- const std::string &testPath = "" );
-
-protected:
- /*! \brief (INTERNAL) Mutating test suite.
- */
- class CPPUNIT_API WrappingSuite : public TestSuite
- {
- public:
- WrappingSuite( const std::string &name = "All Tests" );
-
- int getChildTestCount() const;
-
- std::string getName() const;
-
- void run( TestResult *result );
-
- protected:
- Test *doGetChildTestAt( int index ) const;
-
- bool hasOnlyOneTest() const;
-
- Test *getUniqueChildTest() const;
- };
-
-protected:
- WrappingSuite *m_suite;
-
-private:
- /// Prevents the use of the copy constructor.
- TestRunner( const TestRunner &copy );
-
- /// Prevents the use of the copy operator.
- void operator =( const TestRunner &copy );
-
-private:
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TESTRUNNER_H
diff --git a/3rdParty/CppUnit/cppunit/TestSuccessListener.h b/3rdParty/CppUnit/cppunit/TestSuccessListener.h
deleted file mode 100644
index 60c5ff5..0000000
--- a/3rdParty/CppUnit/cppunit/TestSuccessListener.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef CPPUNIT_TESTSUCCESSLISTENER_H
-#define CPPUNIT_TESTSUCCESSLISTENER_H
-
-#include <cppunit/SynchronizedObject.h>
-#include <cppunit/TestListener.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief TestListener that checks if any test case failed.
- * \ingroup TrackingTestExecution
- */
-class CPPUNIT_API TestSuccessListener : public TestListener,
- public SynchronizedObject
-{
-public:
- /*! Constructs a TestSuccessListener object.
- */
- TestSuccessListener( SynchronizationObject *syncObject = 0 );
-
- /// Destructor.
- virtual ~TestSuccessListener();
-
- virtual void reset();
-
- void addFailure( const TestFailure &failure );
-
- /// Returns whether the entire test was successful or not.
- virtual bool wasSuccessful() const;
-
-private:
- bool m_success;
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TESTSUCCESSLISTENER_H
diff --git a/3rdParty/CppUnit/cppunit/TestSuite.h b/3rdParty/CppUnit/cppunit/TestSuite.h
deleted file mode 100644
index 2b9cd8d..0000000
--- a/3rdParty/CppUnit/cppunit/TestSuite.h
+++ /dev/null
@@ -1,80 +0,0 @@
-#ifndef CPPUNIT_TESTSUITE_H // -*- C++ -*-
-#define CPPUNIT_TESTSUITE_H
-
-#include <cppunit/Portability.h>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251 ) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-#include <cppunit/TestComposite.h>
-#include <cppunit/portability/CppUnitVector.h>
-
-CPPUNIT_NS_BEGIN
-
-
-#if CPPUNIT_NEED_DLL_DECL
-// template class CPPUNIT_API std::vector<Test *>;
-#endif
-
-
-/*! \brief A Composite of Tests.
- * \ingroup CreatingTestSuite
- *
- * It runs a collection of test cases. Here is an example.
- * \code
- * CppUnit::TestSuite *suite= new CppUnit::TestSuite();
- * suite->addTest(new CppUnit::TestCaller<MathTest> (
- * "testAdd", testAdd));
- * suite->addTest(new CppUnit::TestCaller<MathTest> (
- * "testDivideByZero", testDivideByZero));
- * \endcode
- * Note that \link TestSuite TestSuites \endlink assume lifetime
- * control for any tests added to them.
- *
- * TestSuites do not register themselves in the TestRegistry.
- * \see Test
- * \see TestCaller
- */
-class CPPUNIT_API TestSuite : public TestComposite
-{
-public:
- /*! Constructs a test suite with the specified name.
- */
- TestSuite( std::string name = "" );
-
- ~TestSuite();
-
- /*! Adds the specified test to the suite.
- * \param test Test to add. Must not be \c NULL.
- */
- void addTest( Test *test );
-
- /*! Returns the list of the tests (DEPRECATED).
- * \deprecated Use getChildTestCount() & getChildTestAt() of the
- * TestComposite interface instead.
- * \return Reference on a vector that contains the tests of the suite.
- */
- const CppUnitVector<Test *> &getTests() const;
-
- /*! Destroys all the tests of the suite.
- */
- virtual void deleteContents();
-
- int getChildTestCount() const;
-
- Test *doGetChildTestAt( int index ) const;
-
-private:
- CppUnitVector<Test *> m_tests;
-};
-
-
-CPPUNIT_NS_END
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( pop )
-#endif
-
-#endif // CPPUNIT_TESTSUITE_H
diff --git a/3rdParty/CppUnit/cppunit/TextOutputter.h b/3rdParty/CppUnit/cppunit/TextOutputter.h
deleted file mode 100644
index 6bd9cea..0000000
--- a/3rdParty/CppUnit/cppunit/TextOutputter.h
+++ /dev/null
@@ -1,59 +0,0 @@
-#ifndef CPPUNIT_TEXTOUTPUTTER_H
-#define CPPUNIT_TEXTOUTPUTTER_H
-
-#include <cppunit/Portability.h>
-#include <cppunit/Outputter.h>
-#include <cppunit/portability/Stream.h>
-
-CPPUNIT_NS_BEGIN
-
-
-class Exception;
-class SourceLine;
-class TestResultCollector;
-class TestFailure;
-
-
-/*! \brief Prints a TestResultCollector to a text stream.
- * \ingroup WritingTestResult
- */
-class CPPUNIT_API TextOutputter : public Outputter
-{
-public:
- TextOutputter( TestResultCollector *result,
- OStream &stream );
-
- /// Destructor.
- virtual ~TextOutputter();
-
- void write();
- virtual void printFailures();
- virtual void printHeader();
-
- virtual void printFailure( TestFailure *failure,
- int failureNumber );
- virtual void printFailureListMark( int failureNumber );
- virtual void printFailureTestName( TestFailure *failure );
- virtual void printFailureType( TestFailure *failure );
- virtual void printFailureLocation( SourceLine sourceLine );
- virtual void printFailureDetail( Exception *thrownException );
- virtual void printFailureWarning();
- virtual void printStatistics();
-
-protected:
- TestResultCollector *m_result;
- OStream &m_stream;
-
-private:
- /// Prevents the use of the copy constructor.
- TextOutputter( const TextOutputter &copy );
-
- /// Prevents the use of the copy operator.
- void operator =( const TextOutputter &copy );
-};
-
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TEXTOUTPUTTER_H
diff --git a/3rdParty/CppUnit/cppunit/TextTestProgressListener.h b/3rdParty/CppUnit/cppunit/TextTestProgressListener.h
deleted file mode 100644
index 7521c40..0000000
--- a/3rdParty/CppUnit/cppunit/TextTestProgressListener.h
+++ /dev/null
@@ -1,44 +0,0 @@
-#ifndef CPPUNIT_TEXTTESTPROGRESSLISTENER_H
-#define CPPUNIT_TEXTTESTPROGRESSLISTENER_H
-
-#include <cppunit/TestListener.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*!
- * \brief TestListener that show the status of each TestCase test result.
- * \ingroup TrackingTestExecution
- */
-class CPPUNIT_API TextTestProgressListener : public TestListener
-{
-public:
- /*! Constructs a TextTestProgressListener object.
- */
- TextTestProgressListener();
-
- /// Destructor.
- virtual ~TextTestProgressListener();
-
- void startTest( Test *test );
-
- void addFailure( const TestFailure &failure );
-
- void endTestRun( Test *test,
- TestResult *eventManager );
-
-private:
- /// Prevents the use of the copy constructor.
- TextTestProgressListener( const TextTestProgressListener &copy );
-
- /// Prevents the use of the copy operator.
- void operator =( const TextTestProgressListener &copy );
-
-private:
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TEXTTESTPROGRESSLISTENER_H
diff --git a/3rdParty/CppUnit/cppunit/TextTestResult.h b/3rdParty/CppUnit/cppunit/TextTestResult.h
deleted file mode 100644
index e7b1fa3..0000000
--- a/3rdParty/CppUnit/cppunit/TextTestResult.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef CPPUNIT_TEXTTESTRESULT_H
-#define CPPUNIT_TEXTTESTRESULT_H
-
-#include <cppunit/TestResult.h>
-#include <cppunit/TestResultCollector.h>
-#include <cppunit/portability/Stream.h>
-
-CPPUNIT_NS_BEGIN
-
-
-class SourceLine;
-class Exception;
-class Test;
-
-/*! \brief Holds printable test result (DEPRECATED).
- * \ingroup TrackingTestExecution
- *
- * deprecated Use class TextTestProgressListener and TextOutputter instead.
- */
-class CPPUNIT_API TextTestResult : public TestResult,
- public TestResultCollector
-{
-public:
- TextTestResult();
-
- virtual void addFailure( const TestFailure &failure );
- virtual void startTest( Test *test );
- virtual void print( OStream &stream );
-};
-
-/** insertion operator for easy output */
-CPPUNIT_API OStream &operator <<( OStream &stream,
- TextTestResult &result );
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TEXTTESTRESULT_H
-
-
diff --git a/3rdParty/CppUnit/cppunit/XmlOutputter.h b/3rdParty/CppUnit/cppunit/XmlOutputter.h
deleted file mode 100644
index 0de9676..0000000
--- a/3rdParty/CppUnit/cppunit/XmlOutputter.h
+++ /dev/null
@@ -1,167 +0,0 @@
-#ifndef CPPUNIT_XMLTESTRESULTOUTPUTTER_H
-#define CPPUNIT_XMLTESTRESULTOUTPUTTER_H
-
-#include <cppunit/Portability.h>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251 ) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-#include <cppunit/Outputter.h>
-#include <cppunit/portability/CppUnitDeque.h>
-#include <cppunit/portability/CppUnitMap.h>
-#include <cppunit/portability/Stream.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-class Test;
-class TestFailure;
-class TestResultCollector;
-class XmlDocument;
-class XmlElement;
-class XmlOutputterHook;
-
-
-/*! \brief Outputs a TestResultCollector in XML format.
- * \ingroup WritingTestResult
- *
- * Save the test result as a XML stream.
- *
- * Additional datas can be added to the XML document using XmlOutputterHook.
- * Hook are not owned by the XmlOutputter. They should be valid until
- * destruction of the XmlOutputter. They can be removed with removeHook().
- *
- * \see XmlDocument, XmlElement, XmlOutputterHook.
- */
-class CPPUNIT_API XmlOutputter : public Outputter
-{
-public:
- /*! \brief Constructs a XmlOutputter object.
- * \param result Result of the test run.
- * \param stream Stream used to output the XML output.
- * \param encoding Encoding used in the XML file (default is Latin-1).
- */
- XmlOutputter( TestResultCollector *result,
- OStream &stream,
- std::string encoding = std::string("ISO-8859-1") );
-
- /// Destructor.
- virtual ~XmlOutputter();
-
- /*! \brief Adds the specified hook to the outputter.
- * \param hook Hook to add. Must not be \c NULL.
- */
- virtual void addHook( XmlOutputterHook *hook );
-
- /*! \brief Removes the specified hook from the outputter.
- * \param hook Hook to remove.
- */
- virtual void removeHook( XmlOutputterHook *hook );
-
- /*! \brief Writes the specified result as an XML document to the stream.
- *
- * Refer to examples/cppunittest/XmlOutputterTest.cpp for example
- * of use and XML document structure.
- */
- virtual void write();
-
- /*! \brief Sets the XSL style sheet used.
- *
- * \param styleSheet Name of the style sheet used. If empty, then no style sheet
- * is used (default).
- */
- virtual void setStyleSheet( const std::string &styleSheet );
-
- /*! \brief set the output document as standalone or not.
- *
- * For the output document, specify wether it's a standalone XML
- * document, or not.
- *
- * \param standalone if true, the output will be specified as standalone.
- * if false, it will be not.
- */
- virtual void setStandalone( bool standalone );
-
- typedef CppUnitMap<Test *,TestFailure*, std::less<Test*> > FailedTests;
-
- /*! \brief Sets the root element and adds its children.
- *
- * Set the root element of the XML Document and add its child elements.
- *
- * For all hooks, call beginDocument() just after creating the root element (it
- * is empty at this time), and endDocument() once all the datas have been added
- * to the root element.
- */
- virtual void setRootNode();
-
- virtual void addFailedTests( FailedTests &failedTests,
- XmlElement *rootNode );
-
- virtual void addSuccessfulTests( FailedTests &failedTests,
- XmlElement *rootNode );
-
- /*! \brief Adds the statics element to the root node.
- *
- * Creates a new element containing statistics data and adds it to the root element.
- * Then, for all hooks, call statisticsAdded().
- * \param rootNode Root element.
- */
- virtual void addStatistics( XmlElement *rootNode );
-
- /*! \brief Adds a failed test to the failed tests node.
- * Creates a new element containing datas about the failed test, and adds it to
- * the failed tests element.
- * Then, for all hooks, call failTestAdded().
- */
- virtual void addFailedTest( Test *test,
- TestFailure *failure,
- int testNumber,
- XmlElement *testsNode );
-
- virtual void addFailureLocation( TestFailure *failure,
- XmlElement *testElement );
-
-
- /*! \brief Adds a successful test to the successful tests node.
- * Creates a new element containing datas about the successful test, and adds it to
- * the successful tests element.
- * Then, for all hooks, call successfulTestAdded().
- */
- virtual void addSuccessfulTest( Test *test,
- int testNumber,
- XmlElement *testsNode );
-protected:
- virtual void fillFailedTestsMap( FailedTests &failedTests );
-
-protected:
- typedef CppUnitDeque<XmlOutputterHook *> Hooks;
-
- TestResultCollector *m_result;
- OStream &m_stream;
- std::string m_encoding;
- std::string m_styleSheet;
- XmlDocument *m_xml;
- Hooks m_hooks;
-
-private:
- /// Prevents the use of the copy constructor.
- XmlOutputter( const XmlOutputter &copy );
-
- /// Prevents the use of the copy operator.
- void operator =( const XmlOutputter &copy );
-
-private:
-};
-
-
-CPPUNIT_NS_END
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( pop )
-#endif
-
-
-#endif // CPPUNIT_XMLTESTRESULTOUTPUTTER_H
diff --git a/3rdParty/CppUnit/cppunit/XmlOutputterHook.h b/3rdParty/CppUnit/cppunit/XmlOutputterHook.h
deleted file mode 100644
index 5ded3b1..0000000
--- a/3rdParty/CppUnit/cppunit/XmlOutputterHook.h
+++ /dev/null
@@ -1,163 +0,0 @@
-#ifndef CPPUNIT_XMLOUTPUTTERHOOK_H
-#define CPPUNIT_XMLOUTPUTTERHOOK_H
-
-#include <cppunit/Portability.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-class Test;
-class TestFailure;
-class XmlDocument;
-class XmlElement;
-
-
-
-/*! \brief Hook to customize Xml output.
- *
- * XmlOutputterHook can be passed to XmlOutputter to customize the XmlDocument.
- *
- * Common customizations are:
- * - adding some datas to successfull or failed test with
- * failTestAdded() and successfulTestAdded(),
- * - adding some statistics with statisticsAdded(),
- * - adding other datas with beginDocument() or endDocument().
- *
- * See examples/ClockerPlugIn which makes use of most the hook.
- *
- * Another simple example of an outputter hook is shown below. It may be
- * used to add some meta information to your result files. In the example,
- * the author name as well as the project name and test creation date is
- * added to the head of the xml file.
- *
- * In order to make this information stored within the xml file, the virtual
- * member function beginDocument() is overriden where a new
- * XmlElement object is created.
- *
- * This element is simply added to the root node of the document which
- * makes the information automatically being stored when the xml file
- * is written.
- *
- * \code
- * #include <cppunit/XmlOutputterHook.h>
- * #include <cppunit/XmlElement.h>
- * #include <cppunit/tools/StringTools.h>
- *
- * ...
- *
- * class MyXmlOutputterHook : public CppUnit::XmlOutputterHook
- * {
- * public:
- * MyXmlOutputterHook(const std::string projectName,
- * const std::string author)
- * {
- * m_projectName = projectName;
- * m_author = author;
- * };
- *
- * virtual ~MyXmlOutputterHook()
- * {
- * };
- *
- * void beginDocument(CppUnit::XmlDocument* document)
- * {
- * if (!document)
- * return;
- *
- * // dump current time
- * std::string szDate = CppUnit::StringTools::toString( (int)time(0) );
- * CppUnit::XmlElement* metaEl = new CppUnit::XmlElement("SuiteInfo",
- * "");
- *
- * metaEl->addElement( new CppUnit::XmlElement("Author", m_author) );
- * metaEl->addElement( new CppUnit::XmlElement("Project", m_projectName) );
- * metaEl->addElement( new CppUnit::XmlElement("Date", szDate ) );
- *
- * document->rootElement().addElement(metaEl);
- * };
- * private:
- * std::string m_projectName;
- * std::string m_author;
- * };
- * \endcode
- *
- * Within your application's main code, you need to snap the hook
- * object into your xml outputter object like shown below:
- *
- * \code
- * CppUnit::TextUi::TestRunner runner;
- * std::ofstream outputFile("testResults.xml");
- *
- * CppUnit::XmlOutputter* outputter = new CppUnit::XmlOutputter( &runner.result(),
- * outputFile );
- * MyXmlOutputterHook hook("myProject", "meAuthor");
- * outputter->addHook(&hook);
- * runner.setOutputter(outputter);
- * runner.addTest( VectorFixture::suite() );
- * runner.run();
- * outputFile.close();
- * \endcode
- *
- * This results into the following output:
- *
- * \code
- * <TestRun>
- * <suiteInfo>
- * <author>meAuthor</author>
- * <project>myProject</project>
- * <date>1028143912</date>
- * </suiteInfo>
- * <FailedTests>
- * ...
- * \endcode
- *
- * \see XmlOutputter, CppUnitTestPlugIn.
- */
-class CPPUNIT_API XmlOutputterHook
-{
-public:
- /*! Called before any elements is added to the root element.
- * \param document XML Document being created.
- */
- virtual void beginDocument( XmlDocument *document );
-
- /*! Called after adding all elements to the root element.
- * \param document XML Document being created.
- */
- virtual void endDocument( XmlDocument *document );
-
- /*! Called after adding a fail test element.
- * \param document XML Document being created.
- * \param testElement \<FailedTest\> element.
- * \param test Test that failed.
- * \param failure Test failure data.
- */
- virtual void failTestAdded( XmlDocument *document,
- XmlElement *testElement,
- Test *test,
- TestFailure *failure );
-
- /*! Called after adding a successful test element.
- * \param document XML Document being created.
- * \param testElement \<Test\> element.
- * \param test Test that was successful.
- */
- virtual void successfulTestAdded( XmlDocument *document,
- XmlElement *testElement,
- Test *test );
-
- /*! Called after adding the statistic element.
- * \param document XML Document being created.
- * \param statisticsElement \<Statistics\> element.
- */
- virtual void statisticsAdded( XmlDocument *document,
- XmlElement *statisticsElement );
-
- virtual ~XmlOutputterHook() {}
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_XMLOUTPUTTERHOOK_H
diff --git a/3rdParty/CppUnit/cppunit/config-auto.h b/3rdParty/CppUnit/cppunit/config-auto.h
deleted file mode 100644
index 58b3d6e..0000000
--- a/3rdParty/CppUnit/cppunit/config-auto.h
+++ /dev/null
@@ -1,161 +0,0 @@
-#ifndef _INCLUDE_CPPUNIT_CONFIG_AUTO_H
-#define _INCLUDE_CPPUNIT_CONFIG_AUTO_H 1
-
-/* include/cppunit/config-auto.h. Generated automatically at end of configure. */
-/* config/config.h. Generated by configure. */
-/* config/config.h.in. Generated from configure.in by autoheader. */
-
-/* define if library uses std::string::compare(string,pos,n) */
-/* #undef CPPUNIT_FUNC_STRING_COMPARE_STRING_FIRST */
-
-
-#define CPPUNIT_HAVE_CPP_CAST
-
-/* define if the library defines strstream */
-#ifndef CPPUNIT_HAVE_CLASS_STRSTREAM
-#define CPPUNIT_HAVE_CLASS_STRSTREAM 1
-#endif
-
-/* Define to 1 if you have the <cmath> header file. */
-#ifndef CPPUNIT_HAVE_CMATH
-#define CPPUNIT_HAVE_CMATH 1
-#endif
-
-/* Define if you have the GNU dld library. */
-/* #undef CPPUNIT_HAVE_DLD */
-
-/* Define to 1 if you have the `dlerror' function. */
-#ifndef CPPUNIT_HAVE_DLERROR
-#define CPPUNIT_HAVE_DLERROR 1
-#endif
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#ifndef CPPUNIT_HAVE_DLFCN_H
-#define CPPUNIT_HAVE_DLFCN_H 1
-#endif
-
-/* define if the compiler supports GCC C++ ABI name demangling */
-#ifndef CPPUNIT_HAVE_GCC_ABI_DEMANGLE
-#define CPPUNIT_HAVE_GCC_ABI_DEMANGLE 1
-#endif
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#ifndef CPPUNIT_HAVE_INTTYPES_H
-#define CPPUNIT_HAVE_INTTYPES_H 1
-#endif
-
-/* Define if you have the libdl library or equivalent. */
-#ifndef CPPUNIT_HAVE_LIBDL
-#define CPPUNIT_HAVE_LIBDL 1
-#endif
-
-/* Define to 1 if you have the <memory.h> header file. */
-#ifndef CPPUNIT_HAVE_MEMORY_H
-#define CPPUNIT_HAVE_MEMORY_H 1
-#endif
-
-/* define to 1 if the compiler implements namespaces */
-#ifndef CPPUNIT_HAVE_NAMESPACES
-#define CPPUNIT_HAVE_NAMESPACES 1
-#endif
-
-/* define if the compiler supports Run-Time Type Identification */
-#ifndef CPPUNIT_HAVE_RTTI
-#define CPPUNIT_HAVE_RTTI 1
-#endif
-
-/* Define if you have the shl_load function. */
-/* #undef CPPUNIT_HAVE_SHL_LOAD */
-
-/* define if the compiler has stringstream */
-#ifndef CPPUNIT_HAVE_SSTREAM
-#define CPPUNIT_HAVE_SSTREAM 1
-#endif
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#ifndef CPPUNIT_HAVE_STDINT_H
-#define CPPUNIT_HAVE_STDINT_H 1
-#endif
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#ifndef CPPUNIT_HAVE_STDLIB_H
-#define CPPUNIT_HAVE_STDLIB_H 1
-#endif
-
-/* Define to 1 if you have the <strings.h> header file. */
-#ifndef CPPUNIT_HAVE_STRINGS_H
-#define CPPUNIT_HAVE_STRINGS_H 1
-#endif
-
-/* Define to 1 if you have the <string.h> header file. */
-#ifndef CPPUNIT_HAVE_STRING_H
-#define CPPUNIT_HAVE_STRING_H 1
-#endif
-
-/* Define to 1 if you have the <strstream> header file. */
-#ifndef CPPUNIT_HAVE_STRSTREAM
-#define CPPUNIT_HAVE_STRSTREAM 1
-#endif
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#ifndef CPPUNIT_HAVE_SYS_STAT_H
-#define CPPUNIT_HAVE_SYS_STAT_H 1
-#endif
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#ifndef CPPUNIT_HAVE_SYS_TYPES_H
-#define CPPUNIT_HAVE_SYS_TYPES_H 1
-#endif
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#ifndef CPPUNIT_HAVE_UNISTD_H
-#define CPPUNIT_HAVE_UNISTD_H 1
-#endif
-
-/* Name of package */
-#ifndef CPPUNIT_PACKAGE
-#define CPPUNIT_PACKAGE "cppunit"
-#endif
-
-/* Define to the address where bug reports for this package should be sent. */
-#ifndef CPPUNIT_PACKAGE_BUGREPORT
-#define CPPUNIT_PACKAGE_BUGREPORT ""
-#endif
-
-/* Define to the full name of this package. */
-#ifndef CPPUNIT_PACKAGE_NAME
-#define CPPUNIT_PACKAGE_NAME ""
-#endif
-
-/* Define to the full name and version of this package. */
-#ifndef CPPUNIT_PACKAGE_STRING
-#define CPPUNIT_PACKAGE_STRING ""
-#endif
-
-/* Define to the one symbol short name of this package. */
-#ifndef CPPUNIT_PACKAGE_TARNAME
-#define CPPUNIT_PACKAGE_TARNAME ""
-#endif
-
-/* Define to the version of this package. */
-#ifndef CPPUNIT_PACKAGE_VERSION
-#define CPPUNIT_PACKAGE_VERSION ""
-#endif
-
-/* Define to 1 if you have the ANSI C header files. */
-#ifndef CPPUNIT_STDC_HEADERS
-#define CPPUNIT_STDC_HEADERS 1
-#endif
-
-/* Define to 1 to use type_info::name() for class names */
-#ifndef CPPUNIT_USE_TYPEINFO_NAME
-#define CPPUNIT_USE_TYPEINFO_NAME CPPUNIT_HAVE_RTTI
-#endif
-
-/* Version number of package */
-#ifndef CPPUNIT_VERSION
-#define CPPUNIT_VERSION "1.12.0"
-#endif
-
-/* _INCLUDE_CPPUNIT_CONFIG_AUTO_H */
-#endif
diff --git a/3rdParty/CppUnit/cppunit/config/CppUnitApi.h b/3rdParty/CppUnit/cppunit/config/CppUnitApi.h
deleted file mode 100644
index a068bbd..0000000
--- a/3rdParty/CppUnit/cppunit/config/CppUnitApi.h
+++ /dev/null
@@ -1,33 +0,0 @@
-#ifndef CPPUNIT_CONFIG_CPPUNITAPI
-#define CPPUNIT_CONFIG_CPPUNITAPI
-
-#undef CPPUNIT_API
-
-#ifdef WIN32
-
-// define CPPUNIT_DLL_BUILD when building CppUnit dll.
-#ifdef CPPUNIT_BUILD_DLL
-#define CPPUNIT_API __declspec(dllexport)
-#endif
-
-// define CPPUNIT_DLL when linking to CppUnit dll.
-#ifdef CPPUNIT_DLL
-#define CPPUNIT_API __declspec(dllimport)
-#endif
-
-#ifdef CPPUNIT_API
-#undef CPPUNIT_NEED_DLL_DECL
-#define CPPUNIT_NEED_DLL_DECL 1
-#endif
-
-#endif
-
-
-#ifndef CPPUNIT_API
-#define CPPUNIT_API
-#undef CPPUNIT_NEED_DLL_DECL
-#define CPPUNIT_NEED_DLL_DECL 0
-#endif
-
-
-#endif // CPPUNIT_CONFIG_CPPUNITAPI
diff --git a/3rdParty/CppUnit/cppunit/config/SelectDllLoader.h b/3rdParty/CppUnit/cppunit/config/SelectDllLoader.h
deleted file mode 100644
index dc1c011..0000000
--- a/3rdParty/CppUnit/cppunit/config/SelectDllLoader.h
+++ /dev/null
@@ -1,76 +0,0 @@
-#ifndef CPPUNIT_CONFIG_SELECTDLLLOADER_H
-#define CPPUNIT_CONFIG_SELECTDLLLOADER_H
-
-/*! \file
- * Selects DynamicLibraryManager implementation.
- *
- * Don't include this file directly. Include Portability.h instead.
- */
-
-/*!
- * \def CPPUNIT_NO_TESTPLUGIN
- * \brief If defined, then plug-in related classes and functions will not be compiled.
- *
- * \internal
- * CPPUNIT_HAVE_WIN32_DLL_LOADER
- * If defined, Win32 implementation of DynamicLibraryManager will be used.
- *
- * CPPUNIT_HAVE_BEOS_DLL_LOADER
- * If defined, BeOs implementation of DynamicLibraryManager will be used.
- *
- * CPPUNIT_HAVE_UNIX_DLL_LOADER
- * If defined, Unix implementation (dlfcn.h) of DynamicLibraryManager will be used.
- */
-
-/*!
- * \def CPPUNIT_PLUGIN_EXPORT
- * \ingroup WritingTestPlugIn
- * \brief A macro to export a function from a dynamic library
- *
- * This macro export the C function following it from a dynamic library.
- * Exporting the function makes it accessible to the DynamicLibraryManager.
- *
- * Example of usage:
- * \code
- * #include <cppunit/include/plugin/TestPlugIn.h>
- *
- * CPPUNIT_PLUGIN_EXPORT CppUnitTestPlugIn *CPPUNIT_PLUGIN_EXPORTED_NAME(void)
- * {
- * ...
- * return &myPlugInInterface;
- * }
- * \endcode
- */
-
-#if !defined(CPPUNIT_NO_TESTPLUGIN)
-
-// Is WIN32 platform ?
-#if defined(WIN32)
-#define CPPUNIT_HAVE_WIN32_DLL_LOADER 1
-#undef CPPUNIT_PLUGIN_EXPORT
-#define CPPUNIT_PLUGIN_EXPORT extern "C" __declspec(dllexport)
-
-// Is BeOS platform ?
-#elif defined(__BEOS__)
-#define CPPUNIT_HAVE_BEOS_DLL_LOADER 1
-
-// Is Unix platform and have shl_load() (hp-ux)
-#elif defined(CPPUNIT_HAVE_SHL_LOAD)
-#define CPPUNIT_HAVE_UNIX_SHL_LOADER 1
-
-// Is Unix platform and have include <dlfcn.h>
-#elif defined(CPPUNIT_HAVE_LIBDL)
-#define CPPUNIT_HAVE_UNIX_DLL_LOADER 1
-
-// Otherwise, disable support for DllLoader
-#else
-#define CPPUNIT_NO_TESTPLUGIN 1
-#endif
-
-#if !defined(CPPUNIT_PLUGIN_EXPORT)
-#define CPPUNIT_PLUGIN_EXPORT extern "C"
-#endif // !defined(CPPUNIT_PLUGIN_EXPORT)
-
-#endif // !defined(CPPUNIT_NO_TESTPLUGIN)
-
-#endif // CPPUNIT_CONFIG_SELECTDLLLOADER_H
diff --git a/3rdParty/CppUnit/cppunit/config/SourcePrefix.h b/3rdParty/CppUnit/cppunit/config/SourcePrefix.h
deleted file mode 100644
index 2334601..0000000
--- a/3rdParty/CppUnit/cppunit/config/SourcePrefix.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef CPPUNIT_CONFIG_H_INCLUDED
-#define CPPUNIT_CONFIG_H_INCLUDED
-
-#include <cppunit/Portability.h>
-
-#ifdef _MSC_VER
-#pragma warning(disable: 4018 4284 4146)
-#if _MSC_VER >= 1400
-#pragma warning(disable: 4996) // sprintf is deprecated
-#endif
-#endif
-
-
-#endif // CPPUNIT_CONFIG_H_INCLUDED
diff --git a/3rdParty/CppUnit/cppunit/config/config-msvc6.h b/3rdParty/CppUnit/cppunit/config/config-msvc6.h
deleted file mode 100644
index d688171..0000000
--- a/3rdParty/CppUnit/cppunit/config/config-msvc6.h
+++ /dev/null
@@ -1,83 +0,0 @@
-#ifndef _INCLUDE_CPPUNIT_CONFIG_MSVC6_H
-#define _INCLUDE_CPPUNIT_CONFIG_MSVC6_H 1
-
-#if _MSC_VER > 1000 // VC++
-#pragma warning( disable : 4786 ) // disable warning debug symbol > 255...
-#endif // _MSC_VER > 1000
-
-#define HAVE_CMATH 1
-
-/* include/cppunit/config-msvc6.h. Manually adapted from
- include/cppunit/config-auto.h */
-
-/* define to 1 if the compiler implements namespaces */
-#ifndef CPPUNIT_HAVE_NAMESPACES
-#define CPPUNIT_HAVE_NAMESPACES 1
-#endif
-
-/* define if library uses std::string::compare(string,pos,n) */
-#ifdef CPPUNIT_FUNC_STRING_COMPARE_STRING_FIRST
-#undef CPPUNIT_FUNC_STRING_COMPARE_STRING_FIRST
-#endif
-
-/* Define if you have the <dlfcn.h> header file. */
-#ifdef CPPUNIT_HAVE_DLFCN_H
-#undef CPPUNIT_HAVE_DLFCN_H
-#endif
-
-/* define to 1 if the compiler implements namespaces */
-#ifndef CPPUNIT_HAVE_NAMESPACES
-#define CPPUNIT_HAVE_NAMESPACES 1
-#endif
-
-/* define if the compiler supports Run-Time Type Identification */
-#ifndef CPPUNIT_HAVE_RTTI
-# ifdef _CPPRTTI // Defined by the compiler option /GR
-# define CPPUNIT_HAVE_RTTI 1
-# else
-# define CPPUNIT_HAVE_RTTI 0
-# endif
-#endif
-
-/* Define to 1 to use type_info::name() for class names */
-#ifndef CPPUNIT_USE_TYPEINFO_NAME
-#define CPPUNIT_USE_TYPEINFO_NAME CPPUNIT_HAVE_RTTI
-#endif
-
-#define CPPUNIT_HAVE_SSTREAM 1
-
-/* Name of package */
-#ifndef CPPUNIT_PACKAGE
-#define CPPUNIT_PACKAGE "cppunit"
-#endif
-
-
-// Compiler error location format for CompilerOutputter
-// See class CompilerOutputter for format.
-#undef CPPUNIT_COMPILER_LOCATION_FORMAT
-#if _MSC_VER >= 1300 // VS 7.0
-# define CPPUNIT_COMPILER_LOCATION_FORMAT "%p(%l) : error : "
-#else
-# define CPPUNIT_COMPILER_LOCATION_FORMAT "%p(%l):"
-#endif
-
-// Define to 1 if the compiler support C++ style cast.
-#define CPPUNIT_HAVE_CPP_CAST 1
-
-/* define to 1 if the compiler has _finite() */
-#ifndef CPPUNIT_HAVE__FINITE
-#define CPPUNIT_HAVE__FINITE 1
-#endif
-
-
-// Uncomment to turn on STL wrapping => use this to test compilation.
-// This will make CppUnit subclass std::vector & co to provide default
-// parameter.
-/*#define CPPUNIT_STD_NEED_ALLOCATOR 1
-#define CPPUNIT_STD_ALLOCATOR std::allocator<T>
-//#define CPPUNIT_NO_NAMESPACE 1
-*/
-
-
-/* _INCLUDE_CPPUNIT_CONFIG_MSVC6_H */
-#endif
diff --git a/3rdParty/CppUnit/cppunit/extensions/AutoRegisterSuite.h b/3rdParty/CppUnit/cppunit/extensions/AutoRegisterSuite.h
deleted file mode 100644
index e04adb5..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/AutoRegisterSuite.h
+++ /dev/null
@@ -1,83 +0,0 @@
-#ifndef CPPUNIT_EXTENSIONS_AUTOREGISTERSUITE_H
-#define CPPUNIT_EXTENSIONS_AUTOREGISTERSUITE_H
-
-#include <cppunit/extensions/TestSuiteFactory.h>
-#include <cppunit/extensions/TestFactoryRegistry.h>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief (Implementation) Automatically register the test suite of the specified type.
- *
- * You should not use this class directly. Instead, use the following macros:
- * - CPPUNIT_TEST_SUITE_REGISTRATION()
- * - CPPUNIT_TEST_SUITE_NAMED_REGISTRATION()
- *
- * This object will register the test returned by TestCaseType::suite()
- * when constructed to the test registry.
- *
- * This object is intented to be used as a static variable.
- *
- *
- * \param TestCaseType Type of the test case which suite is registered.
- * \see CPPUNIT_TEST_SUITE_REGISTRATION, CPPUNIT_TEST_SUITE_NAMED_REGISTRATION
- * \see CppUnit::TestFactoryRegistry.
- */
-template<class TestCaseType>
-class AutoRegisterSuite
-{
-public:
- /** Auto-register the suite factory in the global registry.
- */
- AutoRegisterSuite()
- : m_registry( &TestFactoryRegistry::getRegistry() )
- {
- m_registry->registerFactory( &m_factory );
- }
-
- /** Auto-register the suite factory in the specified registry.
- * \param name Name of the registry.
- */
- AutoRegisterSuite( const std::string &name )
- : m_registry( &TestFactoryRegistry::getRegistry( name ) )
- {
- m_registry->registerFactory( &m_factory );
- }
-
- ~AutoRegisterSuite()
- {
- if ( TestFactoryRegistry::isValid() )
- m_registry->unregisterFactory( &m_factory );
- }
-
-private:
- TestFactoryRegistry *m_registry;
- TestSuiteFactory<TestCaseType> m_factory;
-};
-
-
-/*! \brief (Implementation) Automatically adds a registry into another registry.
- *
- * Don't use this class. Use the macros CPPUNIT_REGISTRY_ADD() and
- * CPPUNIT_REGISTRY_ADD_TO_DEFAULT() instead.
- */
-class AutoRegisterRegistry
-{
-public:
- AutoRegisterRegistry( const std::string &which,
- const std::string &to )
- {
- TestFactoryRegistry::getRegistry( to ).addRegistry( which );
- }
-
- AutoRegisterRegistry( const std::string &which )
- {
- TestFactoryRegistry::getRegistry().addRegistry( which );
- }
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_EXTENSIONS_AUTOREGISTERSUITE_H
diff --git a/3rdParty/CppUnit/cppunit/extensions/ExceptionTestCaseDecorator.h b/3rdParty/CppUnit/cppunit/extensions/ExceptionTestCaseDecorator.h
deleted file mode 100644
index 9c816ad..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/ExceptionTestCaseDecorator.h
+++ /dev/null
@@ -1,104 +0,0 @@
-#ifndef CPPUNIT_EXTENSIONS_EXCEPTIONTESTCASEDECORATOR_H
-#define CPPUNIT_EXTENSIONS_EXCEPTIONTESTCASEDECORATOR_H
-
-#include <cppunit/Portability.h>
-#include <cppunit/Exception.h>
-#include <cppunit/extensions/TestCaseDecorator.h>
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief Expected exception test case decorator.
- *
- * A decorator used to assert that a specific test case should throw an
- * exception of a given type.
- *
- * You should use this class only if you need to check the exception object
- * state (that a specific cause is set for example). If you don't need to
- * do that, you might consider using CPPUNIT_TEST_EXCEPTION() instead.
- *
- * Intended use is to subclass and override checkException(). Example:
- *
- * \code
- *
- * class NetworkErrorTestCaseDecorator :
- * public ExceptionTestCaseDecorator<NetworkError>
- * {
- * public:
- * NetworkErrorTestCaseDecorator( NetworkError::Cause expectedCause )
- * : m_expectedCause( expectedCause )
- * {
- * }
- * private:
- * void checkException( ExpectedExceptionType &e )
- * {
- * CPPUNIT_ASSERT_EQUAL( m_expectedCause, e.getCause() );
- * }
- *
- * NetworkError::Cause m_expectedCause;
- * };
- * \endcode
- *
- */
-template<class ExpectedException>
-class ExceptionTestCaseDecorator : public TestCaseDecorator
-{
-public:
- typedef ExpectedException ExpectedExceptionType;
-
- /*! \brief Decorates the specified test.
- * \param test TestCase to decorate. Assumes ownership of the test.
- */
- ExceptionTestCaseDecorator( TestCase *test )
- : TestCaseDecorator( test )
- {
- }
-
- /*! \brief Checks that the expected exception is thrown by the decorated test.
- * is thrown.
- *
- * Calls the decorated test runTest() and checks that an exception of
- * type ExpectedException is thrown. Call checkException() passing the
- * exception that was caught so that some assertions can be made if
- * needed.
- */
- void runTest()
- {
- try
- {
- TestCaseDecorator::runTest();
- }
- catch ( ExpectedExceptionType &e )
- {
- checkException( e );
- return;
- }
-
- // Moved outside the try{} statement to handle the case where the
- // expected exception type is Exception (expecting assertion failure).
-#if CPPUNIT_USE_TYPEINFO_NAME
- throw Exception( Message(
- "expected exception not thrown",
- "Expected exception type: " +
- TypeInfoHelper::getClassName(
- typeid( ExpectedExceptionType ) ) ) );
-#else
- throw Exception( Message("expected exception not thrown") );
-#endif
- }
-
-private:
- /*! \brief Called when the exception is caught.
- *
- * Should be overriden to check the exception.
- */
- virtual void checkException( ExpectedExceptionType &e )
- {
- }
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_EXTENSIONS_EXCEPTIONTESTCASEDECORATOR_H
-
diff --git a/3rdParty/CppUnit/cppunit/extensions/HelperMacros.h b/3rdParty/CppUnit/cppunit/extensions/HelperMacros.h
deleted file mode 100644
index 12431e4..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/HelperMacros.h
+++ /dev/null
@@ -1,541 +0,0 @@
-// //////////////////////////////////////////////////////////////////////////
-// Header file HelperMacros.h
-// (c)Copyright 2000, Baptiste Lepilleur.
-// Created: 2001/04/15
-// //////////////////////////////////////////////////////////////////////////
-#ifndef CPPUNIT_EXTENSIONS_HELPERMACROS_H
-#define CPPUNIT_EXTENSIONS_HELPERMACROS_H
-
-#include <cppunit/TestCaller.h>
-#include <cppunit/TestSuite.h>
-#include <cppunit/extensions/AutoRegisterSuite.h>
-#include <cppunit/extensions/ExceptionTestCaseDecorator.h>
-#include <cppunit/extensions/TestFixtureFactory.h>
-#include <cppunit/extensions/TestNamer.h>
-#include <cppunit/extensions/TestSuiteBuilderContext.h>
-#include <memory>
-
-
-/*! \addtogroup WritingTestFixture Writing test fixture
- */
-/** @{
- */
-
-
-/** \file
- * Macros intended to ease the definition of test suites.
- *
- * The macros
- * CPPUNIT_TEST_SUITE(), CPPUNIT_TEST(), and CPPUNIT_TEST_SUITE_END()
- * are designed to facilitate easy creation of a test suite.
- * For example,
- *
- * \code
- * #include <cppunit/extensions/HelperMacros.h>
- * class MyTest : public CppUnit::TestFixture {
- * CPPUNIT_TEST_SUITE( MyTest );
- * CPPUNIT_TEST( testEquality );
- * CPPUNIT_TEST( testSetName );
- * CPPUNIT_TEST_SUITE_END();
- * public:
- * void testEquality();
- * void testSetName();
- * };
- * \endcode
- *
- * The effect of these macros is to define two methods in the
- * class MyTest. The first method is an auxiliary function
- * named registerTests that you will not need to call directly.
- * The second function
- * \code static CppUnit::TestSuite *suite()\endcode
- * returns a pointer to the suite of tests defined by the CPPUNIT_TEST()
- * macros.
- *
- * Rather than invoking suite() directly,
- * the macro CPPUNIT_TEST_SUITE_REGISTRATION() is
- * used to create a static variable that automatically
- * registers its test suite in a global registry.
- * The registry yields a Test instance containing all the
- * registered suites.
- * \code
- * CPPUNIT_TEST_SUITE_REGISTRATION( MyTest );
- * CppUnit::Test* tp =
- * CppUnit::TestFactoryRegistry::getRegistry().makeTest();
- * \endcode
- *
- * The test suite macros can even be used with templated test classes.
- * For example:
- *
- * \code
- * template<typename CharType>
- * class StringTest : public CppUnit::TestFixture {
- * CPPUNIT_TEST_SUITE( StringTest );
- * CPPUNIT_TEST( testAppend );
- * CPPUNIT_TEST_SUITE_END();
- * public:
- * ...
- * };
- * \endcode
- *
- * You need to add in an implementation file:
- *
- * \code
- * CPPUNIT_TEST_SUITE_REGISTRATION( StringTest<char> );
- * CPPUNIT_TEST_SUITE_REGISTRATION( StringTest<wchar_t> );
- * \endcode
- */
-
-
-/*! \brief Begin test suite
- *
- * This macro starts the declaration of a new test suite.
- * Use CPPUNIT_TEST_SUB_SUITE() instead, if you wish to include the
- * test suite of the parent class.
- *
- * \param ATestFixtureType Type of the test case class. This type \b MUST
- * be derived from TestFixture.
- * \see CPPUNIT_TEST_SUB_SUITE, CPPUNIT_TEST, CPPUNIT_TEST_SUITE_END,
- * \see CPPUNIT_TEST_SUITE_REGISTRATION, CPPUNIT_TEST_EXCEPTION, CPPUNIT_TEST_FAIL.
- */
-#define CPPUNIT_TEST_SUITE( ATestFixtureType ) \
- public: \
- typedef ATestFixtureType TestFixtureType; \
- \
- private: \
- static const CPPUNIT_NS::TestNamer &getTestNamer__() \
- { \
- static CPPUNIT_TESTNAMER_DECL( testNamer, ATestFixtureType ); \
- return testNamer; \
- } \
- \
- public: \
- typedef CPPUNIT_NS::TestSuiteBuilderContext<TestFixtureType> \
- TestSuiteBuilderContextType; \
- \
- static void \
- addTestsToSuite( CPPUNIT_NS::TestSuiteBuilderContextBase &baseContext ) \
- { \
- TestSuiteBuilderContextType context( baseContext )
-
-
-/*! \brief Begin test suite (includes parent suite)
- *
- * This macro may only be used in a class whose parent class
- * defines a test suite using CPPUNIT_TEST_SUITE() or CPPUNIT_TEST_SUB_SUITE().
- *
- * This macro begins the declaration of a test suite, in the same
- * manner as CPPUNIT_TEST_SUITE(). In addition, the test suite of the
- * parent is automatically inserted in the test suite being
- * defined.
- *
- * Here is an example:
- *
- * \code
- * #include <cppunit/extensions/HelperMacros.h>
- * class MySubTest : public MyTest {
- * CPPUNIT_TEST_SUB_SUITE( MySubTest, MyTest );
- * CPPUNIT_TEST( testAdd );
- * CPPUNIT_TEST( testSub );
- * CPPUNIT_TEST_SUITE_END();
- * public:
- * void testAdd();
- * void testSub();
- * };
- * \endcode
- *
- * \param ATestFixtureType Type of the test case class. This type \b MUST
- * be derived from TestFixture.
- * \param ASuperClass Type of the parent class.
- * \see CPPUNIT_TEST_SUITE.
- */
-#define CPPUNIT_TEST_SUB_SUITE( ATestFixtureType, ASuperClass ) \
- public: \
- typedef ASuperClass ParentTestFixtureType; \
- private: \
- CPPUNIT_TEST_SUITE( ATestFixtureType ); \
- ParentTestFixtureType::addTestsToSuite( baseContext )
-
-
-/*! \brief End declaration of the test suite.
- *
- * After this macro, member access is set to "private".
- *
- * \see CPPUNIT_TEST_SUITE.
- * \see CPPUNIT_TEST_SUITE_REGISTRATION.
- */
-#define CPPUNIT_TEST_SUITE_END() \
- } \
- \
- static CPPUNIT_NS::TestSuite *suite() \
- { \
- const CPPUNIT_NS::TestNamer &namer = getTestNamer__(); \
- std::auto_ptr<CPPUNIT_NS::TestSuite> suite( \
- new CPPUNIT_NS::TestSuite( namer.getFixtureName() )); \
- CPPUNIT_NS::ConcretTestFixtureFactory<TestFixtureType> factory; \
- CPPUNIT_NS::TestSuiteBuilderContextBase context( *suite.get(), \
- namer, \
- factory ); \
- TestFixtureType::addTestsToSuite( context ); \
- return suite.release(); \
- } \
- private: /* dummy typedef so that the macro can still end with ';'*/ \
- typedef int CppUnitDummyTypedefForSemiColonEnding__
-
-/*! \brief End declaration of an abstract test suite.
- *
- * Use this macro to indicate that the %TestFixture is abstract. No
- * static suite() method will be declared.
- *
- * After this macro, member access is set to "private".
- *
- * Here is an example of usage:
- *
- * The abstract test fixture:
- * \code
- * #include <cppunit/extensions/HelperMacros.h>
- * class AbstractDocument;
- * class AbstractDocumentTest : public CppUnit::TestFixture {
- * CPPUNIT_TEST_SUITE( AbstractDocumentTest );
- * CPPUNIT_TEST( testInsertText );
- * CPPUNIT_TEST_SUITE_END_ABSTRACT();
- * public:
- * void testInsertText();
- *
- * void setUp()
- * {
- * m_document = makeDocument();
- * }
- *
- * void tearDown()
- * {
- * delete m_document;
- * }
- * protected:
- * virtual AbstractDocument *makeDocument() =0;
- *
- * AbstractDocument *m_document;
- * };\endcode
- *
- * The concret test fixture:
- * \code
- * class RichTextDocumentTest : public AbstractDocumentTest {
- * CPPUNIT_TEST_SUB_SUITE( RichTextDocumentTest, AbstractDocumentTest );
- * CPPUNIT_TEST( testInsertFormatedText );
- * CPPUNIT_TEST_SUITE_END();
- * public:
- * void testInsertFormatedText();
- * protected:
- * AbstractDocument *makeDocument()
- * {
- * return new RichTextDocument();
- * }
- * };\endcode
- *
- * \see CPPUNIT_TEST_SUB_SUITE.
- * \see CPPUNIT_TEST_SUITE_REGISTRATION.
- */
-#define CPPUNIT_TEST_SUITE_END_ABSTRACT() \
- } \
- private: /* dummy typedef so that the macro can still end with ';'*/ \
- typedef int CppUnitDummyTypedefForSemiColonEnding__
-
-
-/*! \brief Add a test to the suite (for custom test macro).
- *
- * The specified test will be added to the test suite being declared. This macro
- * is intended for \e advanced usage, to extend %CppUnit by creating new macro such
- * as CPPUNIT_TEST_EXCEPTION()...
- *
- * Between macro CPPUNIT_TEST_SUITE() and CPPUNIT_TEST_SUITE_END(), you can assume
- * that the following variables can be used:
- * \code
- * typedef TestSuiteBuilder<TestFixtureType> TestSuiteBuilderType;
- * TestSuiteBuilderType &context;
- * \endcode
- *
- * \c context can be used to name test case, create new test fixture instance,
- * or add test case to the test fixture suite.
- *
- * Below is an example that show how to use this macro to create new macro to add
- * test to the fixture suite. The macro below show how you would add a new type
- * of test case which fails if the execution last more than a given time limit.
- * It relies on an imaginary TimeOutTestCaller class which has an interface similar
- * to TestCaller.
- *
- * \code
- * #define CPPUNITEX_TEST_TIMELIMIT( testMethod, timeLimit ) \
- * CPPUNIT_TEST_SUITE_ADD_TEST( (new TimeOutTestCaller<TestFixtureType>( \
- * namer.getTestNameFor( #testMethod ), \
- * &TestFixtureType::testMethod, \
- * factory.makeFixture(), \
- * timeLimit ) ) )
- *
- * class PerformanceTest : CppUnit::TestFixture
- * {
- * public:
- * CPPUNIT_TEST_SUITE( PerformanceTest );
- * CPPUNITEX_TEST_TIMELIMIT( testSortReverseOrder, 5.0 );
- * CPPUNIT_TEST_SUITE_END();
- *
- * void testSortReverseOrder();
- * };
- * \endcode
- *
- * \param test Test to add to the suite. Must be a subclass of Test. The test name
- * should have been obtained using TestNamer::getTestNameFor().
- */
-#define CPPUNIT_TEST_SUITE_ADD_TEST( test ) \
- context.addTest( test )
-
-/*! \brief Add a method to the suite.
- * \param testMethod Name of the method of the test case to add to the
- * suite. The signature of the method must be of
- * type: void testMethod();
- * \see CPPUNIT_TEST_SUITE.
- */
-#define CPPUNIT_TEST( testMethod ) \
- CPPUNIT_TEST_SUITE_ADD_TEST( \
- ( new CPPUNIT_NS::TestCaller<TestFixtureType>( \
- context.getTestNameFor( #testMethod), \
- &TestFixtureType::testMethod, \
- context.makeFixture() ) ) )
-
-/*! \brief Add a test which fail if the specified exception is not caught.
- *
- * Example:
- * \code
- * #include <cppunit/extensions/HelperMacros.h>
- * #include <vector>
- * class MyTest : public CppUnit::TestFixture {
- * CPPUNIT_TEST_SUITE( MyTest );
- * CPPUNIT_TEST_EXCEPTION( testVectorAtThrow, std::invalid_argument );
- * CPPUNIT_TEST_SUITE_END();
- * public:
- * void testVectorAtThrow()
- * {
- * std::vector<int> v;
- * v.at( 1 ); // must throw exception std::invalid_argument
- * }
- * };
- * \endcode
- *
- * \param testMethod Name of the method of the test case to add to the suite.
- * \param ExceptionType Type of the exception that must be thrown by the test
- * method.
- * \deprecated Use the assertion macro CPPUNIT_ASSERT_THROW instead.
- */
-#define CPPUNIT_TEST_EXCEPTION( testMethod, ExceptionType ) \
- CPPUNIT_TEST_SUITE_ADD_TEST( \
- (new CPPUNIT_NS::ExceptionTestCaseDecorator< ExceptionType >( \
- new CPPUNIT_NS::TestCaller< TestFixtureType >( \
- context.getTestNameFor( #testMethod ), \
- &TestFixtureType::testMethod, \
- context.makeFixture() ) ) ) )
-
-/*! \brief Adds a test case which is excepted to fail.
- *
- * The added test case expect an assertion to fail. You usually used that type
- * of test case when testing custom assertion macros.
- *
- * \code
- * CPPUNIT_TEST_FAIL( testAssertFalseFail );
- *
- * void testAssertFalseFail()
- * {
- * CPPUNIT_ASSERT( false );
- * }
- * \endcode
- * \see CreatingNewAssertions.
- * \deprecated Use the assertion macro CPPUNIT_ASSERT_ASSERTION_FAIL instead.
- */
-#define CPPUNIT_TEST_FAIL( testMethod ) \
- CPPUNIT_TEST_EXCEPTION( testMethod, CPPUNIT_NS::Exception )
-
-/*! \brief Adds some custom test cases.
- *
- * Use this to add one or more test cases to the fixture suite. The specified
- * method is called with a context parameter that can be used to name,
- * instantiate fixture, and add instantiated test case to the fixture suite.
- * The specified method must have the following signature:
- * \code
- * static void aMethodName( TestSuiteBuilderContextType &context );
- * \endcode
- *
- * \c TestSuiteBuilderContextType is typedef to
- * TestSuiteBuilderContext<TestFixtureType> declared by CPPUNIT_TEST_SUITE().
- *
- * Here is an example that add two custom tests:
- *
- * \code
- * #include <cppunit/extensions/HelperMacros.h>
- *
- * class MyTest : public CppUnit::TestFixture {
- * CPPUNIT_TEST_SUITE( MyTest );
- * CPPUNIT_TEST_SUITE_ADD_CUSTOM_TESTS( addTimeOutTests );
- * CPPUNIT_TEST_SUITE_END();
- * public:
- * static void addTimeOutTests( TestSuiteBuilderContextType &context )
- * {
- * context.addTest( new TimeOutTestCaller( context.getTestNameFor( "test1" ) ),
- * &MyTest::test1,
- * context.makeFixture(),
- * 5.0 );
- * context.addTest( new TimeOutTestCaller( context.getTestNameFor( "test2" ) ),
- * &MyTest::test2,
- * context.makeFixture(),
- * 5.0 );
- * }
- *
- * void test1()
- * {
- * // Do some test that may never end...
- * }
- *
- * void test2()
- * {
- * // Do some test that may never end...
- * }
- * };
- * \endcode
- * @param testAdderMethod Name of the method called to add the test cases.
- */
-#define CPPUNIT_TEST_SUITE_ADD_CUSTOM_TESTS( testAdderMethod ) \
- testAdderMethod( context )
-
-/*! \brief Adds a property to the test suite builder context.
- * \param APropertyKey Key of the property to add.
- * \param APropertyValue Value for the added property.
- * Example:
- * \code
- * CPPUNIT_TEST_SUITE_PROPERTY("XmlFileName", "paraTest.xml"); \endcode
- */
-#define CPPUNIT_TEST_SUITE_PROPERTY( APropertyKey, APropertyValue ) \
- context.addProperty( std::string(APropertyKey), \
- std::string(APropertyValue) )
-
-/** @}
- */
-
-
-/*! Adds the specified fixture suite to the unnamed registry.
- * \ingroup CreatingTestSuite
- *
- * This macro declares a static variable whose construction
- * causes a test suite factory to be inserted in a global registry
- * of such factories. The registry is available by calling
- * the static function CppUnit::TestFactoryRegistry::getRegistry().
- *
- * \param ATestFixtureType Type of the test case class.
- * \warning This macro should be used only once per line of code (the line
- * number is used to name a hidden static variable).
- * \see CPPUNIT_TEST_SUITE_NAMED_REGISTRATION
- * \see CPPUNIT_REGISTRY_ADD_TO_DEFAULT
- * \see CPPUNIT_REGISTRY_ADD
- * \see CPPUNIT_TEST_SUITE, CppUnit::AutoRegisterSuite,
- * CppUnit::TestFactoryRegistry.
- */
-#define CPPUNIT_TEST_SUITE_REGISTRATION( ATestFixtureType ) \
- static CPPUNIT_NS::AutoRegisterSuite< ATestFixtureType > \
- CPPUNIT_MAKE_UNIQUE_NAME(autoRegisterRegistry__ )
-
-
-/** Adds the specified fixture suite to the specified registry suite.
- * \ingroup CreatingTestSuite
- *
- * This macro declares a static variable whose construction
- * causes a test suite factory to be inserted in the global registry
- * suite of the specified name. The registry is available by calling
- * the static function CppUnit::TestFactoryRegistry::getRegistry().
- *
- * For the suite name, use a string returned by a static function rather
- * than a hardcoded string. That way, you can know what are the name of
- * named registry and you don't risk mistyping the registry name.
- *
- * \code
- * // MySuites.h
- * namespace MySuites {
- * std::string math() {
- * return "Math";
- * }
- * }
- *
- * // ComplexNumberTest.cpp
- * #include "MySuites.h"
- *
- * CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( ComplexNumberTest, MySuites::math() );
- * \endcode
- *
- * \param ATestFixtureType Type of the test case class.
- * \param suiteName Name of the global registry suite the test suite is
- * registered into.
- * \warning This macro should be used only once per line of code (the line
- * number is used to name a hidden static variable).
- * \see CPPUNIT_TEST_SUITE_REGISTRATION
- * \see CPPUNIT_REGISTRY_ADD_TO_DEFAULT
- * \see CPPUNIT_REGISTRY_ADD
- * \see CPPUNIT_TEST_SUITE, CppUnit::AutoRegisterSuite,
- * CppUnit::TestFactoryRegistry..
- */
-#define CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( ATestFixtureType, suiteName ) \
- static CPPUNIT_NS::AutoRegisterSuite< ATestFixtureType > \
- CPPUNIT_MAKE_UNIQUE_NAME(autoRegisterRegistry__ )(suiteName)
-
-/*! Adds that the specified registry suite to another registry suite.
- * \ingroup CreatingTestSuite
- *
- * Use this macros to automatically create test registry suite hierarchy. For example,
- * if you want to create the following hierarchy:
- * - Math
- * - IntegerMath
- * - FloatMath
- * - FastFloat
- * - StandardFloat
- *
- * You can do this automatically with:
- * \code
- * CPPUNIT_REGISTRY_ADD( "FastFloat", "FloatMath" );
- * CPPUNIT_REGISTRY_ADD( "IntegerMath", "Math" );
- * CPPUNIT_REGISTRY_ADD( "FloatMath", "Math" );
- * CPPUNIT_REGISTRY_ADD( "StandardFloat", "FloatMath" );
- * \endcode
- *
- * There is no specific order of declaration. Think of it as declaring links.
- *
- * You register the test in each suite using CPPUNIT_TEST_SUITE_NAMED_REGISTRATION.
- *
- * \param which Name of the registry suite to add to the registry suite named \a to.
- * \param to Name of the registry suite \a which is added to.
- * \see CPPUNIT_REGISTRY_ADD_TO_DEFAULT, CPPUNIT_TEST_SUITE_NAMED_REGISTRATION.
- */
-#define CPPUNIT_REGISTRY_ADD( which, to ) \
- static CPPUNIT_NS::AutoRegisterRegistry \
- CPPUNIT_MAKE_UNIQUE_NAME( autoRegisterRegistry__ )( which, to )
-
-/*! Adds that the specified registry suite to the default registry suite.
- * \ingroup CreatingTestSuite
- *
- * This macro is just like CPPUNIT_REGISTRY_ADD except the specified registry
- * suite is added to the default suite (root suite).
- *
- * \param which Name of the registry suite to add to the default registry suite.
- * \see CPPUNIT_REGISTRY_ADD.
- */
-#define CPPUNIT_REGISTRY_ADD_TO_DEFAULT( which ) \
- static CPPUNIT_NS::AutoRegisterRegistry \
- CPPUNIT_MAKE_UNIQUE_NAME( autoRegisterRegistry__ )( which )
-
-// Backwards compatibility
-// (Not tested!)
-
-#if CPPUNIT_ENABLE_CU_TEST_MACROS
-
-#define CU_TEST_SUITE(tc) CPPUNIT_TEST_SUITE(tc)
-#define CU_TEST_SUB_SUITE(tc,sc) CPPUNIT_TEST_SUB_SUITE(tc,sc)
-#define CU_TEST(tm) CPPUNIT_TEST(tm)
-#define CU_TEST_SUITE_END() CPPUNIT_TEST_SUITE_END()
-#define CU_TEST_SUITE_REGISTRATION(tc) CPPUNIT_TEST_SUITE_REGISTRATION(tc)
-
-#endif
-
-
-#endif // CPPUNIT_EXTENSIONS_HELPERMACROS_H
diff --git a/3rdParty/CppUnit/cppunit/extensions/TestCaseDecorator.h b/3rdParty/CppUnit/cppunit/extensions/TestCaseDecorator.h
deleted file mode 100644
index 3a15ba9..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/TestCaseDecorator.h
+++ /dev/null
@@ -1,40 +0,0 @@
-#ifndef CPPUNIT_EXTENSIONS_TESTCASEDECORATOR_H
-#define CPPUNIT_EXTENSIONS_TESTCASEDECORATOR_H
-
-#include <cppunit/Portability.h>
-#include <cppunit/TestCase.h>
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief Decorator for Test cases.
- *
- * TestCaseDecorator provides an alternate means to extend functionality
- * of a test class without subclassing the test. Instead, one can
- * subclass the decorater and use it to wrap the test class.
- *
- * Does not assume ownership of the test it decorates
- */
-class CPPUNIT_API TestCaseDecorator : public TestCase
-{
-public:
- TestCaseDecorator( TestCase *test );
- ~TestCaseDecorator();
-
- std::string getName() const;
-
- void setUp();
-
- void tearDown();
-
- void runTest();
-
-protected:
- TestCase *m_test;
-};
-
-
-CPPUNIT_NS_END
-
-#endif
-
diff --git a/3rdParty/CppUnit/cppunit/extensions/TestFactory.h b/3rdParty/CppUnit/cppunit/extensions/TestFactory.h
deleted file mode 100644
index 214d353..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/TestFactory.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef CPPUNIT_EXTENSIONS_TESTFACTORY_H
-#define CPPUNIT_EXTENSIONS_TESTFACTORY_H
-
-#include <cppunit/Portability.h>
-
-CPPUNIT_NS_BEGIN
-
-
-class Test;
-
-/*! \brief Abstract Test factory.
- */
-class CPPUNIT_API TestFactory
-{
-public:
- virtual ~TestFactory() {}
-
- /*! Makes a new test.
- * \return A new Test.
- */
- virtual Test* makeTest() = 0;
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_EXTENSIONS_TESTFACTORY_H
diff --git a/3rdParty/CppUnit/cppunit/extensions/TestFactoryRegistry.h b/3rdParty/CppUnit/cppunit/extensions/TestFactoryRegistry.h
deleted file mode 100644
index fc8723e..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/TestFactoryRegistry.h
+++ /dev/null
@@ -1,182 +0,0 @@
-#ifndef CPPUNIT_EXTENSIONS_TESTFACTORYREGISTRY_H
-#define CPPUNIT_EXTENSIONS_TESTFACTORYREGISTRY_H
-
-#include <cppunit/Portability.h>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-#include <cppunit/portability/CppUnitSet.h>
-#include <cppunit/extensions/TestFactory.h>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-
-class TestSuite;
-
-#if CPPUNIT_NEED_DLL_DECL
-// template class CPPUNIT_API std::set<TestFactory *>;
-#endif
-
-
-/*! \brief Registry for TestFactory.
- * \ingroup CreatingTestSuite
- *
- * Notes that the registry \b DON'T assumes lifetime control for any registered tests
- * anymore.
- *
- * The <em>default</em> registry is the registry returned by getRegistry() with the
- * default name parameter value.
- *
- * To register tests, use the macros:
- * - CPPUNIT_TEST_SUITE_REGISTRATION(): to add tests in the default registry.
- * - CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(): to add tests in a named registry.
- *
- * Example 1: retreiving a suite that contains all the test registered with
- * CPPUNIT_TEST_SUITE_REGISTRATION().
- * \code
- * CppUnit::TestFactoryRegistry &registry = CppUnit::TestFactoryRegistry::getRegistry();
- * CppUnit::TestSuite *suite = registry.makeTest();
- * \endcode
- *
- * Example 2: retreiving a suite that contains all the test registered with
- * \link CPPUNIT_TEST_SUITE_NAMED_REGISTRATION() CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( ..., "Math" )\endlink.
- * \code
- * CppUnit::TestFactoryRegistry &mathRegistry = CppUnit::TestFactoryRegistry::getRegistry( "Math" );
- * CppUnit::TestSuite *mathSuite = mathRegistry.makeTest();
- * \endcode
- *
- * Example 3: creating a test suite hierarchy composed of unnamed registration and
- * named registration:
- * - All Tests
- * - tests registered with CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( ..., "Graph" )
- * - tests registered with CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( ..., "Math" )
- * - tests registered with CPPUNIT_TEST_SUITE_REGISTRATION
- *
- * \code
- * CppUnit::TestSuite *rootSuite = new CppUnit::TestSuite( "All tests" );
- * rootSuite->addTest( CppUnit::TestFactoryRegistry::getRegistry( "Graph" ).makeTest() );
- * rootSuite->addTest( CppUnit::TestFactoryRegistry::getRegistry( "Math" ).makeTest() );
- * CppUnit::TestFactoryRegistry::getRegistry().addTestToSuite( rootSuite );
- * \endcode
- *
- * The same result can be obtained with:
- * \code
- * CppUnit::TestFactoryRegistry &registry = CppUnit::TestFactoryRegistry::getRegistry();
- * registry.addRegistry( "Graph" );
- * registry.addRegistry( "Math" );
- * CppUnit::TestSuite *suite = registry.makeTest();
- * \endcode
- *
- * Since a TestFactoryRegistry is a TestFactory, the named registries can be
- * registered in the unnamed registry, creating the hierarchy links.
- *
- * \see TestSuiteFactory, AutoRegisterSuite
- * \see CPPUNIT_TEST_SUITE_REGISTRATION, CPPUNIT_TEST_SUITE_NAMED_REGISTRATION
- */
-class CPPUNIT_API TestFactoryRegistry : public TestFactory
-{
-public:
- /** Constructs the registry with the specified name.
- * \param name Name of the registry. It is the name of TestSuite returned by
- * makeTest().
- */
- TestFactoryRegistry( std::string name );
-
- /// Destructor.
- virtual ~TestFactoryRegistry();
-
- /** Returns a new TestSuite that contains the registered test.
- * \return A new TestSuite which contains all the test added using
- * registerFactory(TestFactory *).
- */
- virtual Test *makeTest();
-
- /** Returns a named registry.
- *
- * If the \a name is left to its default value, then the registry that is returned is
- * the one used by CPPUNIT_TEST_SUITE_REGISTRATION(): the 'top' level registry.
- *
- * \param name Name of the registry to return.
- * \return Registry. If the registry does not exist, it is created with the
- * specified name.
- */
- static TestFactoryRegistry &getRegistry( const std::string &name = "All Tests" );
-
- /** Adds the registered tests to the specified suite.
- * \param suite Suite the tests are added to.
- */
- void addTestToSuite( TestSuite *suite );
-
- /** Adds the specified TestFactory to the registry.
- *
- * \param factory Factory to register.
- */
- void registerFactory( TestFactory *factory );
-
- /*! Removes the specified TestFactory from the registry.
- *
- * The specified factory is not destroyed.
- * \param factory Factory to remove from the registry.
- * \todo Address case when trying to remove a TestRegistryFactory.
- */
- void unregisterFactory( TestFactory *factory );
-
- /*! Adds a registry to the registry.
- *
- * Convenience method to help create test hierarchy. See TestFactoryRegistry detail
- * for examples of use. Calling this method is equivalent to:
- * \code
- * this->registerFactory( TestFactoryRegistry::getRegistry( name ) );
- * \endcode
- *
- * \param name Name of the registry to add.
- */
- void addRegistry( const std::string &name );
-
- /*! Tests if the registry is valid.
- *
- * This method should be used when unregistering test factory on static variable
- * destruction to ensure that the registry has not been already destroyed (in
- * that case there is no need to unregister the test factory).
- *
- * You should not concern yourself with this method unless you are writing a class
- * like AutoRegisterSuite.
- *
- * \return \c true if the specified registry has not been destroyed,
- * otherwise returns \c false.
- * \see AutoRegisterSuite.
- */
- static bool isValid();
-
- /** Adds the specified TestFactory with a specific name (DEPRECATED).
- * \param name Name associated to the factory.
- * \param factory Factory to register.
- * \deprecated Use registerFactory( TestFactory *) instead.
- */
- void registerFactory( const std::string &name,
- TestFactory *factory );
-
-private:
- TestFactoryRegistry( const TestFactoryRegistry &copy );
- void operator =( const TestFactoryRegistry &copy );
-
-private:
- typedef CppUnitSet<TestFactory *, std::less<TestFactory*> > Factories;
- Factories m_factories;
-
- std::string m_name;
-};
-
-
-CPPUNIT_NS_END
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( pop )
-#endif
-
-
-#endif // CPPUNIT_EXTENSIONS_TESTFACTORYREGISTRY_H
diff --git a/3rdParty/CppUnit/cppunit/extensions/TestFixtureFactory.h b/3rdParty/CppUnit/cppunit/extensions/TestFixtureFactory.h
deleted file mode 100644
index 45354c6..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/TestFixtureFactory.h
+++ /dev/null
@@ -1,50 +0,0 @@
-#ifndef CPPUNIT_EXTENSIONS_TESTFIXTUREFACTORY_H
-#define CPPUNIT_EXTENSIONS_TESTFIXTUREFACTORY_H
-
-#include <cppunit/Portability.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-class TestFixture;
-
-/*! \brief Abstract TestFixture factory (Implementation).
- *
- * Implementation detail. Use by HelperMacros to handle TestFixture hierarchy.
- */
-class TestFixtureFactory
-{
-public:
- //! Creates a new TestFixture instance.
- virtual TestFixture *makeFixture() =0;
-
- virtual ~TestFixtureFactory() {}
-};
-
-
-/*! \brief Concret TestFixture factory (Implementation).
- *
- * Implementation detail. Use by HelperMacros to handle TestFixture hierarchy.
- */
-template<class TestFixtureType>
-class ConcretTestFixtureFactory : public CPPUNIT_NS::TestFixtureFactory
-{
- /*! \brief Returns a new TestFixture instance.
- * \return A new fixture instance. The fixture instance is returned by
- * the TestFixtureFactory passed on construction. The actual type
- * is that of the fixture on which the static method suite()
- * was called.
- */
- TestFixture *makeFixture()
- {
- return new TestFixtureType();
- }
-};
-
-
-CPPUNIT_NS_END
-
-
-#endif // CPPUNIT_EXTENSIONS_TESTFIXTUREFACTORY_H
-
diff --git a/3rdParty/CppUnit/cppunit/extensions/TestNamer.h b/3rdParty/CppUnit/cppunit/extensions/TestNamer.h
deleted file mode 100644
index 5a6471c..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/TestNamer.h
+++ /dev/null
@@ -1,89 +0,0 @@
-#ifndef CPPUNIT_EXTENSIONS_TESTNAMER_H
-#define CPPUNIT_EXTENSIONS_TESTNAMER_H
-
-#include <cppunit/Portability.h>
-#include <string>
-
-#if CPPUNIT_HAVE_RTTI
-# include <typeinfo>
-#endif
-
-
-
-/*! \def CPPUNIT_TESTNAMER_DECL( variableName, FixtureType )
- * \brief Declares a TestNamer.
- *
- * Declares a TestNamer for the specified type, using RTTI if enabled, otherwise
- * using macro string expansion.
- *
- * RTTI is used if CPPUNIT_USE_TYPEINFO_NAME is defined and not null.
- *
- * \code
- * void someMethod()
- * {
- * CPPUNIT_TESTNAMER_DECL( namer, AFixtureType );
- * std::string fixtureName = namer.getFixtureName();
- * ...
- * \endcode
- *
- * \relates TestNamer
- * \see TestNamer
- */
-#if CPPUNIT_USE_TYPEINFO_NAME
-# define CPPUNIT_TESTNAMER_DECL( variableName, FixtureType ) \
- CPPUNIT_NS::TestNamer variableName( typeid(FixtureType) )
-#else
-# define CPPUNIT_TESTNAMER_DECL( variableName, FixtureType ) \
- CPPUNIT_NS::TestNamer variableName( std::string(#FixtureType) )
-#endif
-
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief Names a test or a fixture suite.
- *
- * TestNamer is usually instantiated using CPPUNIT_TESTNAMER_DECL.
- *
- */
-class CPPUNIT_API TestNamer
-{
-public:
-#if CPPUNIT_HAVE_RTTI
- /*! \brief Constructs a namer using the fixture's type-info.
- * \param typeInfo Type-info of the fixture type. Use to name the fixture suite.
- */
- TestNamer( const std::type_info &typeInfo );
-#endif
-
- /*! \brief Constructs a namer using the specified fixture name.
- * \param fixtureName Name of the fixture suite. Usually extracted using a macro.
- */
- TestNamer( const std::string &fixtureName );
-
- virtual ~TestNamer();
-
- /*! \brief Returns the name of the fixture.
- * \return Name of the fixture.
- */
- virtual std::string getFixtureName() const;
-
- /*! \brief Returns the name of the test for the specified method.
- * \param testMethodName Name of the method that implements a test.
- * \return A string that is the concatenation of the test fixture name
- * (returned by getFixtureName()) and\a testMethodName,
- * separated using '::'. This provides a fairly unique name for a given
- * test.
- */
- virtual std::string getTestNameFor( const std::string &testMethodName ) const;
-
-protected:
- std::string m_fixtureName;
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_EXTENSIONS_TESTNAMER_H
-
diff --git a/3rdParty/CppUnit/cppunit/extensions/TestSuiteBuilderContext.h b/3rdParty/CppUnit/cppunit/extensions/TestSuiteBuilderContext.h
deleted file mode 100644
index db26926..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/TestSuiteBuilderContext.h
+++ /dev/null
@@ -1,131 +0,0 @@
-#ifndef CPPUNIT_HELPER_TESTSUITEBUILDERCONTEXT_H
-#define CPPUNIT_HELPER_TESTSUITEBUILDERCONTEXT_H
-
-#include <cppunit/Portability.h>
-#include <cppunit/portability/CppUnitMap.h>
-#include <string>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251 ) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-
-CPPUNIT_NS_BEGIN
-
-class TestSuite;
-class TestFixture;
-class TestFixtureFactory;
-class TestNamer;
-
-/*! \brief Context used when creating test suite in HelperMacros.
- *
- * Base class for all context used when creating test suite. The
- * actual context type during test suite creation is TestSuiteBuilderContext.
- *
- * \sa CPPUNIT_TEST_SUITE, CPPUNIT_TEST_SUITE_ADD_TEST,
- * CPPUNIT_TEST_SUITE_ADD_CUSTOM_TESTS.
- */
-class CPPUNIT_API TestSuiteBuilderContextBase
-{
-public:
- /*! \brief Constructs a new context.
- *
- * You should not use this. The context is created in
- * CPPUNIT_TEST_SUITE().
- */
- TestSuiteBuilderContextBase( TestSuite &suite,
- const TestNamer &namer,
- TestFixtureFactory &factory );
-
- virtual ~TestSuiteBuilderContextBase();
-
- /*! \brief Adds a test to the fixture suite.
- *
- * \param test Test to add to the fixture suite. Must not be \c NULL.
- */
- void addTest( Test *test );
-
- /*! \brief Returns the fixture name.
- * \return Fixture name. It is the name used to name the fixture
- * suite.
- */
- std::string getFixtureName() const;
-
- /*! \brief Returns the name of the test for the specified method.
- *
- * \param testMethodName Name of the method that implements a test.
- * \return A string that is the concatenation of the test fixture name
- * (returned by getFixtureName()) and\a testMethodName,
- * separated using '::'. This provides a fairly unique name for a given
- * test.
- */
- std::string getTestNameFor( const std::string &testMethodName ) const;
-
- /*! \brief Adds property pair.
- * \param key PropertyKey string to add.
- * \param value PropertyValue string to add.
- */
- void addProperty( const std::string &key,
- const std::string &value );
-
- /*! \brief Returns property value assigned to param key.
- * \param key PropertyKey string.
- */
- const std::string getStringProperty( const std::string &key ) const;
-
-protected:
- TestFixture *makeTestFixture() const;
-
- // Notes: we use a vector here instead of a map to work-around the
- // shared std::map in dll bug in VC6.
- // See http://www.dinkumware.com/vc_fixes.html for detail.
- typedef std::pair<std::string,std::string> Property;
- typedef CppUnitVector<Property> Properties;
-
- TestSuite &m_suite;
- const TestNamer &m_namer;
- TestFixtureFactory &m_factory;
-
-private:
- Properties m_properties;
-};
-
-
-/*! \brief Type-sage context used when creating test suite in HelperMacros.
- *
- * \sa TestSuiteBuilderContextBase.
- */
-template<class Fixture>
-class TestSuiteBuilderContext : public TestSuiteBuilderContextBase
-{
-public:
- typedef Fixture FixtureType;
-
- TestSuiteBuilderContext( TestSuiteBuilderContextBase &contextBase )
- : TestSuiteBuilderContextBase( contextBase )
- {
- }
-
- /*! \brief Returns a new TestFixture instance.
- * \return A new fixture instance. The fixture instance is returned by
- * the TestFixtureFactory passed on construction. The actual type
- * is that of the fixture on which the static method suite()
- * was called.
- */
- FixtureType *makeFixture() const
- {
- return CPPUNIT_STATIC_CAST( FixtureType *,
- TestSuiteBuilderContextBase::makeTestFixture() );
- }
-};
-
-
-CPPUNIT_NS_END
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( pop )
-#endif
-
-#endif // CPPUNIT_HELPER_TESTSUITEBUILDERCONTEXT_H
-
diff --git a/3rdParty/CppUnit/cppunit/extensions/TestSuiteFactory.h b/3rdParty/CppUnit/cppunit/extensions/TestSuiteFactory.h
deleted file mode 100644
index 260b483..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/TestSuiteFactory.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef CPPUNIT_EXTENSIONS_TESTSUITEFACTORY_H
-#define CPPUNIT_EXTENSIONS_TESTSUITEFACTORY_H
-
-#include <cppunit/extensions/TestFactory.h>
-
-CPPUNIT_NS_BEGIN
-
-
- class Test;
-
- /*! \brief TestFactory for TestFixture that implements a static suite() method.
- * \see AutoRegisterSuite.
- */
- template<class TestCaseType>
- class TestSuiteFactory : public TestFactory
- {
- public:
- virtual Test *makeTest()
- {
- return TestCaseType::suite();
- }
- };
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_EXTENSIONS_TESTSUITEFACTORY_H
diff --git a/3rdParty/CppUnit/cppunit/extensions/TypeInfoHelper.h b/3rdParty/CppUnit/cppunit/extensions/TypeInfoHelper.h
deleted file mode 100644
index c0ecdbc..0000000
--- a/3rdParty/CppUnit/cppunit/extensions/TypeInfoHelper.h
+++ /dev/null
@@ -1,33 +0,0 @@
-#ifndef CPPUNIT_TYPEINFOHELPER_H
-#define CPPUNIT_TYPEINFOHELPER_H
-
-#include <cppunit/Portability.h>
-
-#if CPPUNIT_HAVE_RTTI
-
-#include <typeinfo>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-
- /**! \brief Helper to use type_info.
- */
- class CPPUNIT_API TypeInfoHelper
- {
- public:
- /*! \brief Get the class name of the specified type_info.
- * \param info Info which the class name is extracted from.
- * \return The string returned by type_info::name() without
- * the "class" prefix. If the name is not prefixed
- * by "class", it is returned as this.
- */
- static std::string getClassName( const std::type_info &info );
- };
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_HAVE_RTTI
-
-#endif // CPPUNIT_TYPEINFOHELPER_H
diff --git a/3rdParty/CppUnit/cppunit/portability/CppUnitDeque.h b/3rdParty/CppUnit/cppunit/portability/CppUnitDeque.h
deleted file mode 100644
index bbab21f..0000000
--- a/3rdParty/CppUnit/cppunit/portability/CppUnitDeque.h
+++ /dev/null
@@ -1,25 +0,0 @@
-#ifndef CPPUNIT_PORTABILITY_CPPUNITDEQUE_H
-#define CPPUNIT_PORTABILITY_CPPUNITDEQUE_H
-
-// The technic used is similar to the wrapper of STLPort.
-
-#include <cppunit/Portability.h>
-#include <deque>
-
-
-#if CPPUNIT_STD_NEED_ALLOCATOR
-
-template<class T>
-class CppUnitDeque : public std::deque<T,CPPUNIT_STD_ALLOCATOR>
-{
-public:
-};
-
-#else // CPPUNIT_STD_NEED_ALLOCATOR
-
-#define CppUnitDeque std::deque
-
-#endif
-
-#endif // CPPUNIT_PORTABILITY_CPPUNITDEQUE_H
-
diff --git a/3rdParty/CppUnit/cppunit/portability/CppUnitMap.h b/3rdParty/CppUnit/cppunit/portability/CppUnitMap.h
deleted file mode 100644
index 0cdc723..0000000
--- a/3rdParty/CppUnit/cppunit/portability/CppUnitMap.h
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef CPPUNIT_PORTABILITY_CPPUNITMAP_H
-#define CPPUNIT_PORTABILITY_CPPUNITMAP_H
-
-// The technic used is similar to the wrapper of STLPort.
-
-#include <cppunit/Portability.h>
-#include <functional>
-#include <map>
-
-
-#if CPPUNIT_STD_NEED_ALLOCATOR
-
-template<class Key, class T>
-class CppUnitMap : public std::map<Key
- ,T
- ,std::less<Key>
- ,CPPUNIT_STD_ALLOCATOR>
-{
-public:
-};
-
-#else // CPPUNIT_STD_NEED_ALLOCATOR
-
-#define CppUnitMap std::map
-
-#endif
-
-#endif // CPPUNIT_PORTABILITY_CPPUNITMAP_H
-
diff --git a/3rdParty/CppUnit/cppunit/portability/CppUnitSet.h b/3rdParty/CppUnit/cppunit/portability/CppUnitSet.h
deleted file mode 100644
index 18b8662..0000000
--- a/3rdParty/CppUnit/cppunit/portability/CppUnitSet.h
+++ /dev/null
@@ -1,28 +0,0 @@
-#ifndef CPPUNIT_PORTABILITY_CPPUNITSET_H
-#define CPPUNIT_PORTABILITY_CPPUNITSET_H
-
-// The technic used is similar to the wrapper of STLPort.
-
-#include <cppunit/Portability.h>
-#include <functional>
-#include <set>
-
-
-#if CPPUNIT_STD_NEED_ALLOCATOR
-
-template<class T>
-class CppUnitSet : public std::set<T
- ,std::less<T>
- ,CPPUNIT_STD_ALLOCATOR>
-{
-public:
-};
-
-#else // CPPUNIT_STD_NEED_ALLOCATOR
-
-#define CppUnitSet std::set
-
-#endif
-
-#endif // CPPUNIT_PORTABILITY_CPPUNITSET_H
-
diff --git a/3rdParty/CppUnit/cppunit/portability/CppUnitVector.h b/3rdParty/CppUnit/cppunit/portability/CppUnitVector.h
deleted file mode 100644
index 6666a63..0000000
--- a/3rdParty/CppUnit/cppunit/portability/CppUnitVector.h
+++ /dev/null
@@ -1,25 +0,0 @@
-#ifndef CPPUNIT_PORTABILITY_CPPUNITVECTOR_H
-#define CPPUNIT_PORTABILITY_CPPUNITVECTOR_H
-
-// The technic used is similar to the wrapper of STLPort.
-
-#include <cppunit/Portability.h>
-#include <vector>
-
-
-#if CPPUNIT_STD_NEED_ALLOCATOR
-
-template<class T>
-class CppUnitVector : public std::vector<T,CPPUNIT_STD_ALLOCATOR>
-{
-public:
-};
-
-#else // CPPUNIT_STD_NEED_ALLOCATOR
-
-#define CppUnitVector std::vector
-
-#endif
-
-#endif // CPPUNIT_PORTABILITY_CPPUNITVECTOR_H
-
diff --git a/3rdParty/CppUnit/cppunit/portability/Stream.h b/3rdParty/CppUnit/cppunit/portability/Stream.h
deleted file mode 100644
index e9beb8c..0000000
--- a/3rdParty/CppUnit/cppunit/portability/Stream.h
+++ /dev/null
@@ -1,347 +0,0 @@
-#ifndef CPPUNIT_PORTABILITY_STREAM_H_INCLUDED
-#define CPPUNIT_PORTABILITY_STREAM_H_INCLUDED
-
-// This module define:
-// Type CppUT::Stream (either std::stream or a custom type)
-// Type CppUT::OStringStream (eitjer std::ostringstream, older alternate or a custom type)
-// Functions stdCOut() & stdCErr() which returns a reference on cout & cerr stream (or our
-// custom stream).
-
-#include <cppunit/Portability.h>
-
-
-#if defined( CPPUNIT_NO_STREAM )
-
-#include <string>
-#include <stdio.h>
-#include <string.h>
-
-CPPUNIT_NS_BEGIN
-
-class StreamBuffer
-{
-public:
- virtual ~StreamBuffer() {}
-
- virtual void write( const char *text, unsigned int length ) = 0;
-
- virtual void flush() {}
-};
-
-
-class StringStreamBuffer : public StreamBuffer
-{
-public:
- std::string str() const
- {
- return str_;
- }
-
-public: // overridden from StreamBuffer
- void write( const char *text, unsigned int length )
- {
- str_.append( text, length );
- }
-
-private:
- std::string str_;
-};
-
-
-class FileStreamBuffer : public StreamBuffer
-{
-public:
- FileStreamBuffer( FILE *file )
- : file_( file )
- {
- }
-
- FILE *file() const
- {
- return file_;
- }
-
-public: // overridden from StreamBuffer
- void write( const char *text, unsigned int length )
- {
- if ( file_ )
- fwrite( text, sizeof(char), length, file_ );
- }
-
- void flush()
- {
- if ( file_ )
- fflush( file_ );
- }
-
-private:
- FILE *file_;
-};
-
-
-class OStream
-{
-public:
- OStream()
- : buffer_( 0 )
- {
- }
-
- OStream( StreamBuffer *buffer )
- : buffer_( buffer )
- {
- }
-
- virtual ~OStream()
- {
- flush();
- }
-
- OStream &flush()
- {
- if ( buffer_ )
- buffer_->flush();
- return *this;
- }
-
- void setBuffer( StreamBuffer *buffer )
- {
- buffer_ = buffer;
- }
-
- OStream &write( const char *text, unsigned int length )
- {
- if ( buffer_ )
- buffer_->write( text, length );
- return *this;
- }
-
- OStream &write( const char *text )
- {
- return write( text, strlen(text) );
- }
-
- OStream &operator <<( bool v )
- {
- const char *out = v ? "true" : "false";
- return write( out );
- }
-
- OStream &operator <<( short v )
- {
- char buffer[64];
- sprintf( buffer, "%hd", v );
- return write( buffer );
- }
-
- OStream &operator <<( unsigned short v )
- {
- char buffer[64];
- sprintf( buffer, "%hu", v );
- return write( buffer );
- }
-
- OStream &operator <<( int v )
- {
- char buffer[64];
- sprintf( buffer, "%d", v );
- return write( buffer );
- }
-
- OStream &operator <<( unsigned int v )
- {
- char buffer[64];
- sprintf( buffer, "%u", v );
- return write( buffer );
- }
-
- OStream &operator <<( long v )
- {
- char buffer[64];
- sprintf( buffer, "%ld", v );
- return write( buffer );
- }
-
- OStream &operator <<( unsigned long v )
- {
- char buffer[64];
- sprintf( buffer, "%lu", v );
- return write( buffer );
- }
-
- OStream &operator <<( float v )
- {
- char buffer[128];
- sprintf( buffer, "%.16g", double(v) );
- return write( buffer );
- }
-
- OStream &operator <<( double v )
- {
- char buffer[128];
- sprintf( buffer, "%.16g", v );
- return write( buffer );
- }
-
- OStream &operator <<( long double v )
- {
- char buffer[128];
- sprintf( buffer, "%.16g", double(v) );
- return write( buffer );
- }
-
- OStream &operator <<( const void *v )
- {
- char buffer[64];
- sprintf( buffer, "%p", v );
- return write( buffer );
- }
-
- OStream &operator <<( const char *v )
- {
- return write( v ? v : "NULL" );
- }
-
- OStream &operator <<( char c )
- {
- char buffer[16];
- sprintf( buffer, "%c", c );
- return write( buffer );
- }
-
- OStream &operator <<( const std::string &s )
- {
- return write( s.c_str(), s.length() );
- }
-
-private:
- StreamBuffer *buffer_;
-};
-
-
-class OStringStream : public OStream
-{
-public:
- OStringStream()
- : OStream( &buffer_ )
- {
- }
-
- std::string str() const
- {
- return buffer_.str();
- }
-
-private:
- StringStreamBuffer buffer_;
-};
-
-
-class OFileStream : public OStream
-{
-public:
- OFileStream( FILE *file )
- : OStream( &buffer_ )
- , buffer_( file )
- , ownFile_( false )
- {
- }
-
- OFileStream( const char *path )
- : OStream( &buffer_ )
- , buffer_( fopen( path, "wt" ) )
- , ownFile_( true )
- {
- }
-
- virtual ~OFileStream()
- {
- if ( ownFile_ && buffer_.file() )
- fclose( buffer_.file() );
- }
-
-private:
- FileStreamBuffer buffer_;
- bool ownFile_;
-};
-
-inline OStream &stdCOut()
-{
- static OFileStream stream( stdout );
- return stream;
-}
-
-inline OStream &stdCErr()
-{
- static OFileStream stream( stderr );
- return stream;
-}
-
-CPPUNIT_NS_END
-
-#elif CPPUNIT_HAVE_SSTREAM // #if defined( CPPUNIT_NO_STREAM )
-# include <sstream>
-# include <fstream>
-
- CPPUNIT_NS_BEGIN
- typedef std::ostringstream OStringStream; // The standard C++ way
- typedef std::ofstream OFileStream;
- CPPUNIT_NS_END
-
-
-#elif CPPUNIT_HAVE_CLASS_STRSTREAM
-# include <string>
-# if CPPUNIT_HAVE_STRSTREAM
-# include <strstream>
-# else // CPPUNIT_HAVE_STRSTREAM
-# include <strstream.h>
-# endif // CPPUNIT_HAVE_CLASS_STRSTREAM
-
- CPPUNIT_NS_BEGIN
-
- class OStringStream : public std::ostrstream
- {
- public:
- std::string str()
- {
-// (*this) << '\0';
-// std::string msg(std::ostrstream::str());
-// std::ostrstream::freeze(false);
-// return msg;
-// Alternative implementation that don't rely on freeze which is not
-// available on some platforms:
- return std::string( std::ostrstream::str(), pcount() );
- }
- };
-
- CPPUNIT_NS_END
-#else // CPPUNIT_HAVE_CLASS_STRSTREAM
-# error Cannot define CppUnit::OStringStream.
-#endif // #if defined( CPPUNIT_NO_STREAM )
-
-
-
-#if !defined( CPPUNIT_NO_STREAM )
-
-#include <iostream>
-
- CPPUNIT_NS_BEGIN
-
- typedef std::ostream OStream;
-
- inline OStream &stdCOut()
- {
- return std::cout;
- }
-
- inline OStream &stdCErr()
- {
- return std::cerr;
- }
-
- CPPUNIT_NS_END
-
-#endif // #if !defined( CPPUNIT_NO_STREAM )
-
-#endif // CPPUNIT_PORTABILITY_STREAM_H_INCLUDED
-
diff --git a/3rdParty/CppUnit/cppunit/tools/Algorithm.h b/3rdParty/CppUnit/cppunit/tools/Algorithm.h
deleted file mode 100644
index e5746a2..0000000
--- a/3rdParty/CppUnit/cppunit/tools/Algorithm.h
+++ /dev/null
@@ -1,23 +0,0 @@
-#ifndef CPPUNIT_TOOLS_ALGORITHM_H_INCLUDED
-#define CPPUNIT_TOOLS_ALGORITHM_H_INCLUDED
-
-#include <cppunit/Portability.h>
-
-CPPUNIT_NS_BEGIN
-
-template<class SequenceType, class ValueType>
-void
-removeFromSequence( SequenceType &sequence,
- const ValueType &valueToRemove )
-{
- for ( unsigned int index =0; index < sequence.size(); ++index )
- {
- if ( sequence[ index ] == valueToRemove )
- sequence.erase( sequence.begin() + index );
- }
-}
-
-CPPUNIT_NS_END
-
-
-#endif // CPPUNIT_TOOLS_ALGORITHM_H_INCLUDED
diff --git a/3rdParty/CppUnit/cppunit/tools/StringTools.h b/3rdParty/CppUnit/cppunit/tools/StringTools.h
deleted file mode 100644
index 7a6b6d7..0000000
--- a/3rdParty/CppUnit/cppunit/tools/StringTools.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#ifndef CPPUNIT_TOOLS_STRINGTOOLS_H
-#define CPPUNIT_TOOLS_STRINGTOOLS_H
-
-#include <cppunit/Portability.h>
-#include <string>
-#include <cppunit/portability/CppUnitVector.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! \brief Tool functions to manipulate string.
- */
-struct StringTools
-{
-
- typedef CppUnitVector<std::string> Strings;
-
- static std::string CPPUNIT_API toString( int value );
-
- static std::string CPPUNIT_API toString( double value );
-
- static Strings CPPUNIT_API split( const std::string &text,
- char separator );
-
- static std::string CPPUNIT_API wrap( const std::string &text,
- int wrapColumn = CPPUNIT_WRAP_COLUMN );
-
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TOOLS_STRINGTOOLS_H
diff --git a/3rdParty/CppUnit/cppunit/tools/XmlDocument.h b/3rdParty/CppUnit/cppunit/tools/XmlDocument.h
deleted file mode 100644
index 4ee7325..0000000
--- a/3rdParty/CppUnit/cppunit/tools/XmlDocument.h
+++ /dev/null
@@ -1,86 +0,0 @@
-#ifndef CPPUNIT_TOOLS_XMLDOCUMENT_H
-#define CPPUNIT_TOOLS_XMLDOCUMENT_H
-
-#include <cppunit/Portability.h>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251 ) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-#include <string>
-
-
-CPPUNIT_NS_BEGIN
-
-
-class XmlElement;
-
-
-/*! \brief A XML Document.
- *
- * A XmlDocument represents a XML file. It holds a pointer on the root XmlElement
- * of the document. It also holds the encoding and style sheet used.
- *
- * By default, the XML document is stand-alone and tagged with enconding "ISO-8859-1".
- */
-class CPPUNIT_API XmlDocument
-{
-public:
- /*! \brief Constructs a XmlDocument object.
- * \param encoding Encoding used in the XML file (default is Latin-1, ISO-8859-1 ).
- * \param styleSheet Name of the XSL style sheet file used. If empty then no
- * style sheet will be specified in the output.
- */
- XmlDocument( const std::string &encoding = "",
- const std::string &styleSheet = "" );
-
- /// Destructor.
- virtual ~XmlDocument();
-
- std::string encoding() const;
- void setEncoding( const std::string &encoding = "" );
-
- std::string styleSheet() const;
- void setStyleSheet( const std::string &styleSheet = "" );
-
- bool standalone() const;
-
- /*! \brief set the output document as standalone or not.
- *
- * For the output document, specify wether it's a standalone XML
- * document, or not.
- *
- * \param standalone if true, the output will be specified as standalone.
- * if false, it will be not.
- */
- void setStandalone( bool standalone );
-
- void setRootElement( XmlElement *rootElement );
- XmlElement &rootElement() const;
-
- std::string toString() const;
-
-private:
- /// Prevents the use of the copy constructor.
- XmlDocument( const XmlDocument &copy );
-
- /// Prevents the use of the copy operator.
- void operator =( const XmlDocument &copy );
-
-protected:
- std::string m_encoding;
- std::string m_styleSheet;
- XmlElement *m_rootElement;
- bool m_standalone;
-};
-
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( pop )
-#endif
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_TOOLS_XMLDOCUMENT_H
diff --git a/3rdParty/CppUnit/cppunit/tools/XmlElement.h b/3rdParty/CppUnit/cppunit/tools/XmlElement.h
deleted file mode 100644
index 0b36bd2..0000000
--- a/3rdParty/CppUnit/cppunit/tools/XmlElement.h
+++ /dev/null
@@ -1,149 +0,0 @@
-#ifndef CPPUNIT_TOOLS_XMLELEMENT_H
-#define CPPUNIT_TOOLS_XMLELEMENT_H
-
-#include <cppunit/Portability.h>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251 ) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-#include <cppunit/portability/CppUnitDeque.h>
-#include <string>
-
-
-CPPUNIT_NS_BEGIN
-
-
-class XmlElement;
-
-#if CPPUNIT_NEED_DLL_DECL
-// template class CPPUNIT_API std::deque<XmlElement *>;
-#endif
-
-
-/*! \brief A XML Element.
- *
- * A XML element has:
- * - a name, specified on construction,
- * - a content, specified on construction (may be empty),
- * - zero or more attributes, added with addAttribute(),
- * - zero or more child elements, added with addElement().
- */
-class CPPUNIT_API XmlElement
-{
-public:
- /*! \brief Constructs an element with the specified name and string content.
- * \param elementName Name of the element. Must not be empty.
- * \param content Content of the element.
- */
- XmlElement( std::string elementName,
- std::string content ="" );
-
- /*! \brief Constructs an element with the specified name and numeric content.
- * \param elementName Name of the element. Must not be empty.
- * \param numericContent Content of the element.
- */
- XmlElement( std::string elementName,
- int numericContent );
-
- /*! \brief Destructs the element and its child elements.
- */
- virtual ~XmlElement();
-
- /*! \brief Returns the name of the element.
- * \return Name of the element.
- */
- std::string name() const;
-
- /*! \brief Returns the content of the element.
- * \return Content of the element.
- */
- std::string content() const;
-
- /*! \brief Sets the name of the element.
- * \param name New name for the element.
- */
- void setName( const std::string &name );
-
- /*! \brief Sets the content of the element.
- * \param content New content for the element.
- */
- void setContent( const std::string &content );
-
- /*! \overload void setContent( const std::string &content )
- */
- void setContent( int numericContent );
-
- /*! \brief Adds an attribute with the specified string value.
- * \param attributeName Name of the attribute. Must not be an empty.
- * \param value Value of the attribute.
- */
- void addAttribute( std::string attributeName,
- std::string value );
-
- /*! \brief Adds an attribute with the specified numeric value.
- * \param attributeName Name of the attribute. Must not be empty.
- * \param numericValue Numeric value of the attribute.
- */
- void addAttribute( std::string attributeName,
- int numericValue );
-
- /*! \brief Adds a child element to the element.
- * \param element Child element to add. Must not be \c NULL.
- */
- void addElement( XmlElement *element );
-
- /*! \brief Returns the number of child elements.
- * \return Number of child elements (element added with addElement()).
- */
- int elementCount() const;
-
- /*! \brief Returns the child element at the specified index.
- * \param index Zero based index of the element to return.
- * \returns Element at the specified index. Never \c NULL.
- * \exception std::invalid_argument if \a index < 0 or index >= elementCount().
- */
- XmlElement *elementAt( int index ) const;
-
- /*! \brief Returns the first child element with the specified name.
- * \param name Name of the child element to return.
- * \return First child element found which is named \a name.
- * \exception std::invalid_argument if there is no child element with the specified
- * name.
- */
- XmlElement *elementFor( const std::string &name ) const;
-
- /*! \brief Returns a XML string that represents the element.
- * \param indent String of spaces representing the amount of 'indent'.
- * \return XML string that represents the element, its attributes and its
- * child elements.
- */
- std::string toString( const std::string &indent = "" ) const;
-
-private:
- typedef std::pair<std::string,std::string> Attribute;
-
- std::string attributesAsString() const;
- std::string escape( std::string value ) const;
-
-private:
- std::string m_name;
- std::string m_content;
-
- typedef CppUnitDeque<Attribute> Attributes;
- Attributes m_attributes;
-
- typedef CppUnitDeque<XmlElement *> Elements;
- Elements m_elements;
-};
-
-
-CPPUNIT_NS_END
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( pop )
-#endif
-
-
-#endif // CPPUNIT_TOOLS_XMLELEMENT_H
diff --git a/3rdParty/CppUnit/cppunit/ui/text/TestRunner.h b/3rdParty/CppUnit/cppunit/ui/text/TestRunner.h
deleted file mode 100644
index 023eb83..0000000
--- a/3rdParty/CppUnit/cppunit/ui/text/TestRunner.h
+++ /dev/null
@@ -1,24 +0,0 @@
-#ifndef CPPUNIT_UI_TEXT_TESTRUNNER_H
-#define CPPUNIT_UI_TEXT_TESTRUNNER_H
-
-#include <cppunit/ui/text/TextTestRunner.h>
-
-
-#if defined(CPPUNIT_HAVE_NAMESPACES)
-
-CPPUNIT_NS_BEGIN
-namespace TextUi
-{
-
- /*! Text TestRunner (DEPRECATED).
- * \deprecated Use TextTestRunner instead.
- */
- typedef TextTestRunner TestRunner;
-
-}
-CPPUNIT_NS_END
-
-#endif // defined(CPPUNIT_HAVE_NAMESPACES)
-
-
-#endif // CPPUNIT_UI_TEXT_TESTRUNNER_H
diff --git a/3rdParty/CppUnit/cppunit/ui/text/TextTestRunner.h b/3rdParty/CppUnit/cppunit/ui/text/TextTestRunner.h
deleted file mode 100644
index 86da4d4..0000000
--- a/3rdParty/CppUnit/cppunit/ui/text/TextTestRunner.h
+++ /dev/null
@@ -1,97 +0,0 @@
-#ifndef CPPUNIT_UI_TEXT_TEXTTESTRUNNER_H
-#define CPPUNIT_UI_TEXT_TEXTTESTRUNNER_H
-
-
-#include <cppunit/Portability.h>
-#include <string>
-#include <cppunit/TestRunner.h>
-
-CPPUNIT_NS_BEGIN
-
-
-class Outputter;
-class Test;
-class TestSuite;
-class TextOutputter;
-class TestResult;
-class TestResultCollector;
-
-
-
-/*!
- * \brief A text mode test runner.
- * \ingroup WritingTestResult
- * \ingroup ExecutingTest
- *
- * The test runner manage the life cycle of the added tests.
- *
- * The test runner can run only one of the added tests or all the tests.
- *
- * TestRunner prints out a trace as the tests are executed followed by a
- * summary at the end. The trace and summary print are optional.
- *
- * Here is an example of use:
- *
- * \code
- * CppUnit::TextTestRunner runner;
- * runner.addTest( ExampleTestCase::suite() );
- * runner.run( "", true ); // Run all tests and wait
- * \endcode
- *
- * The trace is printed using a TextTestProgressListener. The summary is printed
- * using a TextOutputter.
- *
- * You can specify an alternate Outputter at construction
- * or later with setOutputter().
- *
- * After construction, you can register additional TestListener to eventManager(),
- * for a custom progress trace, for example.
- *
- * \code
- * CppUnit::TextTestRunner runner;
- * runner.addTest( ExampleTestCase::suite() );
- * runner.setOutputter( CppUnit::CompilerOutputter::defaultOutputter(
- * &runner.result(),
- * std::cerr ) );
- * MyCustomProgressTestListener progress;
- * runner.eventManager().addListener( &progress );
- * runner.run( "", true ); // Run all tests and wait
- * \endcode
- *
- * \see CompilerOutputter, XmlOutputter, TextOutputter.
- */
-class CPPUNIT_API TextTestRunner : public CPPUNIT_NS::TestRunner
-{
-public:
- TextTestRunner( Outputter *outputter =NULL );
-
- virtual ~TextTestRunner();
-
- bool run( std::string testPath ="",
- bool doWait = false,
- bool doPrintResult = true,
- bool doPrintProgress = true );
-
- void setOutputter( Outputter *outputter );
-
- TestResultCollector &result() const;
-
- TestResult &eventManager() const;
-
-public: // overridden from TestRunner (to avoid hidden virtual function warning)
- virtual void run( TestResult &controller,
- const std::string &testPath = "" );
-
-protected:
- virtual void wait( bool doWait );
- virtual void printResult( bool doPrintResult );
-
- TestResultCollector *m_result;
- TestResult *m_eventManager;
- Outputter *m_outputter;
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_UI_TEXT_TEXTTESTRUNNER_H
diff --git a/3rdParty/CppUnit/src/AdditionalMessage.cpp b/3rdParty/CppUnit/src/AdditionalMessage.cpp
deleted file mode 100644
index 9f3da13..0000000
--- a/3rdParty/CppUnit/src/AdditionalMessage.cpp
+++ /dev/null
@@ -1,41 +0,0 @@
-#include <cppunit/AdditionalMessage.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-AdditionalMessage::AdditionalMessage()
-{
-}
-
-
-AdditionalMessage::AdditionalMessage( const std::string &detail1 )
-{
- if ( !detail1.empty() )
- addDetail( detail1 );
-}
-
-
-AdditionalMessage::AdditionalMessage( const char *detail1 )
-{
- if ( detail1 && !std::string( detail1 ).empty() )
- addDetail( std::string(detail1) );
-}
-
-
-AdditionalMessage::AdditionalMessage( const Message &other )
- : SuperClass( other )
-{
-}
-
-
-AdditionalMessage &
-AdditionalMessage::operator =( const Message &other )
-{
- SuperClass::operator =( other );
-
- return *this;
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/Asserter.cpp b/3rdParty/CppUnit/src/Asserter.cpp
deleted file mode 100644
index a9cf95c..0000000
--- a/3rdParty/CppUnit/src/Asserter.cpp
+++ /dev/null
@@ -1,101 +0,0 @@
-#include <cppunit/Asserter.h>
-#include <cppunit/Exception.h>
-#include <cppunit/Message.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-void
-Asserter::fail( std::string message,
- const SourceLine &sourceLine )
-{
- fail( Message( "assertion failed", message ), sourceLine );
-}
-
-
-void
-Asserter::fail( const Message &message,
- const SourceLine &sourceLine )
-{
- throw Exception( message, sourceLine );
-}
-
-
-void
-Asserter::failIf( bool shouldFail,
- const Message &message,
- const SourceLine &sourceLine )
-{
- if ( shouldFail )
- fail( message, sourceLine );
-}
-
-
-void
-Asserter::failIf( bool shouldFail,
- std::string message,
- const SourceLine &sourceLine )
-{
- failIf( shouldFail, Message( "assertion failed", message ), sourceLine );
-}
-
-
-std::string
-Asserter::makeExpected( const std::string &expectedValue )
-{
- return "Expected: " + expectedValue;
-}
-
-
-std::string
-Asserter::makeActual( const std::string &actualValue )
-{
- return "Actual : " + actualValue;
-}
-
-
-Message
-Asserter::makeNotEqualMessage( const std::string &expectedValue,
- const std::string &actualValue,
- const AdditionalMessage &additionalMessage,
- const std::string &shortDescription )
-{
- Message message( shortDescription,
- makeExpected( expectedValue ),
- makeActual( actualValue ) );
- message.addDetail( additionalMessage );
-
- return message;
-}
-
-
-void
-Asserter::failNotEqual( std::string expected,
- std::string actual,
- const SourceLine &sourceLine,
- const AdditionalMessage &additionalMessage,
- std::string shortDescription )
-{
- fail( makeNotEqualMessage( expected,
- actual,
- additionalMessage,
- shortDescription ),
- sourceLine );
-}
-
-
-void
-Asserter::failNotEqualIf( bool shouldFail,
- std::string expected,
- std::string actual,
- const SourceLine &sourceLine,
- const AdditionalMessage &additionalMessage,
- std::string shortDescription )
-{
- if ( shouldFail )
- failNotEqual( expected, actual, sourceLine, additionalMessage, shortDescription );
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/BriefTestProgressListener.cpp b/3rdParty/CppUnit/src/BriefTestProgressListener.cpp
deleted file mode 100644
index 120e6d5..0000000
--- a/3rdParty/CppUnit/src/BriefTestProgressListener.cpp
+++ /dev/null
@@ -1,49 +0,0 @@
-#include <cppunit/BriefTestProgressListener.h>
-#include <cppunit/Test.h>
-#include <cppunit/TestFailure.h>
-#include <cppunit/portability/Stream.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-BriefTestProgressListener::BriefTestProgressListener()
- : m_lastTestFailed( false )
-{
-}
-
-
-BriefTestProgressListener::~BriefTestProgressListener()
-{
-}
-
-
-void
-BriefTestProgressListener::startTest( Test *test )
-{
- stdCOut() << test->getName();
- stdCOut().flush();
-
- m_lastTestFailed = false;
-}
-
-
-void
-BriefTestProgressListener::addFailure( const TestFailure &failure )
-{
- stdCOut() << " : " << (failure.isError() ? "error" : "assertion");
- m_lastTestFailed = true;
-}
-
-
-void
-BriefTestProgressListener::endTest( Test *)
-{
- if ( !m_lastTestFailed )
- stdCOut() << " : OK";
- stdCOut() << "\n";
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/DefaultProtector.cpp b/3rdParty/CppUnit/src/DefaultProtector.cpp
deleted file mode 100644
index 6fb306b..0000000
--- a/3rdParty/CppUnit/src/DefaultProtector.cpp
+++ /dev/null
@@ -1,42 +0,0 @@
-#include <cppunit/Exception.h>
-#include <cppunit/extensions/TypeInfoHelper.h>
-#include "DefaultProtector.h"
-
-
-CPPUNIT_NS_BEGIN
-
-
-bool
-DefaultProtector::protect( const Functor &functor,
- const ProtectorContext &context )
-{
- try
- {
- return functor();
- }
- catch ( Exception &failure )
- {
- reportFailure( context, failure );
- }
- catch ( std::exception &e )
- {
- std::string shortDescription( "uncaught exception of type " );
-#if CPPUNIT_USE_TYPEINFO_NAME
- shortDescription += TypeInfoHelper::getClassName( typeid(e) );
-#else
- shortDescription += "std::exception (or derived).";
-#endif
- Message message( shortDescription, e.what() );
- reportError( context, message );
- }
- catch ( ... )
- {
- reportError( context,
- Message( "uncaught exception of unknown type") );
- }
-
- return false;
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/DefaultProtector.h b/3rdParty/CppUnit/src/DefaultProtector.h
deleted file mode 100644
index 4a76ea0..0000000
--- a/3rdParty/CppUnit/src/DefaultProtector.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef CPPUNIT_DEFAULTPROTECTOR_H
-#define CPPUNIT_DEFAULTPROTECTOR_H
-
-#include <cppunit/Protector.h>
-
-CPPUNIT_NS_BEGIN
-
-/*! \brief Default protector that catch all exceptions (Implementation).
- *
- * Implementation detail.
- * \internal This protector catch and generate a failure for the following
- * exception types:
- * - Exception
- * - std::exception
- * - ...
- */
-class DefaultProtector : public Protector
-{
-public:
- bool protect( const Functor &functor,
- const ProtectorContext &context );
-};
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_DEFAULTPROTECTOR_H
-
diff --git a/3rdParty/CppUnit/src/Exception.cpp b/3rdParty/CppUnit/src/Exception.cpp
deleted file mode 100644
index 3bbe24b..0000000
--- a/3rdParty/CppUnit/src/Exception.cpp
+++ /dev/null
@@ -1,126 +0,0 @@
-#include <cppunit/Exception.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-#ifdef CPPUNIT_ENABLE_SOURCELINE_DEPRECATED
-/*!
- * \deprecated Use SourceLine::isValid() instead.
- */
-const std::string Exception::UNKNOWNFILENAME = "<unknown>";
-
-/*!
- * \deprecated Use SourceLine::isValid() instead.
- */
-const long Exception::UNKNOWNLINENUMBER = -1;
-#endif
-
-
-Exception::Exception( const Exception &other )
- : std::exception( other )
-{
- m_message = other.m_message;
- m_sourceLine = other.m_sourceLine;
-}
-
-
-Exception::Exception( const Message &message,
- const SourceLine &sourceLine )
- : m_message( message )
- , m_sourceLine( sourceLine )
-{
-}
-
-
-#ifdef CPPUNIT_ENABLE_SOURCELINE_DEPRECATED
-Exception::Exception( std::string message,
- long lineNumber,
- std::string fileName )
- : m_message( message )
- , m_sourceLine( fileName, lineNumber )
-{
-}
-#endif
-
-
-Exception::~Exception() throw()
-{
-}
-
-
-Exception &
-Exception::operator =( const Exception& other )
-{
-// Don't call superclass operator =(). VC++ STL implementation
-// has a bug. It calls the destructor and copy constructor of
-// std::exception() which reset the virtual table to std::exception.
-// SuperClass::operator =(other);
-
- if ( &other != this )
- {
- m_message = other.m_message;
- m_sourceLine = other.m_sourceLine;
- }
-
- return *this;
-}
-
-
-const char*
-Exception::what() const throw()
-{
- Exception *mutableThis = CPPUNIT_CONST_CAST( Exception *, this );
- mutableThis->m_whatMessage = m_message.shortDescription() + "\n" +
- m_message.details();
- return m_whatMessage.c_str();
-}
-
-
-SourceLine
-Exception::sourceLine() const
-{
- return m_sourceLine;
-}
-
-
-Message
-Exception::message() const
-{
- return m_message;
-}
-
-
-void
-Exception::setMessage( const Message &message )
-{
- m_message = message;
-}
-
-
-#ifdef CPPUNIT_ENABLE_SOURCELINE_DEPRECATED
-long
-Exception::lineNumber() const
-{
- return m_sourceLine.isValid() ? m_sourceLine.lineNumber() :
- UNKNOWNLINENUMBER;
-}
-
-
-std::string
-Exception::fileName() const
-{
- return m_sourceLine.isValid() ? m_sourceLine.fileName() :
- UNKNOWNFILENAME;
-}
-#endif
-
-
-Exception *
-Exception::clone() const
-{
- return new Exception( *this );
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/Message.cpp b/3rdParty/CppUnit/src/Message.cpp
deleted file mode 100644
index 9d6a0e9..0000000
--- a/3rdParty/CppUnit/src/Message.cpp
+++ /dev/null
@@ -1,170 +0,0 @@
-#include <cppunit/Message.h>
-#include <stdexcept>
-
-
-CPPUNIT_NS_BEGIN
-
-
-Message::Message()
-{
-}
-
-Message::Message( const Message &other )
-{
- *this = other;
-}
-
-
-Message::Message( const std::string &shortDescription )
- : m_shortDescription( shortDescription )
-{
-}
-
-
-Message::Message( const std::string &shortDescription,
- const std::string &detail1 )
- : m_shortDescription( shortDescription )
-{
- addDetail( detail1 );
-}
-
-
-Message::Message( const std::string &shortDescription,
- const std::string &detail1,
- const std::string &detail2 )
- : m_shortDescription( shortDescription )
-{
- addDetail( detail1, detail2 );
-}
-
-
-Message::Message( const std::string &shortDescription,
- const std::string &detail1,
- const std::string &detail2,
- const std::string &detail3 )
- : m_shortDescription( shortDescription )
-{
- addDetail( detail1, detail2, detail3 );
-}
-
-Message &
-Message::operator =( const Message &other )
-{
- if ( this != &other )
- {
- m_shortDescription = other.m_shortDescription.c_str();
- m_details.clear();
- Details::const_iterator it = other.m_details.begin();
- Details::const_iterator itEnd = other.m_details.end();
- while ( it != itEnd )
- m_details.push_back( (*it++).c_str() );
- }
-
- return *this;
-}
-
-
-const std::string &
-Message::shortDescription() const
-{
- return m_shortDescription;
-}
-
-
-int
-Message::detailCount() const
-{
- return m_details.size();
-}
-
-
-std::string
-Message::detailAt( int index ) const
-{
- if ( index < 0 || index >= detailCount() )
- throw std::invalid_argument( "Message::detailAt() : invalid index" );
-
- return m_details[ index ];
-}
-
-
-std::string
-Message::details() const
-{
- std::string details;
- for ( Details::const_iterator it = m_details.begin(); it != m_details.end(); ++it )
- {
- details += "- ";
- details += *it;
- details += '\n';
- }
- return details;
-}
-
-
-void
-Message::clearDetails()
-{
- m_details.clear();
-}
-
-
-void
-Message::addDetail( const std::string &detail )
-{
- m_details.push_back( detail );
-}
-
-
-void
-Message::addDetail( const std::string &detail1,
- const std::string &detail2 )
-{
- addDetail( detail1 );
- addDetail( detail2 );
-}
-
-
-void
-Message::addDetail( const std::string &detail1,
- const std::string &detail2,
- const std::string &detail3 )
-{
- addDetail( detail1, detail2 );
- addDetail( detail3 );
-}
-
-
-void
-Message::addDetail( const Message &message )
-{
- m_details.insert( m_details.end(),
- message.m_details.begin(),
- message.m_details.end() );
-}
-
-
-void
-Message::setShortDescription( const std::string &shortDescription )
-{
- m_shortDescription = shortDescription;
-}
-
-
-bool
-Message::operator ==( const Message &other ) const
-{
- return m_shortDescription == other.m_shortDescription &&
- m_details == other.m_details;
-}
-
-
-bool
-Message::operator !=( const Message &other ) const
-{
- return !( *this == other );
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/Protector.cpp b/3rdParty/CppUnit/src/Protector.cpp
deleted file mode 100644
index 5c171ec..0000000
--- a/3rdParty/CppUnit/src/Protector.cpp
+++ /dev/null
@@ -1,86 +0,0 @@
-#include <cppunit/Exception.h>
-#include <cppunit/Message.h>
-#include <cppunit/Protector.h>
-#include <cppunit/TestResult.h>
-#include "ProtectorContext.h"
-#include <memory>
-
-CPPUNIT_NS_BEGIN
-
-Functor::~Functor()
-{
-}
-
-
-Protector::~Protector()
-{
-}
-
-
-void
-Protector::reportError( const ProtectorContext &context,
- const Exception &error ) const
-{
- std::auto_ptr<Exception> actualError( error.clone() );
- actualError->setMessage( actualMessage( actualError->message(), context ) );
- context.m_result->addError( context.m_test,
- actualError.release() );
-}
-
-
-
-void
-Protector::reportError( const ProtectorContext &context,
- const Message &message,
- const SourceLine &sourceLine ) const
-{
- reportError( context, Exception( message, sourceLine ) );
-}
-
-
-void
-Protector::reportFailure( const ProtectorContext &context,
- const Exception &failure ) const
-{
- std::auto_ptr<Exception> actualFailure( failure.clone() );
- actualFailure->setMessage( actualMessage( actualFailure->message(), context ) );
- context.m_result->addFailure( context.m_test,
- actualFailure.release() );
-}
-
-
-Message
-Protector::actualMessage( const Message &message,
- const ProtectorContext &context ) const
-{
- Message theActualMessage;
- if ( context.m_shortDescription.empty() )
- theActualMessage = message;
- else
- {
- theActualMessage = Message( context.m_shortDescription,
- message.shortDescription() );
- theActualMessage.addDetail( message );
- }
-
- return theActualMessage;
-}
-
-
-
-
-ProtectorGuard::ProtectorGuard( TestResult *result,
- Protector *protector )
- : m_result( result )
-{
- m_result->pushProtector( protector );
-}
-
-
-ProtectorGuard::~ProtectorGuard()
-{
- m_result->popProtector();
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/ProtectorChain.cpp b/3rdParty/CppUnit/src/ProtectorChain.cpp
deleted file mode 100644
index f528341..0000000
--- a/3rdParty/CppUnit/src/ProtectorChain.cpp
+++ /dev/null
@@ -1,86 +0,0 @@
-#include "ProtectorChain.h"
-
-CPPUNIT_NS_BEGIN
-
-
-class ProtectorChain::ProtectFunctor : public Functor
-{
-public:
- ProtectFunctor( Protector *protector,
- const Functor &functor,
- const ProtectorContext &context )
- : m_protector( protector )
- , m_functor( functor )
- , m_context( context )
- {
- }
-
- bool operator()() const
- {
- return m_protector->protect( m_functor, m_context );
- }
-
-private:
- Protector *m_protector;
- const Functor &m_functor;
- const ProtectorContext &m_context;
-};
-
-
-ProtectorChain::~ProtectorChain()
-{
- while ( count() > 0 )
- pop();
-}
-
-
-void
-ProtectorChain::push( Protector *protector )
-{
- m_protectors.push_back( protector );
-}
-
-
-void
-ProtectorChain::pop()
-{
- delete m_protectors.back();
- m_protectors.pop_back();
-}
-
-int
-ProtectorChain::count() const
-{
- return m_protectors.size();
-}
-
-
-bool
-ProtectorChain::protect( const Functor &functor,
- const ProtectorContext &context )
-{
- if ( m_protectors.empty() )
- return functor();
-
- Functors functors;
- for ( int index = m_protectors.size()-1; index >= 0; --index )
- {
- const Functor &protectedFunctor =
- functors.empty() ? functor : *functors.back();
-
- functors.push_back( new ProtectFunctor( m_protectors[index],
- protectedFunctor,
- context ) );
- }
-
- const Functor &outermostFunctor = *functors.back();
- bool succeed = outermostFunctor();
-
- for ( unsigned int deletingIndex = 0; deletingIndex < m_protectors.size(); ++deletingIndex )
- delete functors[deletingIndex];
-
- return succeed;
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/ProtectorChain.h b/3rdParty/CppUnit/src/ProtectorChain.h
deleted file mode 100644
index 711b56f..0000000
--- a/3rdParty/CppUnit/src/ProtectorChain.h
+++ /dev/null
@@ -1,51 +0,0 @@
-#ifndef CPPUNIT_PROTECTORCHAIN_H
-#define CPPUNIT_PROTECTORCHAIN_H
-
-#include <cppunit/Protector.h>
-#include <cppunit/portability/CppUnitDeque.h>
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( push )
-#pragma warning( disable: 4251 ) // X needs to have dll-interface to be used by clients of class Z
-#endif
-
-
-CPPUNIT_NS_BEGIN
-
-/*! \brief Protector chain (Implementation).
- * Implementation detail.
- * \internal Protector that protect a Functor using a chain of nested Protector.
- */
-class CPPUNIT_API ProtectorChain : public Protector
-{
-public:
- ~ProtectorChain();
-
- void push( Protector *protector );
-
- void pop();
-
- int count() const;
-
- bool protect( const Functor &functor,
- const ProtectorContext &context );
-
-private:
- class ProtectFunctor;
-
-private:
- typedef CppUnitDeque<Protector *> Protectors;
- Protectors m_protectors;
-
- typedef CppUnitDeque<Functor *> Functors;
-};
-
-
-CPPUNIT_NS_END
-
-#if CPPUNIT_NEED_DLL_DECL
-#pragma warning( pop )
-#endif
-
-#endif // CPPUNIT_PROTECTORCHAIN_H
-
diff --git a/3rdParty/CppUnit/src/ProtectorContext.h b/3rdParty/CppUnit/src/ProtectorContext.h
deleted file mode 100644
index c3d496c..0000000
--- a/3rdParty/CppUnit/src/ProtectorContext.h
+++ /dev/null
@@ -1,38 +0,0 @@
-#ifndef CPPUNIT_PROTECTORCONTEXT_H
-#define CPPUNIT_PROTECTORCONTEXT_H
-
-#include <cppunit/Portability.h>
-#include <string>
-
-CPPUNIT_NS_BEGIN
-
-class Test;
-class TestResult;
-
-
-/*! \brief Protector context (Implementation).
- * Implementation detail.
- * \internal Context use to report failure in Protector.
- */
-class CPPUNIT_API ProtectorContext
-{
-public:
- ProtectorContext( Test *test,
- TestResult *result,
- const std::string &shortDescription )
- : m_test( test )
- , m_result( result )
- , m_shortDescription( shortDescription )
- {
- }
-
- Test *m_test;
- TestResult *m_result;
- std::string m_shortDescription;
-};
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_PROTECTORCONTEXT_H
-
diff --git a/3rdParty/CppUnit/src/SourceLine.cpp b/3rdParty/CppUnit/src/SourceLine.cpp
deleted file mode 100644
index dfadae3..0000000
--- a/3rdParty/CppUnit/src/SourceLine.cpp
+++ /dev/null
@@ -1,81 +0,0 @@
-#include <cppunit/SourceLine.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-SourceLine::SourceLine() :
- m_lineNumber( -1 )
-{
-}
-
-
-SourceLine::SourceLine( const SourceLine &other )
- : m_fileName( other.m_fileName.c_str() )
- , m_lineNumber( other.m_lineNumber )
-{
-}
-
-
-SourceLine::SourceLine( const std::string &fileName,
- int lineNumber )
- : m_fileName( fileName.c_str() )
- , m_lineNumber( lineNumber )
-{
-}
-
-
-SourceLine &
-SourceLine::operator =( const SourceLine &other )
-{
- if ( this != &other )
- {
- m_fileName = other.m_fileName.c_str();
- m_lineNumber = other.m_lineNumber;
- }
- return *this;
-}
-
-
-SourceLine::~SourceLine()
-{
-}
-
-
-bool
-SourceLine::isValid() const
-{
- return !m_fileName.empty();
-}
-
-
-int
-SourceLine::lineNumber() const
-{
- return m_lineNumber;
-}
-
-
-std::string
-SourceLine::fileName() const
-{
- return m_fileName;
-}
-
-
-bool
-SourceLine::operator ==( const SourceLine &other ) const
-{
- return m_fileName == other.m_fileName &&
- m_lineNumber == other.m_lineNumber;
-}
-
-
-bool
-SourceLine::operator !=( const SourceLine &other ) const
-{
- return !( *this == other );
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/StringTools.cpp b/3rdParty/CppUnit/src/StringTools.cpp
deleted file mode 100644
index dc995d8..0000000
--- a/3rdParty/CppUnit/src/StringTools.cpp
+++ /dev/null
@@ -1,80 +0,0 @@
-#include <cppunit/tools/StringTools.h>
-#include <cppunit/portability/Stream.h>
-#include <algorithm>
-
-
-CPPUNIT_NS_BEGIN
-
-
-std::string
-StringTools::toString( int value )
-{
- OStringStream stream;
- stream << value;
- return stream.str();
-}
-
-
-std::string
-StringTools::toString( double value )
-{
- OStringStream stream;
- stream << value;
- return stream.str();
-}
-
-
-StringTools::Strings
-StringTools::split( const std::string &text,
- char separator )
-{
- Strings splittedText;
-
- std::string::const_iterator itStart = text.begin();
- while ( !text.empty() )
- {
- std::string::const_iterator itSeparator = std::find( itStart,
- text.end(),
- separator );
- splittedText.push_back( text.substr( itStart - text.begin(),
- itSeparator - itStart ) );
- if ( itSeparator == text.end() )
- break;
- itStart = itSeparator +1;
- }
-
- return splittedText;
-}
-
-
-std::string
-StringTools::wrap( const std::string &text,
- int wrapColumn )
-{
- const char lineBreak = '\n';
- Strings lines = split( text, lineBreak );
-
- std::string wrapped;
- for ( Strings::const_iterator it = lines.begin(); it != lines.end(); ++it )
- {
- if ( it != lines.begin() )
- wrapped += lineBreak;
-
- const std::string &line = *it;
- unsigned int index =0;
- while ( index < line.length() )
- {
- std::string lineSlice( line.substr( index, wrapColumn ) );
- wrapped += lineSlice;
- index += wrapColumn;
- if ( index < line.length() )
- wrapped += lineBreak;
- }
- }
-
- return wrapped;
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/SynchronizedObject.cpp b/3rdParty/CppUnit/src/SynchronizedObject.cpp
deleted file mode 100644
index 1764538..0000000
--- a/3rdParty/CppUnit/src/SynchronizedObject.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-#include <cppunit/SynchronizedObject.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-SynchronizedObject::SynchronizedObject( SynchronizationObject *syncObject )
- : m_syncObject( syncObject == 0 ? new SynchronizationObject() :
- syncObject )
-{
-}
-
-
-SynchronizedObject::~SynchronizedObject()
-{
- delete m_syncObject;
-}
-
-
-/** Accept a new synchronization object for protection of this instance
- * TestResult assumes ownership of the object
- */
-void
-SynchronizedObject::setSynchronizationObject( SynchronizationObject *syncObject )
-{
- delete m_syncObject;
- m_syncObject = syncObject;
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/Test.cpp b/3rdParty/CppUnit/src/Test.cpp
deleted file mode 100644
index fef8be7..0000000
--- a/3rdParty/CppUnit/src/Test.cpp
+++ /dev/null
@@ -1,97 +0,0 @@
-#include <cppunit/Portability.h>
-#include <cppunit/Test.h>
-#include <cppunit/TestPath.h>
-#include <stdexcept>
-
-
-CPPUNIT_NS_BEGIN
-
-
-Test *
-Test::getChildTestAt( int index ) const
-{
- checkIsValidIndex( index );
- return doGetChildTestAt( index );
-}
-
-
-Test *
-Test::findTest( const std::string &testName ) const
-{
- TestPath path;
- Test *mutableThis = CPPUNIT_CONST_CAST( Test *, this );
- mutableThis->findTestPath( testName, path );
- if ( !path.isValid() )
- throw std::invalid_argument( "No test named <" + testName + "> found in test <"
- + getName() + ">." );
- return path.getChildTest();
-}
-
-
-bool
-Test::findTestPath( const std::string &testName,
- TestPath &testPath ) const
-{
- Test *mutableThis = CPPUNIT_CONST_CAST( Test *, this );
- if ( getName() == testName )
- {
- testPath.add( mutableThis );
- return true;
- }
-
- int childCount = getChildTestCount();
- for ( int childIndex =0; childIndex < childCount; ++childIndex )
- {
- if ( getChildTestAt( childIndex )->findTestPath( testName, testPath ) )
- {
- testPath.insert( mutableThis, 0 );
- return true;
- }
- }
-
- return false;
-}
-
-
-bool
-Test::findTestPath( const Test *test,
- TestPath &testPath ) const
-{
- Test *mutableThis = CPPUNIT_CONST_CAST( Test *, this );
- if ( this == test )
- {
- testPath.add( mutableThis );
- return true;
- }
-
- int childCount = getChildTestCount();
- for ( int childIndex =0; childIndex < childCount; ++childIndex )
- {
- if ( getChildTestAt( childIndex )->findTestPath( test, testPath ) )
- {
- testPath.insert( mutableThis, 0 );
- return true;
- }
- }
-
- return false;
-}
-
-
-TestPath
-Test::resolveTestPath( const std::string &testPath ) const
-{
- Test *mutableThis = CPPUNIT_CONST_CAST( Test *, this );
- return TestPath( mutableThis, testPath );
-}
-
-
-void
-Test::checkIsValidIndex( int index ) const
-{
- if ( index < 0 || index >= getChildTestCount() )
- throw std::out_of_range( "Test::checkValidIndex(): invalid index" );
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/TestCase.cpp b/3rdParty/CppUnit/src/TestCase.cpp
deleted file mode 100644
index 13c0525..0000000
--- a/3rdParty/CppUnit/src/TestCase.cpp
+++ /dev/null
@@ -1,137 +0,0 @@
-#include <cppunit/Portability.h>
-#include <cppunit/Exception.h>
-#include <cppunit/Protector.h>
-#include <cppunit/TestCase.h>
-#include <cppunit/TestResult.h>
-#include <stdexcept>
-
-#if CPPUNIT_USE_TYPEINFO_NAME
-# include <typeinfo>
-#endif
-
-CPPUNIT_NS_BEGIN
-
-/*! \brief Functor to call test case method (Implementation).
- *
- * Implementation detail.
- */
-class TestCaseMethodFunctor : public Functor
-{
-public:
- typedef void (TestCase::*Method)();
-
- TestCaseMethodFunctor( TestCase *target,
- Method method )
- : m_target( target )
- , m_method( method )
- {
- }
-
- bool operator()() const
- {
- (m_target->*m_method)();
- return true;
- }
-
-private:
- TestCase *m_target;
- Method m_method;
-};
-
-
-/** Constructs a test case.
- * \param name the name of the TestCase.
- **/
-TestCase::TestCase( const std::string &name )
- : m_name(name)
-{
-}
-
-
-/// Run the test and catch any exceptions that are triggered by it
-void
-TestCase::run( TestResult *result )
-{
- result->startTest(this);
-/*
- try {
- setUp();
-
- try {
- runTest();
- }
- catch ( Exception &e ) {
- Exception *copy = e.clone();
- result->addFailure( this, copy );
- }
- catch ( std::exception &e ) {
- result->addError( this, new Exception( Message( "uncaught std::exception",
- e.what() ) ) );
- }
- catch (...) {
- Exception *e = new Exception( Message( "uncaught unknown exception" ) );
- result->addError( this, e );
- }
-
- try {
- tearDown();
- }
- catch (...) {
- result->addError( this, new Exception( Message( "tearDown() failed" ) ) );
- }
- }
- catch (...) {
- result->addError( this, new Exception( Message( "setUp() failed" ) ) );
- }
-*/
- if ( result->protect( TestCaseMethodFunctor( this, &TestCase::setUp ),
- this,
- "setUp() failed" ) )
- {
- result->protect( TestCaseMethodFunctor( this, &TestCase::runTest ),
- this );
- }
-
- result->protect( TestCaseMethodFunctor( this, &TestCase::tearDown ),
- this,
- "tearDown() failed" );
-
- result->endTest( this );
-}
-
-
-/// All the work for runTest is deferred to subclasses
-void
-TestCase::runTest()
-{
-}
-
-
-/** Constructs a test case for a suite.
- * \deprecated This constructor was used by fixture when TestFixture did not exist.
- * Have your fixture inherits TestFixture instead of TestCase.
- * \internal
- * This TestCase was intended for use by the TestCaller and should not
- * be used by a test case for which run() is called.
- **/
-TestCase::TestCase()
- : m_name( "" )
-{
-}
-
-
-/// Destructs a test case
-TestCase::~TestCase()
-{
-}
-
-
-/// Returns the name of the test case
-std::string
-TestCase::getName() const
-{
- return m_name;
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/TestComposite.cpp b/3rdParty/CppUnit/src/TestComposite.cpp
deleted file mode 100644
index 4768791..0000000
--- a/3rdParty/CppUnit/src/TestComposite.cpp
+++ /dev/null
@@ -1,77 +0,0 @@
-#include <cppunit/TestComposite.h>
-#include <cppunit/TestResult.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-TestComposite::TestComposite( const std::string &name )
- : m_name( name )
-{
-}
-
-
-TestComposite::~TestComposite()
-{
-}
-
-
-void
-TestComposite::run( TestResult *result )
-{
- doStartSuite( result );
- doRunChildTests( result );
- doEndSuite( result );
-}
-
-
-int
-TestComposite::countTestCases() const
-{
- int count = 0;
-
- int childCount = getChildTestCount();
- for ( int index =0; index < childCount; ++index )
- count += getChildTestAt( index )->countTestCases();
-
- return count;
-}
-
-
-std::string
-TestComposite::getName() const
-{
- return m_name;
-}
-
-
-void
-TestComposite::doStartSuite( TestResult *controller )
-{
- controller->startSuite( this );
-}
-
-
-void
-TestComposite::doRunChildTests( TestResult *controller )
-{
- int childCount = getChildTestCount();
- for ( int index =0; index < childCount; ++index )
- {
- if ( controller->shouldStop() )
- break;
-
- getChildTestAt( index )->run( controller );
- }
-}
-
-
-void
-TestComposite::doEndSuite( TestResult *controller )
-{
- controller->endSuite( this );
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/TestFactoryRegistry.cpp b/3rdParty/CppUnit/src/TestFactoryRegistry.cpp
deleted file mode 100644
index 3457da3..0000000
--- a/3rdParty/CppUnit/src/TestFactoryRegistry.cpp
+++ /dev/null
@@ -1,161 +0,0 @@
-#include <cppunit/config/SourcePrefix.h>
-#include <cppunit/extensions/TestFactoryRegistry.h>
-#include <cppunit/portability/CppUnitMap.h>
-#include <cppunit/TestSuite.h>
-#include <assert.h>
-
-
-CPPUNIT_NS_BEGIN
-
-/*! \brief (INTERNAL) List of all TestFactoryRegistry.
- */
-class TestFactoryRegistryList
-{
-private:
- typedef CppUnitMap<std::string, TestFactoryRegistry *, std::less<std::string> > Registries;
- Registries m_registries;
-
- enum State {
- doNotChange =0,
- notCreated,
- exist,
- destroyed
- };
-
- static State stateFlag( State newState = doNotChange )
- {
- static State state = notCreated;
- if ( newState != doNotChange )
- state = newState;
- return state;
- }
-
- static TestFactoryRegistryList *getInstance()
- {
- static TestFactoryRegistryList list;
- return &list;
- }
-
- TestFactoryRegistry *getInternalRegistry( const std::string &name )
- {
- Registries::const_iterator foundIt = m_registries.find( name );
- if ( foundIt == m_registries.end() )
- {
- TestFactoryRegistry *factory = new TestFactoryRegistry( name );
- m_registries.insert( std::pair<const std::string, TestFactoryRegistry*>( name, factory ) );
- return factory;
- }
- return (*foundIt).second;
- }
-
-public:
- TestFactoryRegistryList()
- {
- stateFlag( exist );
- }
-
- ~TestFactoryRegistryList()
- {
- for ( Registries::iterator it = m_registries.begin(); it != m_registries.end(); ++it )
- delete (*it).second;
-
- stateFlag( destroyed );
- }
-
- static TestFactoryRegistry *getRegistry( const std::string &name )
- {
- // If the following assertion failed, then TestFactoryRegistry::getRegistry()
- // was called during static variable destruction without checking the registry
- // validity beforehand using TestFactoryRegistry::isValid() beforehand.
- assert( isValid() );
- if ( !isValid() ) // release mode
- return NULL; // => force CRASH
-
- return getInstance()->getInternalRegistry( name );
- }
-
- static bool isValid()
- {
- return stateFlag() != destroyed;
- }
-};
-
-
-
-TestFactoryRegistry::TestFactoryRegistry( std::string name ) :
- m_name( name )
-{
-}
-
-
-TestFactoryRegistry::~TestFactoryRegistry()
-{
-}
-
-
-TestFactoryRegistry &
-TestFactoryRegistry::getRegistry( const std::string &name )
-{
- return *TestFactoryRegistryList::getRegistry( name );
-}
-
-
-void
-TestFactoryRegistry::registerFactory( const std::string &,
- TestFactory *factory )
-{
- registerFactory( factory );
-}
-
-
-void
-TestFactoryRegistry::registerFactory( TestFactory *factory )
-{
- m_factories.insert( factory );
-}
-
-
-void
-TestFactoryRegistry::unregisterFactory( TestFactory *factory )
-{
- m_factories.erase( factory );
-}
-
-
-void
-TestFactoryRegistry::addRegistry( const std::string &name )
-{
- registerFactory( &getRegistry( name ) );
-}
-
-
-Test *
-TestFactoryRegistry::makeTest()
-{
- TestSuite *suite = new TestSuite( m_name );
- addTestToSuite( suite );
- return suite;
-}
-
-
-void
-TestFactoryRegistry::addTestToSuite( TestSuite *suite )
-{
- for ( Factories::iterator it = m_factories.begin();
- it != m_factories.end();
- ++it )
- {
- TestFactory *factory = *it;
- suite->addTest( factory->makeTest() );
- }
-}
-
-
-bool
-TestFactoryRegistry::isValid()
-{
- return TestFactoryRegistryList::isValid();
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/TestFailure.cpp b/3rdParty/CppUnit/src/TestFailure.cpp
deleted file mode 100644
index e31e138..0000000
--- a/3rdParty/CppUnit/src/TestFailure.cpp
+++ /dev/null
@@ -1,71 +0,0 @@
-#include <cppunit/Exception.h>
-#include <cppunit/Test.h>
-#include <cppunit/TestFailure.h>
-
-CPPUNIT_NS_BEGIN
-
-
-/// Constructs a TestFailure with the given test and exception.
-TestFailure::TestFailure( Test *failedTest,
- Exception *thrownException,
- bool isError ) :
- m_failedTest( failedTest ),
- m_thrownException( thrownException ),
- m_isError( isError )
-{
-}
-
-/// Deletes the owned exception.
-TestFailure::~TestFailure()
-{
- delete m_thrownException;
-}
-
-/// Gets the failed test.
-Test *
-TestFailure::failedTest() const
-{
- return m_failedTest;
-}
-
-
-/// Gets the thrown exception. Never \c NULL.
-Exception *
-TestFailure::thrownException() const
-{
- return m_thrownException;
-}
-
-
-/// Gets the failure location.
-SourceLine
-TestFailure::sourceLine() const
-{
- return m_thrownException->sourceLine();
-}
-
-
-/// Indicates if the failure is a failed assertion or an error.
-bool
-TestFailure::isError() const
-{
- return m_isError;
-}
-
-
-/// Gets the name of the failed test.
-std::string
-TestFailure::failedTestName() const
-{
- return m_failedTest->getName();
-}
-
-
-TestFailure *
-TestFailure::clone() const
-{
- return new TestFailure( m_failedTest, m_thrownException->clone(), m_isError );
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/TestLeaf.cpp b/3rdParty/CppUnit/src/TestLeaf.cpp
deleted file mode 100644
index 3d8767c..0000000
--- a/3rdParty/CppUnit/src/TestLeaf.cpp
+++ /dev/null
@@ -1,28 +0,0 @@
-#include <cppunit/TestLeaf.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-int
-TestLeaf::countTestCases() const
-{
- return 1;
-}
-
-
-int
-TestLeaf::getChildTestCount() const
-{
- return 0;
-}
-
-
-Test *
-TestLeaf::doGetChildTestAt( int index ) const
-{
- checkIsValidIndex( index );
- return NULL; // never called, checkIsValidIndex() always throw.
-}
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/TestNamer.cpp b/3rdParty/CppUnit/src/TestNamer.cpp
deleted file mode 100644
index eec9be9..0000000
--- a/3rdParty/CppUnit/src/TestNamer.cpp
+++ /dev/null
@@ -1,44 +0,0 @@
-#include <cppunit/extensions/TestNamer.h>
-#include <cppunit/extensions/TypeInfoHelper.h>
-#include <string>
-
-
-CPPUNIT_NS_BEGIN
-
-
-#if CPPUNIT_HAVE_RTTI
-TestNamer::TestNamer( const std::type_info &typeInfo )
-{
- m_fixtureName = TypeInfoHelper::getClassName( typeInfo );
-}
-#endif
-
-
-TestNamer::TestNamer( const std::string &fixtureName )
- : m_fixtureName( fixtureName )
-{
-}
-
-
-TestNamer::~TestNamer()
-{
-}
-
-
-std::string
-TestNamer::getFixtureName() const
-{
- return m_fixtureName;
-}
-
-
-std::string
-TestNamer::getTestNameFor( const std::string &testMethodName ) const
-{
- return getFixtureName() + "::" + testMethodName;
-}
-
-
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/TestPath.cpp b/3rdParty/CppUnit/src/TestPath.cpp
deleted file mode 100644
index a2783a2..0000000
--- a/3rdParty/CppUnit/src/TestPath.cpp
+++ /dev/null
@@ -1,254 +0,0 @@
-#include <cppunit/Portability.h>
-#include <cppunit/Test.h>
-#include <cppunit/TestPath.h>
-#include <stdexcept>
-
-
-CPPUNIT_NS_BEGIN
-
-
-TestPath::TestPath()
-{
-}
-
-
-TestPath::TestPath( Test *root )
-{
- add( root );
-}
-
-
-TestPath::TestPath( const TestPath &other,
- int indexFirst,
- int count )
-{
- int countAdjustment = 0;
- if ( indexFirst < 0 )
- {
- countAdjustment = indexFirst;
- indexFirst = 0;
- }
-
- if ( count < 0 )
- count = other.getTestCount();
- else
- count += countAdjustment;
-
- int index = indexFirst;
- while ( count-- > 0 && index < other.getTestCount() )
- add( other.getTestAt( index++ ) );
-}
-
-
-TestPath::TestPath( Test *searchRoot,
- const std::string &pathAsString )
-{
- PathTestNames testNames;
-
- Test *parentTest = findActualRoot( searchRoot, pathAsString, testNames );
- add( parentTest );
-
- for ( unsigned int index = 1; index < testNames.size(); ++index )
- {
- bool childFound = false;
- for ( int childIndex =0; childIndex < parentTest->getChildTestCount(); ++childIndex )
- {
- if ( parentTest->getChildTestAt( childIndex )->getName() == testNames[index] )
- {
- childFound = true;
- parentTest = parentTest->getChildTestAt( childIndex );
- break;
- }
- }
-
- if ( !childFound )
- throw std::invalid_argument( "TestPath::TestPath(): failed to resolve test name <"+
- testNames[index] + "> of path <" + pathAsString + ">" );
-
- add( parentTest );
- }
-}
-
-
-TestPath::TestPath( const TestPath &other )
- : m_tests( other.m_tests )
-{
-}
-
-
-TestPath::~TestPath()
-{
-}
-
-
-TestPath &
-TestPath::operator =( const TestPath &other )
-{
- if ( &other != this )
- m_tests = other.m_tests;
- return *this;
-}
-
-
-bool
-TestPath::isValid() const
-{
- return getTestCount() > 0;
-}
-
-
-void
-TestPath::add( Test *test )
-{
- m_tests.push_back( test );
-}
-
-
-void
-TestPath::add( const TestPath &path )
-{
- for ( int index =0; index < path.getTestCount(); ++index )
- add( path.getTestAt( index ) );
-}
-
-
-void
-TestPath::insert( Test *test,
- int index )
-{
- if ( index < 0 || index > getTestCount() )
- throw std::out_of_range( "TestPath::insert(): index out of range" );
- m_tests.insert( m_tests.begin() + index, test );
-}
-
-void
-TestPath::insert( const TestPath &path,
- int index )
-{
- int itemIndex = path.getTestCount() -1;
- while ( itemIndex >= 0 )
- insert( path.getTestAt( itemIndex-- ), index );
-}
-
-
-void
-TestPath::removeTests()
-{
- while ( isValid() )
- removeTest( 0 );
-}
-
-
-void
-TestPath::removeTest( int index )
-{
- checkIndexValid( index );
- m_tests.erase( m_tests.begin() + index );
-}
-
-
-void
-TestPath::up()
-{
- checkIndexValid( 0 );
- removeTest( getTestCount() -1 );
-}
-
-
-int
-TestPath::getTestCount() const
-{
- return m_tests.size();
-}
-
-
-Test *
-TestPath::getTestAt( int index ) const
-{
- checkIndexValid( index );
- return m_tests[index];
-}
-
-
-Test *
-TestPath::getChildTest() const
-{
- return getTestAt( getTestCount() -1 );
-}
-
-
-void
-TestPath::checkIndexValid( int index ) const
-{
- if ( index < 0 || index >= getTestCount() )
- throw std::out_of_range( "TestPath::checkIndexValid(): index out of range" );
-}
-
-
-std::string
-TestPath::toString() const
-{
- std::string asString( "/" );
- for ( int index =0; index < getTestCount(); ++index )
- {
- if ( index > 0 )
- asString += '/';
- asString += getTestAt(index)->getName();
- }
-
- return asString;
-}
-
-
-Test *
-TestPath::findActualRoot( Test *searchRoot,
- const std::string &pathAsString,
- PathTestNames &testNames )
-{
- bool isRelative = splitPathString( pathAsString, testNames );
-
- if ( isRelative && pathAsString.empty() )
- return searchRoot;
-
- if ( testNames.empty() )
- throw std::invalid_argument( "TestPath::TestPath(): invalid root or root name in absolute path" );
-
- Test *root = isRelative ? searchRoot->findTest( testNames[0] ) // throw if bad test name
- : searchRoot;
- if ( root->getName() != testNames[0] )
- throw std::invalid_argument( "TestPath::TestPath(): searchRoot does not match path root name" );
-
- return root;
-}
-
-
-bool
-TestPath::splitPathString( const std::string &pathAsString,
- PathTestNames &testNames )
-{
- if ( pathAsString.empty() )
- return true;
-
- bool isRelative = pathAsString[0] != '/';
-
- int index = (isRelative ? 0 : 1);
- while ( true )
- {
- int separatorIndex = pathAsString.find( '/', index );
- if ( separatorIndex >= 0 )
- {
- testNames.push_back( pathAsString.substr( index, separatorIndex - index ) );
- index = separatorIndex + 1;
- }
- else
- {
- testNames.push_back( pathAsString.substr( index ) );
- break;
- }
- }
-
- return isRelative;
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/TestResult.cpp b/3rdParty/CppUnit/src/TestResult.cpp
deleted file mode 100644
index 6be19f1..0000000
--- a/3rdParty/CppUnit/src/TestResult.cpp
+++ /dev/null
@@ -1,196 +0,0 @@
-#include <cppunit/Test.h>
-#include <cppunit/TestFailure.h>
-#include <cppunit/TestListener.h>
-#include <cppunit/TestResult.h>
-#include <cppunit/tools/Algorithm.h>
-#include <algorithm>
-#include "DefaultProtector.h"
-#include "ProtectorChain.h"
-#include "ProtectorContext.h"
-
-CPPUNIT_NS_BEGIN
-
-
-TestResult::TestResult( SynchronizationObject *syncObject )
- : SynchronizedObject( syncObject )
- , m_protectorChain( new ProtectorChain() )
- , m_stop( false )
-{
- m_protectorChain->push( new DefaultProtector() );
-}
-
-
-TestResult::~TestResult()
-{
- delete m_protectorChain;
-}
-
-
-void
-TestResult::reset()
-{
- ExclusiveZone zone( m_syncObject );
- m_stop = false;
-}
-
-
-void
-TestResult::addError( Test *test,
- Exception *e )
-{
- TestFailure failure( test, e, true );
- addFailure( failure );
-}
-
-
-void
-TestResult::addFailure( Test *test, Exception *e )
-{
- TestFailure failure( test, e, false );
- addFailure( failure );
-}
-
-
-void
-TestResult::addFailure( const TestFailure &failure )
-{
- ExclusiveZone zone( m_syncObject );
- for ( TestListeners::iterator it = m_listeners.begin();
- it != m_listeners.end();
- ++it )
- (*it)->addFailure( failure );
-}
-
-
-void
-TestResult::startTest( Test *test )
-{
- ExclusiveZone zone( m_syncObject );
- for ( TestListeners::iterator it = m_listeners.begin();
- it != m_listeners.end();
- ++it )
- (*it)->startTest( test );
-}
-
-
-void
-TestResult::endTest( Test *test )
-{
- ExclusiveZone zone( m_syncObject );
- for ( TestListeners::iterator it = m_listeners.begin();
- it != m_listeners.end();
- ++it )
- (*it)->endTest( test );
-}
-
-
-void
-TestResult::startSuite( Test *test )
-{
- ExclusiveZone zone( m_syncObject );
- for ( TestListeners::iterator it = m_listeners.begin();
- it != m_listeners.end();
- ++it )
- (*it)->startSuite( test );
-}
-
-
-void
-TestResult::endSuite( Test *test )
-{
- ExclusiveZone zone( m_syncObject );
- for ( TestListeners::iterator it = m_listeners.begin();
- it != m_listeners.end();
- ++it )
- (*it)->endSuite( test );
-}
-
-
-bool
-TestResult::shouldStop() const
-{
- ExclusiveZone zone( m_syncObject );
- return m_stop;
-}
-
-
-void
-TestResult::stop()
-{
- ExclusiveZone zone( m_syncObject );
- m_stop = true;
-}
-
-
-void
-TestResult::addListener( TestListener *listener )
-{
- ExclusiveZone zone( m_syncObject );
- m_listeners.push_back( listener );
-}
-
-
-void
-TestResult::removeListener ( TestListener *listener )
-{
- ExclusiveZone zone( m_syncObject );
- removeFromSequence( m_listeners, listener );
-}
-
-
-void
-TestResult::runTest( Test *test )
-{
- startTestRun( test );
- test->run( this );
- endTestRun( test );
-}
-
-
-void
-TestResult::startTestRun( Test *test )
-{
- ExclusiveZone zone( m_syncObject );
- for ( TestListeners::iterator it = m_listeners.begin();
- it != m_listeners.end();
- ++it )
- (*it)->startTestRun( test, this );
-}
-
-
-void
-TestResult::endTestRun( Test *test )
-{
- ExclusiveZone zone( m_syncObject );
- for ( TestListeners::iterator it = m_listeners.begin();
- it != m_listeners.end();
- ++it )
- (*it)->endTestRun( test, this );
-}
-
-
-bool
-TestResult::protect( const Functor &functor,
- Test *test,
- const std::string &shortDescription )
-{
- ProtectorContext context( test, this, shortDescription );
- return m_protectorChain->protect( functor, context );
-}
-
-
-void
-TestResult::pushProtector( Protector *protector )
-{
- m_protectorChain->push( protector );
-}
-
-
-void
-TestResult::popProtector()
-{
- m_protectorChain->pop();
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/TestResultCollector.cpp b/3rdParty/CppUnit/src/TestResultCollector.cpp
deleted file mode 100644
index 4371c50..0000000
--- a/3rdParty/CppUnit/src/TestResultCollector.cpp
+++ /dev/null
@@ -1,117 +0,0 @@
-#include <cppunit/TestFailure.h>
-#include <cppunit/TestResultCollector.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-TestResultCollector::TestResultCollector( SynchronizationObject *syncObject )
- : TestSuccessListener( syncObject )
-{
- reset();
-}
-
-
-TestResultCollector::~TestResultCollector()
-{
- freeFailures();
-}
-
-
-void
-TestResultCollector::freeFailures()
-{
- TestFailures::iterator itFailure = m_failures.begin();
- while ( itFailure != m_failures.end() )
- delete *itFailure++;
- m_failures.clear();
-}
-
-
-void
-TestResultCollector::reset()
-{
- TestSuccessListener::reset();
-
- ExclusiveZone zone( m_syncObject );
- freeFailures();
- m_testErrors = 0;
- m_tests.clear();
-}
-
-
-void
-TestResultCollector::startTest( Test *test )
-{
- ExclusiveZone zone (m_syncObject);
- m_tests.push_back( test );
-}
-
-
-void
-TestResultCollector::addFailure( const TestFailure &failure )
-{
- TestSuccessListener::addFailure( failure );
-
- ExclusiveZone zone( m_syncObject );
- if ( failure.isError() )
- ++m_testErrors;
- m_failures.push_back( failure.clone() );
-}
-
-
-/// Gets the number of run tests.
-int
-TestResultCollector::runTests() const
-{
- ExclusiveZone zone( m_syncObject );
- return m_tests.size();
-}
-
-
-/// Gets the number of detected errors (uncaught exception).
-int
-TestResultCollector::testErrors() const
-{
- ExclusiveZone zone( m_syncObject );
- return m_testErrors;
-}
-
-
-/// Gets the number of detected failures (failed assertion).
-int
-TestResultCollector::testFailures() const
-{
- ExclusiveZone zone( m_syncObject );
- return m_failures.size() - m_testErrors;
-}
-
-
-/// Gets the total number of detected failures.
-int
-TestResultCollector::testFailuresTotal() const
-{
- ExclusiveZone zone( m_syncObject );
- return m_failures.size();
-}
-
-
-/// Returns a the list failures (random access collection).
-const TestResultCollector::TestFailures &
-TestResultCollector::failures() const
-{
- ExclusiveZone zone( m_syncObject );
- return m_failures;
-}
-
-
-const TestResultCollector::Tests &
-TestResultCollector::tests() const
-{
- ExclusiveZone zone( m_syncObject );
- return m_tests;
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/TestRunner.cpp b/3rdParty/CppUnit/src/TestRunner.cpp
deleted file mode 100644
index 8d95a63..0000000
--- a/3rdParty/CppUnit/src/TestRunner.cpp
+++ /dev/null
@@ -1,101 +0,0 @@
-#include <cppunit/config/SourcePrefix.h>
-#include <cppunit/TestRunner.h>
-#include <cppunit/TestPath.h>
-#include <cppunit/TestResult.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-TestRunner::WrappingSuite::WrappingSuite( const std::string &name )
- : TestSuite( name )
-{
-}
-
-
-int
-TestRunner::WrappingSuite::getChildTestCount() const
-{
- if ( hasOnlyOneTest() )
- return getUniqueChildTest()->getChildTestCount();
- return TestSuite::getChildTestCount();
-}
-
-
-std::string
-TestRunner::WrappingSuite::getName() const
-{
- if ( hasOnlyOneTest() )
- return getUniqueChildTest()->getName();
- return TestSuite::getName();
-}
-
-
-Test *
-TestRunner::WrappingSuite::doGetChildTestAt( int index ) const
-{
- if ( hasOnlyOneTest() )
- return getUniqueChildTest()->getChildTestAt( index );
- return TestSuite::doGetChildTestAt( index );
-}
-
-
-void
-TestRunner::WrappingSuite::run( TestResult *result )
-{
- if ( hasOnlyOneTest() )
- getUniqueChildTest()->run( result );
- else
- TestSuite::run( result );
-}
-
-
-bool
-TestRunner::WrappingSuite::hasOnlyOneTest() const
-{
- return TestSuite::getChildTestCount() == 1;
-}
-
-
-Test *
-TestRunner::WrappingSuite::getUniqueChildTest() const
-{
- return TestSuite::doGetChildTestAt( 0 );
-}
-
-
-
-
-
-TestRunner::TestRunner()
- : m_suite( new WrappingSuite() )
-{
-}
-
-
-TestRunner::~TestRunner()
-{
- delete m_suite;
-}
-
-
-void
-TestRunner::addTest( Test *test )
-{
- m_suite->addTest( test );
-}
-
-
-void
-TestRunner::run( TestResult &controller,
- const std::string &testPath )
-{
- TestPath path = m_suite->resolveTestPath( testPath );
- Test *testToRun = path.getChildTest();
-
- controller.runTest( testToRun );
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/TestSuccessListener.cpp b/3rdParty/CppUnit/src/TestSuccessListener.cpp
deleted file mode 100644
index a5572a9..0000000
--- a/3rdParty/CppUnit/src/TestSuccessListener.cpp
+++ /dev/null
@@ -1,44 +0,0 @@
-#include <cppunit/TestSuccessListener.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-TestSuccessListener::TestSuccessListener( SynchronizationObject *syncObject )
- : SynchronizedObject( syncObject )
- , m_success( true )
-{
-}
-
-
-TestSuccessListener::~TestSuccessListener()
-{
-}
-
-
-void
-TestSuccessListener::reset()
-{
- ExclusiveZone zone( m_syncObject );
- m_success = true;
-}
-
-
-void
-TestSuccessListener::addFailure( const TestFailure & )
-{
- ExclusiveZone zone( m_syncObject );
- m_success = false;
-}
-
-
-bool
-TestSuccessListener::wasSuccessful() const
-{
- ExclusiveZone zone( m_syncObject );
- return m_success;
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/TestSuite.cpp b/3rdParty/CppUnit/src/TestSuite.cpp
deleted file mode 100644
index 8dd2ea6..0000000
--- a/3rdParty/CppUnit/src/TestSuite.cpp
+++ /dev/null
@@ -1,64 +0,0 @@
-#include <cppunit/config/SourcePrefix.h>
-#include <cppunit/TestSuite.h>
-#include <cppunit/TestResult.h>
-
-CPPUNIT_NS_BEGIN
-
-
-/// Default constructor
-TestSuite::TestSuite( std::string name )
- : TestComposite( name )
-{
-}
-
-
-/// Destructor
-TestSuite::~TestSuite()
-{
- deleteContents();
-}
-
-
-/// Deletes all tests in the suite.
-void
-TestSuite::deleteContents()
-{
- int childCount = getChildTestCount();
- for ( int index =0; index < childCount; ++index )
- delete getChildTestAt( index );
-
- m_tests.clear();
-}
-
-
-/// Adds a test to the suite.
-void
-TestSuite::addTest( Test *test )
-{
- m_tests.push_back( test );
-}
-
-
-const CppUnitVector<Test *> &
-TestSuite::getTests() const
-{
- return m_tests;
-}
-
-
-int
-TestSuite::getChildTestCount() const
-{
- return m_tests.size();
-}
-
-
-Test *
-TestSuite::doGetChildTestAt( int index ) const
-{
- return m_tests[index];
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/TestSuiteBuilderContext.cpp b/3rdParty/CppUnit/src/TestSuiteBuilderContext.cpp
deleted file mode 100644
index ff71b52..0000000
--- a/3rdParty/CppUnit/src/TestSuiteBuilderContext.cpp
+++ /dev/null
@@ -1,85 +0,0 @@
-#include <cppunit/TestSuite.h>
-#include <cppunit/extensions/TestFixtureFactory.h>
-#include <cppunit/extensions/TestNamer.h>
-#include <cppunit/extensions/TestSuiteBuilderContext.h>
-
-
-CPPUNIT_NS_BEGIN
-
-TestSuiteBuilderContextBase::TestSuiteBuilderContextBase(
- TestSuite &suite,
- const TestNamer &namer,
- TestFixtureFactory &factory )
- : m_suite( suite )
- , m_namer( namer )
- , m_factory( factory )
-{
-}
-
-
-TestSuiteBuilderContextBase::~TestSuiteBuilderContextBase()
-{
-}
-
-
-void
-TestSuiteBuilderContextBase::addTest( Test *test )
-{
- m_suite.addTest( test );
-}
-
-
-std::string
-TestSuiteBuilderContextBase::getFixtureName() const
-{
- return m_namer.getFixtureName();
-}
-
-
-std::string
-TestSuiteBuilderContextBase::getTestNameFor(
- const std::string &testMethodName ) const
-{
- return m_namer.getTestNameFor( testMethodName );
-}
-
-
-TestFixture *
-TestSuiteBuilderContextBase::makeTestFixture() const
-{
- return m_factory.makeFixture();
-}
-
-
-void
-TestSuiteBuilderContextBase::addProperty( const std::string &key,
- const std::string &value )
-{
- Properties::iterator it = m_properties.begin();
- for ( ; it != m_properties.end(); ++it )
- {
- if ( (*it).first == key )
- {
- (*it).second = value;
- return;
- }
- }
-
- Property property( key, value );
- m_properties.push_back( property );
-}
-
-const std::string
-TestSuiteBuilderContextBase::getStringProperty( const std::string &key ) const
-{
- Properties::const_iterator it = m_properties.begin();
- for ( ; it != m_properties.end(); ++it )
- {
- if ( (*it).first == key )
- return (*it).second;
- }
- return "";
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/TextOutputter.cpp b/3rdParty/CppUnit/src/TextOutputter.cpp
deleted file mode 100644
index f74214f..0000000
--- a/3rdParty/CppUnit/src/TextOutputter.cpp
+++ /dev/null
@@ -1,140 +0,0 @@
-#include <cppunit/Exception.h>
-#include <cppunit/SourceLine.h>
-#include <cppunit/TestFailure.h>
-#include <cppunit/TextOutputter.h>
-#include <cppunit/TestResultCollector.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-TextOutputter::TextOutputter( TestResultCollector *result,
- OStream &stream )
- : m_result( result )
- , m_stream( stream )
-{
-}
-
-
-TextOutputter::~TextOutputter()
-{
-}
-
-
-void
-TextOutputter::write()
-{
- printHeader();
- m_stream << "\n";
- printFailures();
- m_stream << "\n";
-}
-
-
-void
-TextOutputter::printFailures()
-{
- TestResultCollector::TestFailures::const_iterator itFailure = m_result->failures().begin();
- int failureNumber = 1;
- while ( itFailure != m_result->failures().end() )
- {
- m_stream << "\n";
- printFailure( *itFailure++, failureNumber++ );
- }
-}
-
-
-void
-TextOutputter::printFailure( TestFailure *failure,
- int failureNumber )
-{
- printFailureListMark( failureNumber );
- m_stream << ' ';
- printFailureTestName( failure );
- m_stream << ' ';
- printFailureType( failure );
- m_stream << ' ';
- printFailureLocation( failure->sourceLine() );
- m_stream << "\n";
- printFailureDetail( failure->thrownException() );
- m_stream << "\n";
-}
-
-
-void
-TextOutputter::printFailureListMark( int failureNumber )
-{
- m_stream << failureNumber << ")";
-}
-
-
-void
-TextOutputter::printFailureTestName( TestFailure *failure )
-{
- m_stream << "test: " << failure->failedTestName();
-}
-
-
-void
-TextOutputter::printFailureType( TestFailure *failure )
-{
- m_stream << "("
- << (failure->isError() ? "E" : "F")
- << ")";
-}
-
-
-void
-TextOutputter::printFailureLocation( SourceLine sourceLine )
-{
- if ( !sourceLine.isValid() )
- return;
-
- m_stream << "line: " << sourceLine.lineNumber()
- << ' ' << sourceLine.fileName();
-}
-
-
-void
-TextOutputter::printFailureDetail( Exception *thrownException )
-{
- m_stream << thrownException->message().shortDescription() << "\n";
- m_stream << thrownException->message().details();
-}
-
-
-void
-TextOutputter::printHeader()
-{
- if ( m_result->wasSuccessful() )
- m_stream << "\nOK (" << m_result->runTests () << " tests)\n" ;
- else
- {
- m_stream << "\n";
- printFailureWarning();
- printStatistics();
- }
-}
-
-
-void
-TextOutputter::printFailureWarning()
-{
- m_stream << "!!!FAILURES!!!\n";
-}
-
-
-void
-TextOutputter::printStatistics()
-{
- m_stream << "Test Results:\n";
-
- m_stream << "Run: " << m_result->runTests()
- << " Failures: " << m_result->testFailures()
- << " Errors: " << m_result->testErrors()
- << "\n";
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/TextTestProgressListener.cpp b/3rdParty/CppUnit/src/TextTestProgressListener.cpp
deleted file mode 100644
index 5bbe768..0000000
--- a/3rdParty/CppUnit/src/TextTestProgressListener.cpp
+++ /dev/null
@@ -1,43 +0,0 @@
-#include <cppunit/TestFailure.h>
-#include <cppunit/TextTestProgressListener.h>
-#include <cppunit/portability/Stream.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-TextTestProgressListener::TextTestProgressListener()
-{
-}
-
-
-TextTestProgressListener::~TextTestProgressListener()
-{
-}
-
-
-void
-TextTestProgressListener::startTest( Test * )
-{
- stdCOut() << ".";
-}
-
-
-void
-TextTestProgressListener::addFailure( const TestFailure &failure )
-{
- stdCOut() << ( failure.isError() ? "E" : "F" );
-}
-
-
-void
-TextTestProgressListener::endTestRun( Test *,
- TestResult * )
-{
- stdCOut() << "\n";
- stdCOut().flush();
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/TextTestRunner.cpp b/3rdParty/CppUnit/src/TextTestRunner.cpp
deleted file mode 100644
index 1534ec0..0000000
--- a/3rdParty/CppUnit/src/TextTestRunner.cpp
+++ /dev/null
@@ -1,144 +0,0 @@
-// ==> Implementation of cppunit/ui/text/TestRunner.h
-
-#include <cppunit/config/SourcePrefix.h>
-#include <cppunit/TestSuite.h>
-#include <cppunit/TextTestResult.h>
-#include <cppunit/TextOutputter.h>
-#include <cppunit/TextTestProgressListener.h>
-#include <cppunit/TestResult.h>
-#include <cppunit/ui/text/TextTestRunner.h>
-#include <cppunit/portability/Stream.h>
-#include <stdexcept>
-
-
-CPPUNIT_NS_BEGIN
-
-
-/*! Constructs a new text runner.
- * \param outputter used to print text result. Owned by the runner.
- */
-TextTestRunner::TextTestRunner( Outputter *outputter )
- : m_result( new TestResultCollector() )
- , m_eventManager( new TestResult() )
- , m_outputter( outputter )
-{
- if ( !m_outputter )
- m_outputter = new TextOutputter( m_result, stdCOut() );
- m_eventManager->addListener( m_result );
-}
-
-
-TextTestRunner::~TextTestRunner()
-{
- delete m_eventManager;
- delete m_outputter;
- delete m_result;
-}
-
-
-/*! Runs the named test case.
- *
- * \param testName Name of the test case to run. If an empty is given, then
- * all added tests are run. The name can be the name of any
- * test in the hierarchy.
- * \param doWait if \c true then the user must press the RETURN key
- * before the run() method exit.
- * \param doPrintResult if \c true (default) then the test result are printed
- * on the standard output.
- * \param doPrintProgress if \c true (default) then TextTestProgressListener is
- * used to show the progress.
- * \return \c true is the test was successful, \c false if the test
- * failed or was not found.
- */
-bool
-TextTestRunner::run( std::string testName,
- bool doWait,
- bool doPrintResult,
- bool doPrintProgress )
-{
- TextTestProgressListener progress;
- if ( doPrintProgress )
- m_eventManager->addListener( &progress );
-
- TestRunner *pThis = this;
- pThis->run( *m_eventManager, testName );
-
- if ( doPrintProgress )
- m_eventManager->removeListener( &progress );
-
- printResult( doPrintResult );
- wait( doWait );
-
- return m_result->wasSuccessful();
-}
-
-
-void
-TextTestRunner::wait( bool doWait )
-{
-#if !defined( CPPUNIT_NO_STREAM )
- if ( doWait )
- {
- stdCOut() << "<RETURN> to continue\n";
- stdCOut().flush();
- std::cin.get ();
- }
-#endif
-}
-
-
-void
-TextTestRunner::printResult( bool doPrintResult )
-{
- stdCOut() << "\n";
- if ( doPrintResult )
- m_outputter->write();
-}
-
-
-/*! Returns the result of the test run.
- * Use this after calling run() to access the result of the test run.
- */
-TestResultCollector &
-TextTestRunner::result() const
-{
- return *m_result;
-}
-
-
-/*! Returns the event manager.
- * The instance of TestResult results returned is the one that is used to run the
- * test. Use this to register additional TestListener before running the tests.
- */
-TestResult &
-TextTestRunner::eventManager() const
-{
- return *m_eventManager;
-}
-
-
-/*! Specifies an alternate outputter.
- *
- * Notes that the outputter will be use after the test run only if \a printResult was
- * \c true.
- * \param outputter New outputter to use. The previous outputter is destroyed.
- * The TextTestRunner assumes ownership of the outputter.
- * \see CompilerOutputter, XmlOutputter, TextOutputter.
- */
-void
-TextTestRunner::setOutputter( Outputter *outputter )
-{
- delete m_outputter;
- m_outputter = outputter;
-}
-
-
-void
-TextTestRunner::run( TestResult &controller,
- const std::string &testPath )
-{
- TestRunner::run( controller, testPath );
-}
-
-
-CPPUNIT_NS_END
diff --git a/3rdParty/CppUnit/src/TypeInfoHelper.cpp b/3rdParty/CppUnit/src/TypeInfoHelper.cpp
deleted file mode 100644
index 2febac6..0000000
--- a/3rdParty/CppUnit/src/TypeInfoHelper.cpp
+++ /dev/null
@@ -1,54 +0,0 @@
-#include <cppunit/Portability.h>
-#include <cppunit/extensions/TypeInfoHelper.h>
-#include <stdlib.h>
-
-#if CPPUNIT_HAVE_RTTI
-
-#include <string>
-
-#if CPPUNIT_HAVE_GCC_ABI_DEMANGLE
-#include <cxxabi.h>
-#endif
-
-
-CPPUNIT_NS_BEGIN
-
-
-std::string
-TypeInfoHelper::getClassName( const std::type_info &info )
-{
-#if defined(CPPUNIT_HAVE_GCC_ABI_DEMANGLE) && CPPUNIT_HAVE_GCC_ABI_DEMANGLE
-
- int status = 0;
- char* c_name = 0;
-
- c_name = abi::__cxa_demangle( info.name(), 0, 0, &status );
-
- std::string name( c_name );
- free( c_name );
-
-#else // CPPUNIT_HAVE_GCC_ABI_DEMANGLE
-
- static std::string classPrefix( "class " );
- std::string name( info.name() );
-
- // Work around gcc 3.0 bug: strip number before type name.
- unsigned int firstNotDigitIndex = 0;
- while ( firstNotDigitIndex < name.length() &&
- name[firstNotDigitIndex] >= '0' &&
- name[firstNotDigitIndex] <= '9' )
- ++firstNotDigitIndex;
- name = name.substr( firstNotDigitIndex );
-
- if ( name.substr( 0, classPrefix.length() ) == classPrefix )
- return name.substr( classPrefix.length() );
-
-#endif // CPPUNIT_HAVE_GCC_ABI_DEMANGLE
-
- return name;
-}
-
-
-CPPUNIT_NS_END
-
-#endif // CPPUNIT_HAVE_RTTI
diff --git a/3rdParty/CppUnit/src/XmlDocument.cpp b/3rdParty/CppUnit/src/XmlDocument.cpp
deleted file mode 100644
index 31f9115..0000000
--- a/3rdParty/CppUnit/src/XmlDocument.cpp
+++ /dev/null
@@ -1,106 +0,0 @@
-#include <cppunit/config/SourcePrefix.h>
-#include <cppunit/tools/XmlDocument.h>
-#include <cppunit/tools/XmlElement.h>
-
-
-CPPUNIT_NS_BEGIN
-
-
-XmlDocument::XmlDocument( const std::string &encoding,
- const std::string &styleSheet )
- : m_styleSheet( styleSheet )
- , m_rootElement( new XmlElement( "DummyRoot" ) )
- , m_standalone( true )
-{
- setEncoding( encoding );
-}
-
-
-XmlDocument::~XmlDocument()
-{
- delete m_rootElement;
-}
-
-
-
-std::string
-XmlDocument::encoding() const
-{
- return m_encoding;
-}
-
-
-void
-XmlDocument::setEncoding( const std::string &encoding )
-{
- m_encoding = encoding.empty() ? std::string("ISO-8859-1") : encoding;
-}
-
-
-std::string
-XmlDocument::styleSheet() const
-{
- return m_styleSheet;
-}
-
-
-void
-XmlDocument::setStyleSheet( const std::string &styleSheet )
-{
- m_styleSheet = styleSheet;
-}
-
-
-bool
-XmlDocument::standalone() const
-{
- return m_standalone;
-}
-
-
-void
-XmlDocument::setStandalone( bool standalone )
-{
- m_standalone = standalone;
-}
-
-
-void
-XmlDocument::setRootElement( XmlElement *rootElement )
-{
- if ( rootElement == m_rootElement )
- return;
-
- delete m_rootElement;
- m_rootElement = rootElement;
-}
-
-
-XmlElement &
-XmlDocument::rootElement() const
-{
- return *m_rootElement;
-}
-
-
-std::string
-XmlDocument::toString() const
-{
- std::string asString = "<?xml version=\"1.0\" "
- "encoding='" + m_encoding + "'";
- if ( m_standalone )
- asString += " standalone='yes'";
-
- asString += " ?>\n";
-
- if ( !m_styleSheet.empty() )
- asString += "<?xml-stylesheet type=\"text/xsl\" href=\"" + m_styleSheet + "\"?>\n";
-
- asString += m_rootElement->toString();
-
- return asString;
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/XmlElement.cpp b/3rdParty/CppUnit/src/XmlElement.cpp
deleted file mode 100644
index f930ad4..0000000
--- a/3rdParty/CppUnit/src/XmlElement.cpp
+++ /dev/null
@@ -1,226 +0,0 @@
-#include <cppunit/tools/StringTools.h>
-#include <cppunit/tools/XmlElement.h>
-#include <stdexcept>
-
-
-CPPUNIT_NS_BEGIN
-
-
-XmlElement::XmlElement( std::string elementName,
- std::string content )
- : m_name( elementName )
- , m_content( content )
-{
-}
-
-
-XmlElement::XmlElement( std::string elementName,
- int numericContent )
- : m_name( elementName )
-{
- setContent( numericContent );
-}
-
-
-XmlElement::~XmlElement()
-{
- Elements::iterator itNode = m_elements.begin();
- while ( itNode != m_elements.end() )
- {
- XmlElement *element = *itNode++;
- delete element;
- }
-}
-
-
-std::string
-XmlElement::name() const
-{
- return m_name;
-}
-
-
-std::string
-XmlElement::content() const
-{
- return m_content;
-}
-
-
-void
-XmlElement::setName( const std::string &name )
-{
- m_name = name;
-}
-
-
-void
-XmlElement::setContent( const std::string &content )
-{
- m_content = content;
-}
-
-
-void
-XmlElement::setContent( int numericContent )
-{
- m_content = StringTools::toString( numericContent );
-}
-
-
-void
-XmlElement::addAttribute( std::string attributeName,
- std::string value )
-{
- m_attributes.push_back( Attribute( attributeName, value ) );
-}
-
-
-void
-XmlElement::addAttribute( std::string attributeName,
- int numericValue )
-{
- addAttribute( attributeName, StringTools::toString( numericValue ) );
-}
-
-
-void
-XmlElement::addElement( XmlElement *node )
-{
- m_elements.push_back( node );
-}
-
-
-int
-XmlElement::elementCount() const
-{
- return m_elements.size();
-}
-
-
-XmlElement *
-XmlElement::elementAt( int index ) const
-{
- if ( index < 0 || index >= elementCount() )
- throw std::invalid_argument( "XmlElement::elementAt(), out of range index" );
-
- return m_elements[ index ];
-}
-
-
-XmlElement *
-XmlElement::elementFor( const std::string &name ) const
-{
- Elements::const_iterator itElement = m_elements.begin();
- for ( ; itElement != m_elements.end(); ++itElement )
- {
- if ( (*itElement)->name() == name )
- return *itElement;
- }
-
- throw std::invalid_argument( "XmlElement::elementFor(), not matching child element found" );
- return NULL; // make some compilers happy.
-}
-
-
-std::string
-XmlElement::toString( const std::string &indent ) const
-{
- std::string element( indent );
- element += "<";
- element += m_name;
- if ( !m_attributes.empty() )
- {
- element += " ";
- element += attributesAsString();
- }
- element += ">";
-
- if ( !m_elements.empty() )
- {
- element += "\n";
-
- std::string subNodeIndent( indent + " " );
- Elements::const_iterator itNode = m_elements.begin();
- while ( itNode != m_elements.end() )
- {
- const XmlElement *node = *itNode++;
- element += node->toString( subNodeIndent );
- }
-
- element += indent;
- }
-
- if ( !m_content.empty() )
- {
- element += escape( m_content );
- if ( !m_elements.empty() )
- {
- element += "\n";
- element += indent;
- }
- }
-
- element += "</";
- element += m_name;
- element += ">\n";
-
- return element;
-}
-
-
-std::string
-XmlElement::attributesAsString() const
-{
- std::string attributes;
- Attributes::const_iterator itAttribute = m_attributes.begin();
- while ( itAttribute != m_attributes.end() )
- {
- if ( !attributes.empty() )
- attributes += " ";
-
- const Attribute &attribute = *itAttribute++;
- attributes += attribute.first;
- attributes += "=\"";
- attributes += escape( attribute.second );
- attributes += "\"";
- }
- return attributes;
-}
-
-
-std::string
-XmlElement::escape( std::string value ) const
-{
- std::string escaped;
- for ( unsigned int index =0; index < value.length(); ++index )
- {
- char c = value[index ];
- switch ( c ) // escape all predefined XML entity (safe?)
- {
- case '<':
- escaped += "&lt;";
- break;
- case '>':
- escaped += "&gt;";
- break;
- case '&':
- escaped += "&amp;";
- break;
- case '\'':
- escaped += "&apos;";
- break;
- case '"':
- escaped += "&quot;";
- break;
- default:
- escaped += c;
- }
- }
-
- return escaped;
-}
-
-
-CPPUNIT_NS_END
-
diff --git a/3rdParty/CppUnit/src/XmlOutputter.cpp b/3rdParty/CppUnit/src/XmlOutputter.cpp
deleted file mode 100644
index c605e33..0000000
--- a/3rdParty/CppUnit/src/XmlOutputter.cpp
+++ /dev/null
@@ -1,205 +0,0 @@
-#include <cppunit/Exception.h>
-#include <cppunit/Test.h>
-#include <cppunit/TestFailure.h>
-#include <cppunit/TestResultCollector.h>
-#include <cppunit/XmlOutputter.h>
-#include <cppunit/XmlOutputterHook.h>
-#include <cppunit/tools/XmlDocument.h>
-#include <cppunit/tools/XmlElement.h>
-#include <stdlib.h>
-#include <algorithm>
-
-
-CPPUNIT_NS_BEGIN
-
-
-XmlOutputter::XmlOutputter( TestResultCollector *result,
- OStream &stream,
- std::string encoding )
- : m_result( result )
- , m_stream( stream )
- , m_xml( new XmlDocument( encoding ) )
-{
-}
-
-
-XmlOutputter::~XmlOutputter()
-{
- delete m_xml;
-}
-
-
-void
-XmlOutputter::addHook( XmlOutputterHook *hook )
-{
- m_hooks.push_back( hook );
-}
-
-
-void
-XmlOutputter::removeHook( XmlOutputterHook *hook )
-{
- m_hooks.erase( std::find( m_hooks.begin(), m_hooks.end(), hook ) );
-}
-
-
-void
-XmlOutputter::write()
-{
- setRootNode();
- m_stream << m_xml->toString();
-}
-
-
-void
-XmlOutputter::setStyleSheet( const std::string &styleSheet )
-{
- m_xml->setStyleSheet( styleSheet );
-}
-
-
-void
-XmlOutputter::setStandalone( bool standalone )
-{
- m_xml->setStandalone( standalone );
-}
-
-
-void
-XmlOutputter::setRootNode()
-{
- XmlElement *rootNode = new XmlElement( "TestRun" );
- m_xml->setRootElement( rootNode );
-
- for ( Hooks::iterator it = m_hooks.begin(); it != m_hooks.end(); ++it )
- (*it)->beginDocument( m_xml );
-
- FailedTests failedTests;
- fillFailedTestsMap( failedTests );
-
- addFailedTests( failedTests, rootNode );
- addSuccessfulTests( failedTests, rootNode );
- addStatistics( rootNode );
-
- for ( Hooks::iterator itEnd = m_hooks.begin(); itEnd != m_hooks.end(); ++itEnd )
- (*itEnd)->endDocument( m_xml );
-}
-
-
-void
-XmlOutputter::fillFailedTestsMap( FailedTests &failedTests )
-{
- const TestResultCollector::TestFailures &failures = m_result->failures();
- TestResultCollector::TestFailures::const_iterator itFailure = failures.begin();
- while ( itFailure != failures.end() )
- {
- TestFailure *failure = *itFailure++;
- failedTests.insert( std::pair<Test* const, TestFailure*>(failure->failedTest(), failure ) );
- }
-}
-
-
-void
-XmlOutputter::addFailedTests( FailedTests &failedTests,
- XmlElement *rootNode )
-{
- XmlElement *testsNode = new XmlElement( "FailedTests" );
- rootNode->addElement( testsNode );
-
- const TestResultCollector::Tests &tests = m_result->tests();
- for ( unsigned int testNumber = 0; testNumber < tests.size(); ++testNumber )
- {
- Test *test = tests[testNumber];
- if ( failedTests.find( test ) != failedTests.end() )
- addFailedTest( test, failedTests[test], testNumber+1, testsNode );
- }
-}
-
-
-void
-XmlOutputter::addSuccessfulTests( FailedTests &failedTests,
- XmlElement *rootNode )
-{
- XmlElement *testsNode = new XmlElement( "SuccessfulTests" );
- rootNode->addElement( testsNode );
-
- const TestResultCollector::Tests &tests = m_result->tests();
- for ( unsigned int testNumber = 0; testNumber < tests.size(); ++testNumber )
- {
- Test *test = tests[testNumber];
- if ( failedTests.find( test ) == failedTests.end() )
- addSuccessfulTest( test, testNumber+1, testsNode );
- }
-}
-
-
-void
-XmlOutputter::addStatistics( XmlElement *rootNode )
-{
- XmlElement *statisticsElement = new XmlElement( "Statistics" );
- rootNode->addElement( statisticsElement );
- statisticsElement->addElement( new XmlElement( "Tests", m_result->runTests() ) );
- statisticsElement->addElement( new XmlElement( "FailuresTotal",
- m_result->testFailuresTotal() ) );
- statisticsElement->addElement( new XmlElement( "Errors", m_result->testErrors() ) );
- statisticsElement->addElement( new XmlElement( "Failures", m_result->testFailures() ) );
-
- for ( Hooks::iterator it = m_hooks.begin(); it != m_hooks.end(); ++it )
- (*it)->statisticsAdded( m_xml, statisticsElement );
-}
-
-
-void
-XmlOutputter::addFailedTest( Test *test,
- TestFailure *failure,
- int testNumber,
- XmlElement *testsNode )
-{
- Exception *thrownException = failure->thrownException();
-
- XmlElement *testElement = new XmlElement( "FailedTest" );
- testsNode->addElement( testElement );
- testElement->addAttribute( "id", testNumber );
- testElement->addElement( new XmlElement( "Name", test->getName() ) );
- testElement->addElement( new XmlElement( "FailureType",
- failure->isError() ? "Error" :
- "Assertion" ) );
-
- if ( failure->sourceLine().isValid() )
- addFailureLocation( failure, testElement );
-
- testElement->addElement( new XmlElement( "Message", thrownException->what() ) );
-
- for ( Hooks::iterator it = m_hooks.begin(); it != m_hooks.end(); ++it )
- (*it)->failTestAdded( m_xml, testElement, test, failure );
-}
-
-
-void
-XmlOutputter::addFailureLocation( TestFailure *failure,
- XmlElement *testElement )
-{
- XmlElement *locationNode = new XmlElement( "Location" );
- testElement->addElement( locationNode );
- SourceLine sourceLine = failure->sourceLine();
- locationNode->addElement( new XmlElement( "File", sourceLine.fileName() ) );
- locationNode->addElement( new XmlElement( "Line", sourceLine.lineNumber() ) );
-}
-
-
-void
-XmlOutputter::addSuccessfulTest( Test *test,
- int testNumber,
- XmlElement *testsNode )
-{
- XmlElement *testElement = new XmlElement( "Test" );
- testsNode->addElement( testElement );
- testElement->addAttribute( "id", testNumber );
- testElement->addElement( new XmlElement( "Name", test->getName() ) );
-
- for ( Hooks::iterator it = m_hooks.begin(); it != m_hooks.end(); ++it )
- (*it)->successfulTestAdded( m_xml, testElement, test );
-}
-
-
-CPPUNIT_NS_END