cppunit.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
3 *
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
7 */
8
9#ifndef SQUID_COMPAT_CPPUNIT_H
10#define SQUID_COMPAT_CPPUNIT_H
11
12// CPPUNIT test suite uses auto_ptr which is deprecated in C++0x
13
14#if HAVE_CPPUNIT_EXTENSIONS_HELPERMACROS_H
15#if defined(__cplusplus)
16#include <cppunit/extensions/HelperMacros.h>
17
18#undef CPPUNIT_TEST_SUITE_END
19
20// Clone from cppunit 1.12.1
21#define CPPUNIT_TEST_SUITE_END() \
22 } \
23 \
24 static CPPUNIT_NS::TestSuite *suite() \
25 { \
26 const CPPUNIT_NS::TestNamer &namer = getTestNamer__(); \
27 std::unique_ptr<CPPUNIT_NS::TestSuite> suite( \
28 new CPPUNIT_NS::TestSuite( namer.getFixtureName() )); \
29 CPPUNIT_NS::ConcretTestFixtureFactory<TestFixtureType> factory; \
30 CPPUNIT_NS::TestSuiteBuilderContextBase context( *suite.get(), \
31 namer, \
32 factory ); \
33 TestFixtureType::addTestsToSuite( context ); \
34 return suite.release(); \
35 } \
36 private: /* dummy typedef so that the macro can still end with ';'*/ \
37 typedef int CppUnitDummyTypedefForSemiColonEnding__
38
39#endif /* __cplusplus */
40#endif /* HAVE_CPPUNIT_EXTENSIONS_HELPERMACROS_H */
41#endif /* SQUID_COMPAT_CPPUNIT_H */
42

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors