summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Markmann <tobias.markmann@isode.com>2019-11-14 21:08:53 (GMT)
committerTobias Markmann <tobias.markmann@isode.com>2019-11-15 11:58:11 (GMT)
commit8230b23238b4d0ef0fcde01a799758558d502fa1 (patch)
tree849251b42e457357b86a2ba91e9b78f635cc55a3 /3rdParty/CppUnit/src/include/cppunit/extensions/HelperMacros.h
parentcaca46ceedddd43c707e7eda9b4c765d61730ccb (diff)
downloadswift-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.h24
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 \
169public: \
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