diff options
| author | Tobias Markmann <tobias.markmann@isode.com> | 2019-11-14 21:08:53 (GMT) |
|---|---|---|
| committer | Tobias Markmann <tobias.markmann@isode.com> | 2019-11-15 11:58:11 (GMT) |
| commit | 8230b23238b4d0ef0fcde01a799758558d502fa1 (patch) | |
| tree | 849251b42e457357b86a2ba91e9b78f635cc55a3 /3rdParty/CppUnit/src/include/cppunit/extensions/HelperMacros.h | |
| parent | caca46ceedddd43c707e7eda9b4c765d61730ccb (diff) | |
| download | swift-8230b23238b4d0ef0fcde01a799758558d502fa1.zip swift-8230b23238b4d0ef0fcde01a799758558d502fa1.tar.bz2 | |
Update 3rdParty/CppUnit to version 1.14.0
This gets rid of std::auto_ptr usage and its deprecation
warnings.
Test-Information:
Builds and tests pass on macOS.
Change-Id: I299a0a8d9aa2ead15c933e83a2e3e53f84a4f5b7
Diffstat (limited to '3rdParty/CppUnit/src/include/cppunit/extensions/HelperMacros.h')
| -rw-r--r-- | 3rdParty/CppUnit/src/include/cppunit/extensions/HelperMacros.h | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/3rdParty/CppUnit/src/include/cppunit/extensions/HelperMacros.h b/3rdParty/CppUnit/src/include/cppunit/extensions/HelperMacros.h index 12431e4..4c30319 100644 --- a/3rdParty/CppUnit/src/include/cppunit/extensions/HelperMacros.h +++ b/3rdParty/CppUnit/src/include/cppunit/extensions/HelperMacros.h | |||
| @@ -166,17 +166,18 @@ | |||
| 166 | #define CPPUNIT_TEST_SUITE_END() \ | 166 | #define CPPUNIT_TEST_SUITE_END() \ |
| 167 | } \ | 167 | } \ |
| 168 | \ | 168 | \ |
| 169 | public: \ | ||
| 169 | static CPPUNIT_NS::TestSuite *suite() \ | 170 | static CPPUNIT_NS::TestSuite *suite() \ |
| 170 | { \ | 171 | { \ |
| 171 | const CPPUNIT_NS::TestNamer &namer = getTestNamer__(); \ | 172 | const CPPUNIT_NS::TestNamer &namer = getTestNamer__(); \ |
| 172 | std::auto_ptr<CPPUNIT_NS::TestSuite> suite( \ | 173 | std::unique_ptr<CPPUNIT_NS::TestSuite> guard( \ |
| 173 | new CPPUNIT_NS::TestSuite( namer.getFixtureName() )); \ | 174 | new CPPUNIT_NS::TestSuite( namer.getFixtureName() )); \ |
| 174 | CPPUNIT_NS::ConcretTestFixtureFactory<TestFixtureType> factory; \ | 175 | CPPUNIT_NS::ConcretTestFixtureFactory<TestFixtureType> factory; \ |
| 175 | CPPUNIT_NS::TestSuiteBuilderContextBase context( *suite.get(), \ | 176 | CPPUNIT_NS::TestSuiteBuilderContextBase context( *guard.get(), \ |
| 176 | namer, \ | 177 | namer, \ |
| 177 | factory ); \ | 178 | factory ); \ |
| 178 | TestFixtureType::addTestsToSuite( context ); \ | 179 | TestFixtureType::addTestsToSuite( context ); \ |
| 179 | return suite.release(); \ | 180 | return guard.release(); \ |
| 180 | } \ | 181 | } \ |
| 181 | private: /* dummy typedef so that the macro can still end with ';'*/ \ | 182 | private: /* dummy typedef so that the macro can still end with ';'*/ \ |
| 182 | typedef int CppUnitDummyTypedefForSemiColonEnding__ | 183 | typedef int CppUnitDummyTypedefForSemiColonEnding__ |
| @@ -300,6 +301,17 @@ | |||
| 300 | &TestFixtureType::testMethod, \ | 301 | &TestFixtureType::testMethod, \ |
| 301 | context.makeFixture() ) ) ) | 302 | context.makeFixture() ) ) ) |
| 302 | 303 | ||
| 304 | #define CPPUNIT_TEST_PARAMETERIZED( testMethod, ... ) \ | ||
| 305 | for (auto& i : __VA_ARGS__) \ | ||
| 306 | { \ | ||
| 307 | TestFixtureType* fixture = context.makeFixture(); \ | ||
| 308 | CPPUNIT_TEST_SUITE_ADD_TEST( \ | ||
| 309 | ( new CPPUNIT_NS::TestCaller<TestFixtureType>( \ | ||
| 310 | context.getTestNameFor(#testMethod, i), \ | ||
| 311 | std::bind(&TestFixtureType::testMethod, fixture, i), \ | ||
| 312 | fixture))); \ | ||
| 313 | } | ||
| 314 | |||
| 303 | /*! \brief Add a test which fail if the specified exception is not caught. | 315 | /*! \brief Add a test which fail if the specified exception is not caught. |
| 304 | * | 316 | * |
| 305 | * Example: | 317 | * Example: |
| @@ -308,13 +320,13 @@ | |||
| 308 | * #include <vector> | 320 | * #include <vector> |
| 309 | * class MyTest : public CppUnit::TestFixture { | 321 | * class MyTest : public CppUnit::TestFixture { |
| 310 | * CPPUNIT_TEST_SUITE( MyTest ); | 322 | * CPPUNIT_TEST_SUITE( MyTest ); |
| 311 | * CPPUNIT_TEST_EXCEPTION( testVectorAtThrow, std::invalid_argument ); | 323 | * CPPUNIT_TEST_EXCEPTION( testVectorAtThrow, std::out_of_range ); |
| 312 | * CPPUNIT_TEST_SUITE_END(); | 324 | * CPPUNIT_TEST_SUITE_END(); |
| 313 | * public: | 325 | * public: |
| 314 | * void testVectorAtThrow() | 326 | * void testVectorAtThrow() |
| 315 | * { | 327 | * { |
| 316 | * std::vector<int> v; | 328 | * std::vector<int> v; |
| 317 | * v.at( 1 ); // must throw exception std::invalid_argument | 329 | * v.at( 1 ); // must throw exception std::out_of_range |
| 318 | * } | 330 | * } |
| 319 | * }; | 331 | * }; |
| 320 | * \endcode | 332 | * \endcode |
Swift