check_PROGRAMS+=\
tests/testBoilerplate \
tests/testCacheManager \
+ tests/testCharacterSet \
tests/testDiskIO \
tests/testDns \
tests/testEvent \
tests/testEventLoop \
tests/test_http_range \
+ tests/testTokenizer \
tests/testHttp1Parser \
tests/testHttpReply \
tests/testHttpRequest \
+ tests/testIcmp \
+ tests/testIpAddress \
tests/testStore \
tests/testString \
tests/testURL \
tests_testBoilerplate_DEPENDENCIES = \
$(SQUID_CPPUNIT_LA)
+## Tests of base/libbase.la objects
+tests_testCharacterSet_SOURCES = \
+ tests/testCharacterSet.cc \
+ tests/testCharacterSet.h
+nodist_tests_testCharacterSet_SOURCES = \
+ base/CharacterSet.h \
+ $(TESTSOURCES) \
+ tests/stub_cbdata.cc \
+ tests/stub_debug.cc \
+ tests/stub_MemBuf.cc
+tests_testCharacterSet_LDFLAGS = $(LIBADD_DL)
+tests_testCharacterSet_LDADD= \
+ base/libbase.la \
+ $(COMPAT_LIB) \
+ $(SQUID_CPPUNIT_LA) \
+ $(SQUID_CPPUNIT_LIBS) \
+ $(XTRA_LIBS)
+
## Tests of the CacheManager module.
tests_testCacheManager_SOURCES = \
AccessLogEntry.cc \
tests_test_http_range_DEPENDENCIES = \
$(SQUID_CPPUNIT_LA)
+## Tests of parser/* objects
+tests_testTokenizer_SOURCES = \
+ tests/testTokenizer.h \
+ tests/testTokenizer.cc
+nodist_tests_testTokenizer_SOURCES = \
+ parser/Tokenizer.h \
+ $(SBUF_SOURCE) \
+ SquidString.h \
+ String.cc \
+ $(TESTSOURCES) \
+ tests/stub_debug.cc \
+ tests/stub_libmem.cc \
+ tests/stub_time.cc \
+ tests/stub_SBufDetailedStats.cc
+tests_testTokenizer_LDFLAGS = $(LIBADD_DL)
+tests_testTokenizer_LDADD = \
+ parser/libsquid-parser.la \
+ base/libbase.la \
+ $(top_builddir)/lib/libmiscutil.la \
+ $(COMPAT_LIB) \
+ $(SQUID_CPPUNIT_LA) \
+ $(SQUID_CPPUNIT_LIBS) \
+ $(XTRA_LIBS)
+
tests_testHttp1Parser_SOURCES = \
Debug.h \
MemBuf.cc \
$(REPL_OBJS) \
$(SQUID_CPPUNIT_LA)
+## Tests for icmp/* objects
+# icmp/libicmp-core.la is used by pinger so SHOULD NOT require more dependancies! :-(
+tests_testIcmp_SOURCES = \
+ tests/testIcmp.h \
+ tests/testIcmp.cc
+nodist_tests_testIcmp_SOURCES = \
+ icmp/Icmp.h \
+ SquidTime.h \
+ tests/stub_debug.cc \
+ time.cc \
+ globals.cc
+tests_testIcmp_LDFLAGS = $(LIBADD_DL)
+tests_testIcmp_LDADD=\
+ icmp/libicmp-core.la \
+ ip/libip.la \
+ base/libbase.la \
+ $(COMPAT_LIB) \
+ $(SQUID_CPPUNIT_LA) \
+ $(SQUID_CPPUNIT_LIBS) \
+ $(XTRA_LIBS)
+
+## Tests for ip/* objects
+tests_testIpAddress_SOURCES= \
+ tests/testAddress.cc \
+ tests/testAddress.h
+nodist_tests_testIpAddress_SOURCES= \
+ ip/Address.h \
+ tests/stub_debug.cc \
+ tests/stub_tools.cc
+tests_testIpAddress_LDADD= \
+ ip/libip.la \
+ base/libbase.la \
+ $(COMPAT_LIB) \
+ $(SQUID_CPPUNIT_LA) \
+ $(SQUID_CPPUNIT_LIBS) \
+ $(XTRA_LIBS)
+tests_testIpAddress_LDFLAGS= $(LIBADD_DL)
+
## why so many sources? well httpHeaderTools requites ACLChecklist & friends.
## first line - what we are testing.
tests_testStore_SOURCES= \
TextException.cc \
TextException.h \
TidyPointer.h
-
-EXTRA_PROGRAMS = \
- testCharacterSet
-
-check_PROGRAMS += testCharacterSet
-TESTS += testCharacterSet
-
-testCharacterSet_SOURCES = \
- CharacterSet.h \
- testCharacterSet.h \
- testCharacterSet.cc
-nodist_testCharacterSet_SOURCES = \
- $(top_srcdir)/src/tests/stub_debug.cc \
- $(top_srcdir)/src/tests/stub_MemBuf.cc \
- $(top_srcdir)/src/tests/stub_cbdata.cc
-testCharacterSet_LDFLAGS = $(LIBADD_DL)
-testCharacterSet_LDADD=\
- $(SQUID_CPPUNIT_LIBS) \
- $(SQUID_CPPUNIT_LA) \
- libbase.la \
- $(COMPAT_LIB) \
- $(XTRA_LIBS)
-testCharacterSet_DEPENDENCIES= $(SQUID_CPPUNIT_LA)
include $(top_srcdir)/src/TestHeaders.am
# TODO: get rid of this when config filename is no longer a global constant.
-# its only here so the testIcmp will link .
+# its only here so the pinger globals.cc will link.
DEFS += -DDEFAULT_CONFIG_FILE=NULL
# ICMP Specific Configurations
if ENABLE_PINGER
-PINGER = pinger
+libexec_PROGRAMS = pinger
else
-PINGER =
+EXTRA_PROGRAMS = pinger
endif
-EXTRA_PROGRAMS = \
- pinger \
- testIcmp
-
-libexec_PROGRAMS = $(PINGER)
-
noinst_LTLIBRARIES = libicmp-core.la libicmp.la
-SBUF_SOURCE= \
- $(top_srcdir)/src/base/CharacterSet.h \
- $(top_srcdir)/src/SBuf.h \
- $(top_srcdir)/src/SBuf.cc \
- $(top_srcdir)/src/MemBlob.h \
- $(top_srcdir)/src/MemBlob.cc \
- $(top_srcdir)/src/OutOfBoundsException.h \
- $(top_srcdir)/src/SBufExceptions.h \
- $(top_srcdir)/src/SBufExceptions.cc \
- $(top_srcdir)/src/String.cc \
- $(top_srcdir)/src/SquidString.h \
- $(top_srcdir)/src/base/TextException.h \
- $(top_srcdir)/src/base/TextException.cc
-
# ICMP API definition ...
libicmp_core_la_SOURCES = \
Icmp.h \
# depends on these but install/dist is done elsewhere.
# TODO: remove when these are cleaned up in their own way.
nodist_pinger_SOURCES = \
- $(top_srcdir)/src/debug.cc \
- $(top_builddir)/src/globals.cc \
- $(top_srcdir)/src/time.cc \
- $(top_srcdir)/src/SquidConfig.cc \
- $(top_srcdir)/src/SquidNew.cc \
- $(top_srcdir)/src/tests/stub_HelperChildConfig.cc
+ debug.cc \
+ globals.cc \
+ SquidConfig.cc \
+ SquidNew.cc \
+ stub_HelperChildConfig.cc \
+ time.cc
pinger_LDFLAGS = $(LIBADD_DL)
pinger_LDADD=\
$(COMPAT_LIB) \
$(XTRA_LIBS)
-
##install-pinger:
## @f=$(PINGER_EXE); \
## if test -f $(libexecdir)/$$f; then \
## $(RM) -f $(libexecdir)/-$$f; \
## fi
+## files we need to pull in from other locations
+## copied like this to avoid subdir-objects collisions on 'make clean'
+debug.cc: $(top_srcdir)/src/debug.cc
+ cp $(top_srcdir)/src/debug.cc .
-check_PROGRAMS += testIcmp
-TESTS += testIcmp
+globals.cc: $(top_srcdir)/src/globals.h
+ cp $(top_builddir)/src/globals.cc .
-## Tests of the ICMP base module.
-# Its used by pinger so SHOULD NOT require more dependancies! :-(
-testIcmp_SOURCES = \
- Icmp.h \
- testIcmp.h \
- testIcmp.cc
-nodist_testIcmp_SOURCES = \
- $(top_srcdir)/src/SquidTime.h \
- $(top_srcdir)/src/tests/stub_debug.cc \
- $(top_srcdir)/src/time.cc \
- $(top_srcdir)/test-suite/test_tools.cc \
- $(top_builddir)/src/globals.cc
-testIcmp_LDFLAGS = $(LIBADD_DL)
-testIcmp_LDADD=\
- $(SQUID_CPPUNIT_LIBS) \
- $(SQUID_CPPUNIT_LA) \
- libicmp-core.la \
- ../ip/libip.la \
- ../base/libbase.la \
- $(COMPAT_LIB) \
- $(XTRA_LIBS)
-testIcmp_DEPENDENCIES= $(SQUID_CPPUNIT_LA)
+time.cc: $(top_srcdir)/src/time.cc
+ cp $(top_srcdir)/src/time.cc .
+
+SquidConfig.cc: $(top_srcdir)/src/SquidConfig.cc
+ cp $(top_srcdir)/src/SquidConfig.cc .
+
+SquidNew.cc: $(top_srcdir)/src/SquidNew.cc
+ cp $(top_srcdir)/src/SquidNew.cc .
+
+stub_HelperChildConfig.cc: $(top_srcdir)/src/tests/stub_HelperChildConfig.cc
+ cp $(top_srcdir)/src/tests/stub_HelperChildConfig.cc .
Qos.cci \
tools.cc \
tools.h
-
-
-check_PROGRAMS += testIpAddress
-TESTS += testIpAddress
-
-testIpAddress_SOURCES= \
- testAddress.cc \
- testAddress.h
-nodist_testIpAddress_SOURCES= \
- $(top_srcdir)/src/tests/stub_debug.cc \
- $(top_srcdir)/src/tests/stub_tools.cc
-testIpAddress_LDADD= \
- libip.la \
- ../base/libbase.la \
- $(XTRA_LIBS) \
- $(COMPAT_LIB) \
- $(SQUID_CPPUNIT_LA) \
- $(SQUID_CPPUNIT_LIBS)
-testIpAddress_LDFLAGS= $(LIBADD_DL)
include $(top_srcdir)/src/Common.am
include $(top_srcdir)/src/TestHeaders.am
-EXTRA_PROGRAMS = \
- testTokenizer
-
-check_PROGRAMS += testTokenizer
-TESTS += testTokenizer
-
noinst_LTLIBRARIES = libsquid-parser.la
libsquid_parser_la_SOURCES = \
$(top_srcdir)/src/base/TextException.h \
$(top_srcdir)/src/base/TextException.cc
-testTokenizer_SOURCES = \
- $(SBUF_SOURCE) \
- testTokenizer.h \
- testTokenizer.cc \
- Tokenizer.h
-nodist_testTokenizer_SOURCES = \
- $(top_srcdir)/src/tests/stub_libmem.cc \
- $(top_srcdir)/src/tests/stub_debug.cc \
- $(top_srcdir)/src/tests/stub_time.cc \
- $(top_srcdir)/src/tests/stub_SBufDetailedStats.cc
-testTokenizer_LDFLAGS = $(LIBADD_DL)
-testTokenizer_LDADD = \
- libsquid-parser.la \
- $(top_builddir)/lib/libmiscutil.la \
- $(top_builddir)/src/base/libbase.la \
- $(SQUID_CPPUNIT_LIBS) \
- $(SQUID_CPPUNIT_LA) \
- $(COMPAT_LIB)
-testTokenizer_DEPENDENCIES = $(SQUID_CPPUNIT_LA)
#define SQUID_HELPER 1
#include "squid.h"
+#include "tests/testIcmp.h"
+#include "unitTestMain.h"
#include <cppunit/TestAssert.h>
-#include "testIcmp.h"
-#include "unitTestMain.h"
-
CPPUNIT_TEST_SUITE_REGISTRATION( testIcmp );
-#if USE_ICMP
-
void
testIcmp::testChecksum()
{
+#if USE_ICMP
stubIcmp icmp;
uint16_t buf[10], tmpval;
for (tmpval=0; tmpval < 10; ++tmpval)
CPPUNIT_ASSERT_EQUAL((int)htons(0xffc8), icmp.testChecksum(buf,20)); // 1+2...+10
// data with invalid length (overrun) ==> Garbage checksum...
+#endif
}
void
testIcmp::testHops()
{
+#if USE_ICMP
stubIcmp icmp;
/* test invalid -(under values) */
CPPUNIT_ASSERT_EQUAL(0, icmp.testHops(256));
// 257 - produces negative hops
CPPUNIT_ASSERT_EQUAL(-1, icmp.testHops(257));
+#endif
}
-#endif /* USE_ICMP */
-
* Please see the COPYING and CONTRIBUTORS files for details.
*/
-#ifndef SQUID_SRC_TEST_URL_H
-#define SQUID_SRC_TEST_URL_H
+#ifndef SQUID_SRC_TESTS_TESTICMP_H
+#define SQUID_SRC_TESTS_TESTICMP_H
-#include "Icmp.h"
#include <cppunit/extensions/HelperMacros.h>
#if USE_ICMP
+#include "icmp/Icmp.h"
+
class stubIcmp : public Icmp
{
public:
int testChecksum(unsigned short *ptr, int size) { return CheckSum(ptr,size); };
int testHops(int ttl) { return ipHops(ttl); };
};
-
-#endif /* USE_ICMP */
+#endif
/**
* test the ICMP base class.
class testIcmp : public CPPUNIT_NS::TestFixture
{
CPPUNIT_TEST_SUITE( testIcmp );
-#if USE_ICMP
CPPUNIT_TEST( testChecksum );
CPPUNIT_TEST( testHops );
-#endif /* USE_ICMP */
CPPUNIT_TEST_SUITE_END();
protected:
-#if USE_ICMP
void testChecksum();
void testHops();
-#endif /* USE_ICMP */
};
-#endif
+#endif /* SQUID_SRC_TESTS_TESTICMP_H */
#include "squid.h"
#include "base/CharacterSet.h"
#include "parser/Tokenizer.h"
-#include "testTokenizer.h"
+#include "tests/testTokenizer.h"
#include "unitTestMain.h"
CPPUNIT_TEST_SUITE_REGISTRATION( testTokenizer );