summaryrefslogtreecommitdiff
path: root/include/cppunit/extensions
Commit message (Collapse)AuthorAgeFilesLines
* get rid of old casting macrosMarkus Mohrhard2021-10-011-1/+1
|
* add override annotationsFlorian Becker2021-10-015-16/+16
|
* Replace NULL with nullptrFlorian Becker2021-10-011-1/+1
|
* fix -Wdefaulted-function-deleted errorMarkus Mohrhard2019-12-211-2/+2
|
* extensions: add CPPUNIT_TEST_FIXTURE()Miklos Vajna2018-11-021-0/+23
| | | | | | | | | | This is similar to googletest's TEST_F() macro, allows to avoid spelling out the test name in a suite only once, not 3 times. Change-Id: I90804d271d046d8158678617d8db75ed6ca7c420 Reviewed-on: https://gerrit.libreoffice.org/61732 Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
* Avoid GCC 9 -Wdeprecated-copyStephan Bergmann2018-09-261-0/+5
| | | | | | | | | | | | | | | | ...when an implicitly-defined copy function is used that may in a future C++ standard be defined as deleted because of the user-declared destructor. Just declare all the four copy/move functions as defaulted for a consistent interface. (Originally addressed with LibreOffice commit <https://gerrit.libreoffice.org/58042> "external/cppunit: silence -Werror=deprecated-copy (GCC trunk towards GCC 9)".) Change-Id: Ie38ac3a613e6fbc2e4045cb5b14c3f6d167c79c5 Reviewed-on: https://gerrit.libreoffice.org/58690 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
* implement parameterized testsMarkus Mohrhard2016-12-163-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | This allows to execute the same test with different parameters and treats each execution as an own test. The change consists of two parts, the TestCaller can now handle any callable which also makes it easy to generate programatically more complex test cases as well as the new CPPUNIT_TEST_PARAMETERIZED macro. That macro takes the test name as well as an iteratable, e.g. std::initializer_list. An example for this usage is: class SimpleTest : public CppUnit::TestFixture { public: CPPUNIT_TEST_SUITE(SimpleTest); CPPUNIT_TEST_PARAMETERIZED(test, {1, 2, 3, 4}); CPPUNIT_TEST_SUITE_END(); void test(int i) { CPPUNIT_ASSERT(i < 5); } }; which will execute test 4 times with the values 1 to 4.
* tdf#104498 CPPUNIT_USE_TYPEINFO_NAME is a flagDavid Tardon2016-12-161-1/+1
| | | | ... so check just for existence.
* remove support for old broken C++ compilersMarkus Mohrhard2016-12-112-9/+4
|
* replace with std::unique_ptrMarkus Mohrhard2016-10-151-12/+3
|
* HelperMacros: fix deprecated NULL macro usageGARCIN David2016-10-151-2/+2
| | | | | | | | | | | | | | | | | | | Using gcc (currently using gcc 5.2) flag -Wzero-as-null-pointer-constant triggers warnings: [...]include/cppunit/extensions/HelperMacros.h:171:31: error: zero as null pointer constant [-Werror=zero-as-null-pointer-constant] CppUnitExDeleter() : suite (0) {} \ ^ [...]include/cppunit/extensions/HelperMacros.h:174:45: error: zero as null pointer constant [-Werror=zero-as-null-pointer-constant] CPPUNIT_NS::TestSuite *tmp = suite; suite = NULL; return tmp; \ ^ Using nullptr is the c++11 way to initialize pointers with null value [1]. [1] http://en.cppreference.com/w/cpp/language/nullptr
* we always require RTTI nowMarkus Mohrhard2016-10-152-24/+2
| | | | | RTTI is supported by any decent compiler and with the mandatory c++11 support we are no longer supporting older compilers anyway.
* calm gcc paranoia about uninitialized stateMichael Meeks2012-06-271-0/+1
|
* avoid the need to work around auto_ptr warnings by dropping thatMichael Meeks2012-06-271-4/+13
|
* TestDecorator assumes ownership and is not allowed to create copiesMarkus Mohrhard2012-06-161-1/+8
|
* correct documentation, sf#2185407Markus Mohrhard2012-06-131-1/+1
|
* correct documentation, sf#2186611Markus Mohrhard2012-06-131-2/+2
| | | | std::vector::at() throws std::out_of_range and not std::invalid_argument
* Changes to suppress warnings of gcc -Wall -W -ansi, mainly from patch [1898225].Steve M. Robbins2008-02-211-1/+1
|
* Ensure virtual class has virtual destructor.Steve M. Robbins2007-01-121-0/+2
|
* Include/cppunit/Portability.Baptiste Lepilleur2004-06-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | include/cppunit/Portability.h: moved OStringStream alias definition to Portability/Stream.h. User need to define EVC4 to indicate that config-evc4.h should be used. (how to we detect this automatically ?). Notes that this means it might be needed to add #include <string> to some headers since its no longer included by Portability.h. * include/cppunit/Portability/Stream.h: define alias OStringStream, stdCOut(), and OFileStream. If CPPUNIT_NO_STREAM is defined (evc4 config), then provides our own implementation (based on sprintf and fwrite). * include/cppunit/config/config-evc4.h: config file for embedded visual c++ 4. Still need to detect for this platform in Portability.h (currently relying on EVC4 being defined...) * *.[cpp/h]: most source files have been impacted with the following change: #include <iostream> -> #include <cppunit/Portability/Stream.h> std::ostream -> CPPUNIT_NS::OStream std::ofstream -> CPPUNIT_NS::OFileStream std::cout -> CPPUNIT_NS::stdCOut() std::endl -> "\n" Also, code using std::cin as been defined out if CPPUNIT_NO_STREAM was defined. The exact list of impact files can be obtain in CVS using tags: TG_CPPUNIT_NO_STREAM_BEFORE & TG_CPPUNIT_NO_STREAM_AFTER.
* Include/cppunit/extension/TestSuiteBuilderContext.Baptiste Lepilleur2004-06-181-1/+10
| | | | | | | | include/cppunit/extension/TestSuiteBuilderContext.h: * src/cppunit/TestSuiteBuilderContext.cpp: fixed bug #921843. This bug was caused by a known STL bug in VC++ 6. See http://www.dinkumware.com/vc_fixes.html <xtree> issue with shared std::map in dll. As a work-around the map has been replaced by a vector.
* Examples/cppunittest/TestAssertTest.Baptiste Lepilleur2004-03-131-0/+2
| | | | | | | | | | | | | | | examples/cppunittest/TestAssertTest.h: * examples/cppunittest/TestAssertTest.cpp: * examples/cppunittest/XmlUniformiserTest.h: * examples/cppunittest/XmlUniformiserTest.cpp: * include/cppunit/TestAssert.h: add the exception assertion macros from cppunit 2: CPPUNIT_ASSERT_THROW, CPPUNIT_ASSERT_NO_THROW, CPPUNIT_ASSERT_ASSERTION_FAIL, CPPUNIT_ASSERT_ASSERTION_PASS. Updated unit test to use and test the new macros. * include/cppunit/extensions/HelperMacros.h: deprecated the test case factory that check for exception (CPPUNIT_TEST_FAIL & CPPUNIT_TEST_EXCEPTION).
* Configure.Baptiste Lepilleur2004-02-181-1/+0
| | | | | | | | configure.in: * config/ax_cxx_gcc_abi_demangle.m4: * src/cppunit/TypeInfoHelper.cpp: added patch from Neil Ferguson <nferguso@eso.org> to use gcc c++ abi to demangle typeinfo name when available.
* include/cppunit/extensions/Makefile.am: removed TestSuiteBuilder.hBaptiste Lepilleur2003-05-071-1/+0
|
* include/cppunit/extensions/TestSuiteBuilder.h: removed (unused)Baptiste Lepilleur2003-04-061-91/+0
|
* Include/cppunit/extensions/TestNamer.Baptiste Lepilleur2003-03-201-0/+2
| | | | | | include/cppunit/extensions/TestNamer.h: * src/cppunit/TestNamer.cpp: Fixed bug #704684, TestNamer has non-virtual destructor.
* Src/cppunit/CompilerOutputter.Baptiste Lepilleur2003-03-151-1/+1
| | | | | | | | | | | | | | src/cppunit/CompilerOutputter.cpp: * src/cppunit/ProtectorChain.cpp: * src/cppunit/StringTools.cpp: * src/cppunit/TestPath.cpp: * src/cppunit/TypeInfoHelper.cpp: * src/cppunit/XmlElement.cpp: * src/cppunit/XmlOutputter.cpp: switched to using unsigned index in loop to avoid signed/unsigned warning in vc7. * include/cppunit/extension/ExceptionTestCaseDecorator.h: removed dll export on template (caused link error on vc7).
* Include/cppunit/tools/Algorithm.Baptiste Lepilleur2003-03-111-0/+3
| | | | | | | | | | | | | | include/cppunit/tools/Algorithm.h: * src/cppunit/TestResult.cpp: * src/msvc6/testrunner/TestRunnerModel.cpp: added removeFromSequence algorithm in Algorithm.h to fix STLPort compatibility issue (std::remove use the one of cstdio instead of algorithm). Bug #694971. * include/cppunit/extensions/TestNamer.h: fixed bug #662666 (missing include for typeinfo). * src/cppunit/TestResult.cpp: TestFailure are no longer passed as temporary, but explicitely instantiated on the stack. Work around AIX compiler bug.
* fixed include pathBaptiste Lepilleur2002-12-031-1/+1
|
* Include/cppunit/plugin/DynamicLibraryManagerException.Baptiste Lepilleur2002-12-024-1/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | include/cppunit/plugin/DynamicLibraryManagerException.h: added constructor to fix compilation issues on recents version of gcc and sun CC (bug #619059) * include/cppunit/input/XmlInputHelper.h: added. * include/cppunit/extensions/TestSuiteBuilderContext.h: * src/cppunit/TestSuiteBuilderContext.cpp: added addProperty() and getStringProperty(). Added macros CPPUNIT_TEST_SUITE_PROPERTY. * src/msvc6/testrunner/TestRunnerDlg.cpp: integrated Tim Threlkeld's bug fix #610162: browse button was disabled if history was empty. * src/msvc6/testrunner/DynamicWindow/cdxCSizeIconCtrl.cpp: integrated Tim Threlkeld's bug fix #610191: common control were not initialized. * include/cppunit/extensions/ExceptionTestCaseDecorator.h: bug #603172, missing Message construction. * src/cppunit/DefaultProtector.cpp: bug #603172. Fixed missing ';'. * src/cppunit/TestCase.cpp: bug #603671. Removed unguarded typeinfo include. * examples/cppunittests/*Suite.h: bug #603666. Added missing Portability.h include.
* Added newline at end of file (needed for some compilers to work)Eric Schendel2002-09-163-3/+6
|
* Added comparator to setEric Schendel2002-09-161-1/+1
|
* Include/cppunit/Asserter.Baptiste Lepilleur2002-08-293-10/+10
| | | | | | | | | include/cppunit/Asserter.h: * include/cppunit/Message.h: * include/cppunit/extensions/TestNamer.h: * include/cppunit/extensions/TestSuiteBuilder.h: * include/cppunit/tools/XmlDocument.h: * include/cppunit/tools/XmlElement.h: Fixed a few documentation bug.
* Include/cppunit/Portability.Baptiste Lepilleur2002-08-285-179/+308
| | | | | | | | | | | | | | | | | | | | | include/cppunit/Portability.h: added CPPUNIT_STATIC_CAST. * include/cppunit/extensions/TestFixtureFactory.h: extracted from HelperMacros.h. Added template class ConcretTestFixtureFactory. * include/cppunit/extensions/TestSuiteBuilderContext.h: * src/cppunit/TestSuiteBuilderContext.cpp: added. Context used to add test case to the fixture suite. Prevent future compatibility break for custom test API. * include/cppunit/extensions/HelperMacros.h: mostly rewritten. No longer use TestSuiteBuilder. Added support for abstract test fixture through macro CPPUNIT_TEST_SUITE_END_ABSTRACT. Made custom test API easier to use. * examples/cppunittest/HelperMacrosTest.h: * examples/cppunittest/HelperMacrosTest.cpp: updated against HelperMacros.h changes.
* Include/cppunit/Exception.Baptiste Lepilleur2002-08-035-51/+156
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | include/cppunit/Exception.h: * src/cppunit/Exception.h: added setMessage(). * include/cppunit/Protector.h: * src/cppunit/Protector.cpp: added class ProtectorGuard. Change the reportXXX() method to support Exception passing and SourceLine. * include/cppunit/TestCaller.h: removed 'expect exception' features. It is now handled by ExceptionTestCaseDecorator and TestCaller no longer need default template argument support. * include/cppunit/TestCase.h: * include/cppunit/extensions/TestCaller.h: runTest() is now public instead of protected, so that it can be decorated. * include/cppunit/TestResult.h: * src/cppunit/TestResult.h: added pushProtector() and popProtector() methods. This allow user to specify their own exception trap when running test case. * include/cppunit/extensions/TestDecorator.h: * src/cppunit/TestDecorator.cpp: added. Extracted from TestDecorator.h. The test passed to the constructor is now owned by the decorator. * include/cppunit/extensions/TestCaseDecorator.h: * src/cppunit/TestCaseDecorator.cpp: added. Decorator for TestCase setUp(), tearDown() and runTest(). * include/cppunit/extensions/ExceptionTestCaseDecorator.h: added. TestCaseDecorator to expect that a specific exception is thrown. * include/cppunit/extensions/HelperMacros.h: updated against TestCaller change. * src/cppunit/DefaultFunctor.h: fixed bug (did not return underlying test return code). * src/cppunit/ProtectorChain.cpp: fixed bug in chaing return code. * src/cppunit/DefaultFunctor.h: fixed bug. * src/msvc6/testrunner/ActiveTest.h: * src/msvc6/testrunner/ActiveTest.cpp: updated against TestCaseDecorator ownership policy change. Moved inline functions to .cpp. * examples/cppunittest/TestSetUpTest.cpp: updated to use MockTestCase and against the new ownership policy. * examples/cppunittest/TestDecoratorTest.cpp: * examples/cppunittest/RepeatedTestTest.cpp: updated against TestDecorator ownership policy change. * examples/cppunittest/ExceptionTestCaseDecoratorTest.h: * examples/cppunittest/ExceptionTestCaseDecoratorTest.cpp: added. Unit tests for ExceptionTestCaseDecoratorTest.
* CodingGuideLines.Baptiste Lepilleur2002-07-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CodingGuideLines.txt: added. CppUnit's coding guidelines for portability. * include/cppunit/portability/CppUnitStack.h: added. wrapper for std::stack. * include/cppunit/portability/CppUnitSet.h: added. wrapper for std::set. * include/cppunit/ui/text/TestRunner.h: fixed namespace definition for deprecated TestRunner. * include/cppunit/TestAssert.h: * src/cppunit/TestAssert.cpp: removed old deprecated functions that did not use SourceLine. Moved assertEquals() and assertDoubleEquals() into CppUnit namespace. * src/cppunit/TestFactoryRegistry.cpp: use CppUnitMap instead of std::map. * src/DllPlugInTester/CommandLineParser.h: use CppUnitDeque instead std::deque. * examples/cppunittest/*.h: * examples/cppunittest/*.cpp: removed all usage of CppUnitTest namespace. Everything is now in global space. * examples/*/*.h: * examples/*/*.cpp: replaced usage of CppUnit:: with CPPUNIT_NS::. * examples/ClockerPlugIn/ClockerModel.h: use CppUnit STL wrapper instead of STL container.
* Include/cppunit/ui/text/TestRunner.Baptiste Lepilleur2002-07-134-24/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | include/cppunit/ui/text/TestRunner.h: * src/cppunit/TextTestRunner.cpp: Renamed TextUi::TestRunner TextTestRunner and moved it to the CppUnit namespace. Added a deprecated typedef for compatibility with previous version. * include/cppunit/ui/text/TextTestRunner.h: added. * include/cppunit/ui/mfc/TestRunner.h: * src/cppunit/msvc6/testrunner/TestRunner.cpp: Renamed MfcUi::TestRunner MfcTestRunner. Added deprecated typedef for compatibility. Renamed TestRunner.cpp to MfcTestRunner.cpp. * include/cppunit/ui/mfc/MfcTestRunner.h: added. * include/cppunit/ui/qt/TestRunner.h: * src/qttestrunner/TestRunner.cpp: renamed QtUi::TestRunner QtTestRunner and moved it to CppUnit namespace. Added a deprecated typedef for compatibility. Renamed TestRunner.cpp to QtTestRunner.cpp. * include/cppunit/ui/qt/TestRunner.h: * src/qttestrunner/TestRunner.h: Moved TestRunner to CppUnit namespace and renamed it QtTestRunner. Added deprecated typedef for compatibility. * include/cppunit/Asserter.h: * src/cppunit/Asserter.cpp: changed namespace Asserter to a struct and made all methods static. * include/cppunit/extensions/HelperMacros.h: * include/cppunit/extensions/SourceLine.h: * include/cppunit/extensions/TestAssert.h: * include/cppunit/extensions/TestPlugIn.h: * include/cppunit/Portability.h: changed CPPUNIT_NS(symbol) to a symbol macro that expand either to CppUnit or nothing. The symbol is no longer a parameter. * include/cppunit/portability/CppUnitVector.h: * include/cppunit/portability/CppUnitDeque.h: * include/cppunit/portability/CppUnitMap.h: added. STL Wrapper for compilers that do not support template default argumenent and need the allocator to be passed when instantiating STL container. * examples/cppunittest/*.h: * examples/cppunittest/*.cpp: * src/msvc6/testrunner/*.h: * src/msvc6/testrunner/*.cpp: * src/msvc6/testpluginrunner/*.h: * src/msvc6/testpluginrunner/*.cpp: * src/qttestrunner/*.h: * src/qttestrunner/*.cpp: replaced occurence of CppUnit:: by CPPUNIT_NS. * src/cppunit/TestSuite.h: replaced occurence of std::vector by CppUnitVector.
* Include/cppunit/config/Portability.Baptiste Lepilleur2002-07-1212-80/+93
| | | | | | | | | | | | | | | | | | | | | include/cppunit/config/Portability.h: If the compiler does not support namespace (CPPUNIT_HAVE_NAMESPACES=0), define CPPUNIT_NO_STD_NAMESPACE and CPPUNIT_NO_NAMESPACE. If CPPUNIT_NO_STD_NAMESPACE is defined, then CppUnit assumes that STL are in the global namespace. If CPPUNIT_NO_NAMESPACE is defined, then CppUnit classes are placed in the global namespace instead of the CppUnit namespace. * include/cppunit/config/config-bcb5.h: * include/cppunit/config/config-msvc6.h: added definition of macro CPPUNIT_HAVE_NAMESPACES. * include/cppunit/tools/StringTools.h: use CPPUNIT_WRAP_COLUMN as default parameter value for wrap(). * include/cppunit/*/*.h: * src/cppunit/*.cpp: changed all CppUnit namespace declaration to use macros CPPUNIT_NS_BEGIN and CPPUNIT_NS_END. Also, changed reference to CppUnit namespace (essentially in macros) using CPPUNIT_NS macro.
* Include/cppunit/extensions/AutoRegisterSuite.Baptiste Lepilleur2002-07-104-20/+6
| | | | | | | | | | | | | | | | | | | | | | | include/cppunit/extensions/AutoRegisterSuite.h: * include/cppunit/extensions/Orthodox.h: * include/cppunit/extensions/TestSuiteBuilder.h: * include/cppunit/extensions/TestSuiteFactory.h: * include/cppunit/TestCaller.h: * examples/hierarchy/BoardGameTest.h: * examples/hierarchy/ChessTest.h: replaced usage of 'typename' in template declaration with 'class'. * include/cppunit/ui/text/TestRunner.h: * src/cppunit/TextTestRunner.cpp: updated to use the generic TestRunner. Removed methods runTestByName() and runTest(). Inherits CppUnit::TestRunner. * include/cppunit/extensions/TestSuiteBuilder.h: removed templatized method addTestCallerForException(). It is no longer used since release 1.9.8. * examples/cppunittest/MockTestCase.h * examples/cppunittest/MockTestCase.cpp: removed the usage of 'mutable' keyword.
* Src/cppunit/TypeInfoHelper.Baptiste Lepilleur2002-06-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/cppunit/TypeInfoHelper.cpp: added work around for bug #565481. gcc 3.0 RTTI name() returns the type prefixed with a number (the length of the type). The work around strip the number. * src/msvc6/testpluginrunner/TestPlugInRunnerApp.cpp: registry key is now set. Allow to save settings. * src/msvc6/testpluginrunner/TestPlugInRunnerDlg.h: * src/msvc6/testpluginrunner/TestPlugInRunnerDlg.cpp: added layout initialization for resizing. * src/msvc6/testpluginrunner/TestPlugRunner.rc: * src/msvc6/testpluginrunner/TestPlugInRunner.dsp: added TestRunner project files. Somehow I can't get cdxCDynamicDialog to compile as a MFC extension. Included all sources files and resources as a very dirt work around. * src/msvc6/testrunner/TestRunnerDlg.h: * src/msvc6/testrunner/TestRunnerDlg.cpp: * src/msvc6/testrunner/TestRunnerModel.h: those classes are no longer exported in the MFC extension. See TestPlugInRunner issue with cdxCDynamicDialog. * include/cppunit/Message.h: * include/cppunit/TestPath.h: * include/cppunit/TestResult.h: * include/cppunit/TestResultCollector.h: * include/cppunit/TestSuite.h: * include/cppunit/TestFactoryRegistry.h: * include/cppunit/XmlElement.h: * include/cppunit/TypeInfoHelper.h: commented out STL template export in DLL. This caused conflicts when instantiting the same template in a user project.
* Install-unix: added some hints extracted from bug #544684 on how to compile ↵Baptiste Lepilleur2002-06-121-31/+99
| | | | | | | | | | | | | | | | | | | | | for Solaris/Forte C++ compiler. install-unix: added some hints extracted from bug #544684 on how to compile for Solaris/Forte C++ compiler. * TODO: cleaned-up and added new things. * include/cppunit/extensions/HelperMacros.h: CPPUNIT_TEST_SUITE now declares a class named ThisTestFixtureFactory which is a wrapper for the fixture factory. This removes the need to cast the fixture to the correct type when using the factory. Updated other macros implementation to use this new factory. Modified CPPUNIT_TEST_CUSTOM(S) macros to use this new factory class. Added macro CPPUNIT_TEST_ADD to help create new macros like CPPUNIT_TEST_xxx. * examples/cppunittest/HelperMacrosTest.h: * examples/cppunittest/HelperMacrosTest.cpp: added unit tests for CPPUNIT_TEST_CUSTOM, CPPUNIT_TEST_CUSTOMS and CPPUNIT_TEST_ADD.
* Include/cppunit/extensions/TestSuiteBuilder.Baptiste Lepilleur2002-05-254-124/+295
| | | | | | | | | | | | | include/cppunit/extensions/TestSuiteBuilder.h: updated to use TestNamer. Removed template method addTestCallerForException() which should solve the compilation issue with Sun 5.0/6.0 compiler. * include/cppunit/extensions/HelperMacros.h: updated against TestSuiteBuilder change. Added CPPUNIT_TEST_CUSTOM and CPPUNIT_TEST_CUSTOMS to add custom tests to the fixture suite. * include/cppunit/extensions/TestNamer.h: * src/cppunit/TestNamer.cpp: added, TestNamer to name test case and fixture.
* Src/cppunit/PlugInManager.Baptiste Lepilleur2002-04-192-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | src/cppunit/PlugInManager.cpp: fixed bug in unload(). * include/cppunit/TypeInfoHelper.h: * src/cppunit/TypeInfoHelper.cpp: Implementation is now always available is CPPUNIT_HAVE_RTTI is not 0. This removes the need to use different libraries. CPPUNIT_USE_TYPEINFO_NAME can be set on a case by case basis for HelperMacros. * src/cppunit/TestFactoryRegistry.cpp: removed unused include of TypeInfoHelper.h. * include/cppunit/TextTestProgressListener.h: * src/cppunit/TextTestProgressListener.cpp: used endTest() instead of done() to finalize. * src/msvc6/TestPlugInRunner/TestPlugIn.h: * src/msvc6/TestPlugInRunner/TestPlugIn.cpp: updated to use the new test plug-in system. * examples/simple/SimplePlugIn.cpp: * examples/simple/simple_plugin.dsp: crossplatform test plug-in example using 'simple'. * examples/msvc6/EasyTestPlugIn/*: projects replaced with the crossplatform projecct examples/simple/simple_plugin.dsp.
* Configure.Baptiste Lepilleur2002-04-181-2/+2
| | | | | | | | | configure.in: added some makefile.am * contrib/readme.txt: updated. * contrib/bc5/bc5-makefile.zip: added borland 5.5 makefile. Contributed by project cuppa.
* Bumped version to 1.Baptiste Lepilleur2002-04-173-61/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bumped version to 1.9.3 * FAQ: added question about 4786 warning on VC++. * NEWS: updated. * contrib/msvc/readme.txt: moved to contrib/readme.txt. * contrib/xml-xsl/report.xsl: added XML style sheet contributed by 'cuppa' project team (http://sourceforge.jp/projects/cuppa/) * examples/cppunittest/TestResultTest.h: * examples/cppunittest/TestResultTest.cpp: added tests for startTestRun()/endTestRun(). * examples/simple/*: added. A simple example. * include/cppunit/BriefTestProgressListener.h: * src/cppunit/BriefTestProgressListener.cpp: added. Verbose progess listener that print the test name before running the test. * include/cppunit/TestListener.h: added startTestRun()/endTestRun(). * include/cppunit/TestResult.h: * src/cppunit/TestResult.cpp: added runTest(), to be called to run a test by test runner. * src/cppunit/TextTestRunner.cpp: * src/cppunit/TestRunner.cpp: updated to use TestResult::runTest(). * include/cppunit/plugin/PlugInManager.h: * src/cppunit/PlugInManager.cpp: added. Managers for all loaded plug-ins. * include/cppunit/plugin/TestPlugInDefaultImpl.h: * src/cppunit/TestPlugInDefaultImpl.cpp: renamed TestPlugInAdapter. All implementations are empty. * include/cppunit/plugin/TestPlugInSuite.h: removed. * src/cppunit/TestPlugInSuite.cpp: removed. Replaced by PlugInManager. * include/cppunit/plugin/TestPlugIn.h: rewrote the plug-in interface to provide more versatility. updated macros to match new interface. * include/cppunit/extensions/TestFactoryRegistry.h: * include/cppunit/extensions/TestFactoryRegistry.cpp: Added unregisterFactory(). Added convenience method addRegistry(). Rewrote registry life cycle management. AutoRegisterSuite can now detect that the registry has been destroy and not call to it to unregister its test factory. * include/cppunit/extensions/AutoRegisterTest.h: on destruction, the registered factory is unregistered from the registry. * include/cppunit/extensions/HelperMacros.h: added macros CPPUNIT_REGISTRY_ADD_TO_DEFAULT and CPPUNIT_REGISTRY_ADD to help build test suite hierarchy. * src/cppunit/msvc/DllPlugInTester/*: moved to src/cppunit/DllPlugInTester/. * src/cppunit/DllPlugInTester/DllPlugInTester.cpp: removed UNICODE stuffs. Use the PlugInManager instead of PlugInTestSuite. Simplified: only one test on command line, but many DLL can be specified. Added configurations to link against cppunit dll, those are now the default configuration (static linking don't make much sense for plug-in).
* NEWS: updated.Baptiste Lepilleur2002-04-152-13/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NEWS: updated. * configure.in: added include/cppunit/config/Makefile and include/cppunit/plugin/Makefile to the list of target. * doc/CppUnit-win.dox: enabled generation of HTML Help documentation. * include/cppunit/config/Makefile.am: * include/cppunit/plugin/Makefile.am: added. * include/cppunit/config-bcb5.h: * include/cppunit/config-msvc6.h: * include/cppunit/config-mac.h: moved to include/cppunit/config/. * include/cppunit/Portability.h: updated config files location. Added macros CPPUNIT_STRINGIZE and CPPUNIT_JOIN (implementation adapted from boost.org). Added macro CPPUNIT_MAKE_UNIQUE_NAME. * include/cppunit/Test.h: modified methods order. * include/cppunit/extensions/HelperMacros.h: renamed macro __CPPUNIT_MAKE_UNIQUE_NAME to CPPUNIT_MAKE_UNIQUE_NAME and moved its definition to include/cppunit/Portability.h. * include/cppunit/extensions/TestDecorator.h: Inherits Test instead of TestLeaf. * include/cppunit/plugin/DynamicLibraryManager.h: * src/cppunit/DynamicLibraryManager.cpp: added. DLL manager (load & lookup symbol). * src/cppunit/BeOsDynamicLibraryManager.cpp: * src/cppunit/UnixDynamicLibraryManager.cpp: * src/cppunit/Win32DynamicLibraryManager.cpp: added. Implementation of platform dependent methods of DynamicLibraryManager. * include/cppunit/plugin/DynamicLibraryManagerException.h: * src/cppunit/DynamicLibraryManagerException.cpp: added. Exception thrown by DynamicLibraryManager. * include/cppunit/plugin/TestPlugIn.h: added. CppUnitTestPlugIn interface definition. Helper macros to implements plug-in. * include/cppunit/plugin/TestPlugInSuite.h: * src/cppunit/plugin/TestPlugInSuite.cpp: added. A suite to wrap a test plug-in. * include/cppunit/plugin/TestPlugInDefaultImpl.h: * src/cppunit/TestPlugInDefaultImpl.cpp: added. A default implementation of the test plug-in interface. * src/msvc6/DllPlugInTester/DllPlugInTester.cpp: updated to use the new TestPlugIn. * examples/cppunittest/TestResultCollectorTest.cpp: fixed typo.
* Makefile.Baptiste Lepilleur2002-04-122-35/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makefile.am: added examples/qt to tar ball release. * TODO: heavily updated. * contrib/msvc/CppUnit*.wwtpl: changed base class for unit test to TestFixture. * include/cppunit/Test.h: removed toString() method. Not used by the framework and source of confusions with getName(). Added getChildTestCount() and getChildTestAt(), introducing the composite pattern at top level. Added utility methods findTest() and findTestPath(). * src/cppunit/Test.cpp: added. Implementation of new utility methods. * include/cppunit/TestCase.h: * src/cppunit/TestCase.cpp: inherits TestLeaf. Removed toString(), run(void) and defaultResult(). Removed default constructor. * src/cppunit/TestCase.cpp: * src/cppunit/TestSuite.cpp: fixed some includes that used "" instead of <>. * include/cppunit/TestComposite.h: * src/cppunit/TestComposite.cpp: added. Common implementation of Test for composite tests (TestSuite). * include/cppunit/TestFailure.h: * src/cppunit/TestFailure.cpp: removed toString(). * include/cppunit/TestLeaf.h: * src/cppunit/TestLeaf.cpp: added. Common implementation of Test for single test (TestCase). * include/cppunit/TestListener.h: added TimingListener example to documentation. * include/cppunit/TestPath.h: * src/cppunit/TestPath.cpp: added. List of test traversed to access a test in the test hierarchy. * include/cppunit/TestRunner.h: added. Generic TestRunner. * src/cppunit/TestRunner.cpp: moved to TextTestRunner.cpp. Added new implementation of includecppunit/TestRunner.h. * include/cppunit/TestSuite.h: * src/cppunit/TestSuite.cpp: inherits TestComposite and implements new Test interface. Removed toString(). * src/cppunit/TextTestRunner.cpp: moved from TestRunner.cpp. Implementation of include/cppunit/ui/text/TestRunner.h. * include/cppunit/extensions/RepeatedTest.h: * src/cppunit/RepeatedTest.cpp: removed toString(). * include/cppunit/extensions/TestDecorator.h: inherits TestLeaf. Removed toString() * include/cppunit/XmlOutputter.h: * src/cppunit/XmlOutputter.cpp: * examples/cppunittest/XmlOutputterTest.cpp: * examples/cppunittest/XmlOutputterTest.h: XML outputter now escape node content. Add unit test for that bug (#540944). Added style sheet support. Modified XML structure: failure message as its own element. * src/msvc/testrunner/TestRunnerModel.h: * src/msvc/testrunner/TestRunnerModel.cpp: used Test::findTest() to find a test by name instead of using RTTI. Added toAnsiString() for convertion when compiling as UNICODE. * src/msvc/testrunner/TreeHierarchyDlg.h: * src/msvc/testrunner/TreeHierarchyDlg.cpp: used new composite interface of Test to explorer the test hierarchy instead of RTTI. * examples/cppunittest/TestPathTest.h: * examples/cppunittest/TestPathTest.cpp: added, unit tests for TestPath. * examples/cppunittest/TestCaseTest.h: * examples/cppunittest/TestCaseTest.cpp: added test for TestLeaf. * examples/cppunittest/TestSuiteTest.h: * examples/cppunittest/TestSuiteTest.cpp: added test for TestComposite and new Test interface.
* Doc/cookbook.Baptiste Lepilleur2002-03-284-33/+142
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | doc/cookbook.html: removed. Replaced by cookbook.doc. * doc/cookbook.dox: added, conversion of cookbook.html to Doxygen format. * doc/other_documentation.dox: added groups definition. * doc/Makefile.am: replaced cookbook.html by cookbook.dox * doc/Doxyfile.in: added predefined CPPUNIT_HAVE_CPP_SOURCE_ANNOTATION. Replaced cookbook.html by cookbook.dox. * include/cppunitui/mfc/TestRunner.h: added, extracted from include/msvc6/testrunner/TestRunner.h. Moved class TestRunner to namespace CppUnit::MfcUi. * include/msvc6/testrunner/TestRunner.h: deprecated. A simple typedef to CppUnit::MfcUi::TestRunner. * include/textui/TestRuner.h: added, extracted from include/cppunit/TextTestRunner.h. * src/cppunit/TextTestRunner.cpp: renamed TestRunner.cpp. Moved into namespace CppUnit::TextUi. * src/msvc6/testruner/TestRunner.cpp: moved into namespace CppUnit::MfcUi. * src/cppunit/CompilerOutputter.cpp: removed printing "- " before NotEqualException addional message, for consistency between different TestRunner (Mfc,Text...) * include/cppunit/Asserter.h: * include/cppunit/CompilerOutputter.h: * include/cppunit/Exception.h: * include/cppunit/NotEqualException.h: * include/cppunit/Outputter.h: * include/cppunit/SourceLine.h: * include/cppunit/TestAssert.h: * include/cppunit/TestCaller.h: * include/cppunit/TestFailure.h: * include/cppunit/TestFixture.h: * include/cppunit/TestListener.h: * include/cppunit/TestResult.h: * include/cppunit/TestResultCollector.h: * include/cppunit/TestSucessListener.h: * include/cppunit/TestSuite.h: * include/cppunit/TextTestProgressListener.h: * include/cppunit/TextTestRunner.h: * include/cppunit/XmlOutputter.h: * include/cppunit/extensions/AutoRegisterSuite.h: * include/cppunit/extensions/HelperMacros.h: * include/cppunit/extensions/TestFactoryRegistry.h: * include/cppunit/extensions/TestSuiteBuilder.h: * include/cppunit/extensions/TestSuiteFactory.h: doc update. organization in groups. * examples/msvc6/CppUnitTestApp/CppUnitTestApp.cpp: * examples/msvc6/HostApp/HostApp.cpp: updated to use CppUnit::MfcUi::TestRunner. * examples/cppunittest/CppUnitTestMain.cpp: updated to use CppUnit::TextUi::TestRunner.
* Makefile.Baptiste Lepilleur2002-03-271-43/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | makefile.am: added src/CppUnitLibraries.dsw, new contribution, and src/qttestrunner. * TODO: updated (doc). * contrib/msvc/AddingUnitTestMethod.dsm: added, submitted by bloodchen@hotmail.com. * constrib/msvc/readme.txt: updated. * include/cppunit/TestAsserter.h: * include/cppunit/SourceLine.h: updated doc. * include/cppunit/TestCaller.h: reindented. updated doc. * include/cppunit/extensions/HelperMacros.h: relaxed constraint on fixture. Fixture base class may be TestFixture instead of TestCase. * include/cppunit/TestCase.h: * src/cppunit/TestCase.h: TestCase inherits TestFixture for setUp() and tearDown() definition. Moved documentation to TestFixture. * include/cppunit/TestFixture.h: updated documentation. * include/cppunit/TestRegistry.h: * src/cppunit/TestRegistry.cpp: Removed. Replaced by TestFactoryRegistry. * include/cppunit/TextTestRunner.h: * src/cppunit/TextTestRunner.cpp: made printing progress using a TextTestProgressListener optional. * examples\cppunittest\ExceptionTest.h: * examples\cppunittest\HelperMacrosTest.h: * examples\cppunittest\HelperMacrosTest.cpp: * examples\cppunittest\NotEqualException.h: * examples\cppunittest\OrthodoxTest.h: * examples\cppunittest\RepeatedTest.h: * examples\cppunittest\TestAssertTest.h: * examples\cppunittest\TestCallerTest.h: * examples\cppunittest\TestDecoratorTest.h: * examples\cppunittest\TestFailureTest.h: * examples\cppunittest\TestResultCollectorTest.h: * examples\cppunittest\TestResultTest.h: * examples\cppunittest\TestSetUpTest.h: * examples\cppunittest\TestSuiteTest.h: * examples\cppunittest\XmlOutputterTest.h: * examples\cppunittest\XmlOutputterTest.cpp: * examples\cppunittest\XmlUniformizerTest.h: * examples\cppunittest\XmlUniformizerTest.cpp: changed base class for fixture from TestCase to TestFixture. * examples\hierarchy\BoardGameTest.h: * examples\hierarchy\ChessTest.h: * examples\hierarchy\main.cpp: updated to use HelperMacros for correct fixture instantiation (the ChessBoard::testReset test case was using BoardGame fixture instance instead of ChessBoard).
* Include/cppunit/makefile.Baptiste Lepilleur2002-03-254-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | include/cppunit/makefile.am: removed TestRegistry.h * include/cppunit/TestRegistry.h: removed. Obsolete, replaced by TestFactoryRegistry. * src/cppunit/makefile.am: removed TestRegistry.cpp. Added cppunit_dll.dsp. * include/cppunit/CompilerOutputter.h: * include/cppunit/NotEqualException.h: * include/cppunit/SynchronizedObject.h: * include/cppunit/TestFixture.h: * include/cppunit/TestListener.h: * include/cppunit/TestResult.h: * include/cppunit/TestSucessListener.h: * include/cppunit/TextOutputter.h: * include/cppunit/TextTestProgressListener.h: * include/cppunit/TextTestResult.h: * include/cppunit/XmlOutputter.h: * include/cppunit/extensions/TestFactory.h: * include/cppunit/extensions/TestFactoryRegistry.h: * include/cppunit/extensions/TestSuiteBuilder.h: * include/cppunit/extensions/TestSuiteFactory.h: minor doc update. * include/cppunit/TestFixture.h: added DLL export. * include/cppunit/msvc6/TestPlugInInterface.h: updated doc. Added automatic exportation of TestPlugIn publishing function. * src/cppunit/TestCase.cpp: * include/cppunit/TestCase.h: inherits setUp() and tearDown() from class TestFixture.