Move testing code into new src/test directory.

This commit is contained in:
Nick Mathewson 2009-09-22 12:31:15 -04:00
parent d4b54549b8
commit da1aa66f70
13 changed files with 50 additions and 29 deletions

8
.gitignore vendored
View File

@ -127,7 +127,13 @@
/src/or/or_sha1.i /src/or/or_sha1.i
/src/or/micro-revision.* /src/or/micro-revision.*
/src/or/tor /src/or/tor
/src/or/test /src/or/libtor.a
# /src/test
/src/test/Makefile
/src/test/Makefile.in
/src/test/test
# /src/tools/ # /src/tools/
/src/tools/tor-checkkey /src/tools/tor-checkkey

View File

@ -59,14 +59,15 @@ doxygen:
doxygen && cd doc/doxygen/latex && make doxygen && cd doc/doxygen/latex && make
test: test:
./src/or/test ./src/test/test
# Avoid strlcpy.c, strlcat.c, tree.h # Avoid strlcpy.c, strlcat.c, tree.h
check-spaces: check-spaces:
./contrib/checkSpace.pl -C \ ./contrib/checkSpace.pl -C \
src/common/*.h \ src/common/*.h \
src/common/[^asO]*.c src/common/address.c \ src/common/[^asO]*.c src/common/address.c \
src/or/[^et]*.[ch] src/or/t[^i]*.c src/or/eventdns_tor.h src/or/[^et]*.[ch] src/or/t*.c src/or/eventdns_tor.h \
src/test/test*.[ch]
check-docs: check-docs:
./contrib/checkOptionDocs.pl ./contrib/checkOptionDocs.pl

View File

@ -826,7 +826,7 @@ fi
CPPFLAGS="$CPPFLAGS $TOR_CPPFLAGS_libevent $TOR_CPPFLAGS_openssl $TOR_CPPFLAGS_zlib" CPPFLAGS="$CPPFLAGS $TOR_CPPFLAGS_libevent $TOR_CPPFLAGS_openssl $TOR_CPPFLAGS_zlib"
AC_CONFIG_FILES([Makefile tor.spec Doxyfile contrib/tor.sh contrib/torctl contrib/torify contrib/tor.logrotate contrib/Makefile contrib/osx/Makefile contrib/osx/TorBundleDesc.plist contrib/osx/TorBundleInfo.plist contrib/osx/TorDesc.plist contrib/osx/TorInfo.plist contrib/osx/TorStartupDesc.plist src/config/torrc.sample doc/tor.1 src/Makefile doc/Makefile doc/design-paper/Makefile doc/spec/Makefile src/config/Makefile src/common/Makefile src/or/Makefile src/win32/Makefile src/tools/Makefile contrib/suse/Makefile contrib/suse/tor.sh]) AC_CONFIG_FILES([Makefile tor.spec Doxyfile contrib/tor.sh contrib/torctl contrib/torify contrib/tor.logrotate contrib/Makefile contrib/osx/Makefile contrib/osx/TorBundleDesc.plist contrib/osx/TorBundleInfo.plist contrib/osx/TorDesc.plist contrib/osx/TorInfo.plist contrib/osx/TorStartupDesc.plist src/config/torrc.sample doc/tor.1 src/Makefile doc/Makefile doc/design-paper/Makefile doc/spec/Makefile src/config/Makefile src/common/Makefile src/or/Makefile src/test/Makefile src/win32/Makefile src/tools/Makefile contrib/suse/Makefile contrib/suse/tor.sh])
AC_OUTPUT AC_OUTPUT
if test -x /usr/bin/perl && test -x ./contrib/updateVersions.pl ; then if test -x /usr/bin/perl && test -x ./contrib/updateVersions.pl ; then

View File

@ -1,5 +1,5 @@
# leave in dependency order, since common must be built first # leave in dependency order, since common must be built first
SUBDIRS = common or tools win32 config SUBDIRS = common or test tools win32 config
DIST_SUBDIRS = common or tools win32 config DIST_SUBDIRS = common or test tools win32 config

View File

@ -1,8 +1,5 @@
TESTS = test
noinst_PROGRAMS = test
bin_PROGRAMS = tor bin_PROGRAMS = tor
noinst_LIBRARIES = libtor.a
if BUILD_NT_SERVICES if BUILD_NT_SERVICES
tor_platform_source=ntmain.c tor_platform_source=ntmain.c
@ -18,7 +15,7 @@ else
evdns_source=eventdns.c evdns_source=eventdns.c
endif endif
COMMON_SRC = buffers.c circuitbuild.c circuitlist.c \ libtor_a_SOURCES = buffers.c circuitbuild.c circuitlist.c \
circuituse.c command.c config.c \ circuituse.c command.c config.c \
connection.c connection_edge.c connection_or.c control.c \ connection.c connection_edge.c connection_or.c control.c \
cpuworker.c directory.c dirserv.c dirvote.c \ cpuworker.c directory.c dirserv.c dirvote.c \
@ -28,7 +25,11 @@ COMMON_SRC = buffers.c circuitbuild.c circuitlist.c \
rendservice.c rephist.c router.c routerlist.c routerparse.c \ rendservice.c rephist.c router.c routerlist.c routerparse.c \
$(evdns_source) config_codedigest.c $(evdns_source) config_codedigest.c
tor_SOURCES = $(COMMON_SRC) tor_main.c #libtor_a_LIBADD = ../common/libor.a ../common/libor-crypto.a \
# ../common/libor-event.a
tor_SOURCES = tor_main.c
AM_CPPFLAGS = -DSHARE_DATADIR="\"$(datadir)\"" \ AM_CPPFLAGS = -DSHARE_DATADIR="\"$(datadir)\"" \
-DLOCALSTATEDIR="\"$(localstatedir)\"" \ -DLOCALSTATEDIR="\"$(localstatedir)\"" \
@ -39,21 +40,11 @@ AM_CPPFLAGS = -DSHARE_DATADIR="\"$(datadir)\"" \
# matters a lot there, and is quite hard to debug if you forget to do it. # matters a lot there, and is quite hard to debug if you forget to do it.
tor_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ @TOR_LDFLAGS_libevent@ tor_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ @TOR_LDFLAGS_libevent@
tor_LDADD = ../common/libor.a ../common/libor-crypto.a \ tor_LDADD = ./libtor.a ../common/libor.a ../common/libor-crypto.a \
../common/libor-event.a \
-lz -lm -levent -lssl -lcrypto @TOR_LIB_WS32@ @TOR_LIB_GDI@
test_SOURCES = $(COMMON_SRC) test_data.c test.c tinytest.c
test_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \
@TOR_LDFLAGS_libevent@
test_LDADD = ../common/libor.a ../common/libor-crypto.a \
../common/libor-event.a \ ../common/libor-event.a \
-lz -lm -levent -lssl -lcrypto @TOR_LIB_WS32@ @TOR_LIB_GDI@ -lz -lm -levent -lssl -lcrypto @TOR_LIB_WS32@ @TOR_LIB_GDI@
noinst_HEADERS = or.h eventdns.h eventdns_tor.h micro-revision.i tinytest.h \ noinst_HEADERS = or.h eventdns.h eventdns_tor.h micro-revision.i
tinytest_macros.h
EXTRA_DIST = tinytest_demo.c
config_codedigest.o: or_sha1.i config_codedigest.o: or_sha1.i
@ -74,17 +65,15 @@ micro-revision.i: FORCE
mv micro-revision.tmp micro-revision.i; \ mv micro-revision.tmp micro-revision.i; \
fi; true fi; true
or_sha1.i: $(tor_SOURCES) test_data.c test.c or_sha1.i: $(tor_SOURCES)
if test "@SHA1SUM@" != none; then \ if test "@SHA1SUM@" != none; then \
@SHA1SUM@ $(tor_SOURCES) test_data.c test.c | @SED@ -n 's/^\(.*\)$$/"\1\\n"/p' > or_sha1.i; \ @SHA1SUM@ $(tor_SOURCES) | @SED@ -n 's/^\(.*\)$$/"\1\\n"/p' > or_sha1.i; \
elif test "@OPENSSL@" != none; then \ elif test "@OPENSSL@" != none; then \
@OPENSSL@ sha1 $(tor_SOURCES) test_data.c test.c | @SED@ -n 's/SHA1(\(.*\))= \(.*\)/"\2 \1\\n"/p' > or_sha1.i; \ @OPENSSL@ sha1 $(tor_SOURCES) | @SED@ -n 's/SHA1(\(.*\))= \(.*\)/"\2 \1\\n"/p' > or_sha1.i; \
else \ else \
rm or_sha1.i; \ rm or_sha1.i; \
touch or_sha1.i; \ touch or_sha1.i; \
fi fi
#Dummy target to ensure that micro-revision.i _always_ gets built. #Dummy target to ensure that micro-revision.i _always_ gets built.
FORCE: FORCE:

25
src/test/Makefile.am Normal file
View File

@ -0,0 +1,25 @@
TESTS = test
noinst_PROGRAMS = test
AM_CPPFLAGS = -DSHARE_DATADIR="\"$(datadir)\"" \
-DLOCALSTATEDIR="\"$(localstatedir)\"" \
-DBINDIR="\"$(bindir)\""
CFLAGS += -I../or
# -L flags need to go in LDFLAGS. -l flags need to go in LDADD.
# This seems to matter nowhere but on windows, but I assure you that it
# matters a lot there, and is quite hard to debug if you forget to do it.
test_SOURCES = test_data.c test.c tinytest.c
test_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \
@TOR_LDFLAGS_libevent@
test_LDADD = ../or/libtor.a ../common/libor.a ../common/libor-crypto.a \
../common/libor-event.a \
-lz -lm -levent -lssl -lcrypto @TOR_LIB_WS32@ @TOR_LIB_GDI@
noinst_HEADERS = tinytest.h tinytest_macros.h
EXTRA_DIST = tinytest_demo.c