#
# Have wrappers for the test tools, so that they run.
#
-TESTBINDIR = ./$(BUILD_DIR)/bin/local
-TESTBIN = $(JLIBTOOL) --quiet --mode=execute $(TESTBINDIR)
+TEST_BIN_DIR = ./$(BUILD_DIR)/bin/local
+TEST_BIN = $(JLIBTOOL) --quiet --mode=execute $(TEST_BIN_DIR)
#
# For creating documentation via doc/all.mk
# Don't molest STDERR as this may be used to receive output from a debugger.
$(BUILD_DIR)/tests/radiusd-c:
@printf "radiusd -C... "
- ${Q}if ! ${TESTBIN}/radiusd -XCMd ./raddb -n debug -D ./share/dictionary -n test > $(BUILD_DIR)/tests/radiusd.config.log; then \
+ ${Q}if ! ${TEST_BIN}/radiusd -XCMd ./raddb -n debug -D ./share/dictionary -n test > $(BUILD_DIR)/tests/radiusd.config.log; then \
rm -f raddb/test.conf; \
cat $(BUILD_DIR)/tests/radiusd.config.log; \
echo "fail"; \
- echo "${TESTBIN}/radiusd -XCMd ./raddb -n debug -D ./share/dictionary -n test"; \
+ echo "${TEST_BIN}/radiusd -XCMd ./raddb -n debug -D ./share/dictionary -n test"; \
exit 1; \
fi
${Q}rm -f raddb/test.conf
# Otherwise, check the log file for a parse error which matches the
# ERROR line in the input.
#
-$(OUTPUT)/%: $(DIR)/% $(OUTPUT)/%.attrs $(TESTBINDIR)/unit_test_module | $(AUTH_RADDB) $(AUTH_LIBS) build.raddb
+$(OUTPUT)/%: $(DIR)/% $(OUTPUT)/%.attrs $(TEST_BIN_DIR)/unit_test_module | $(AUTH_RADDB) $(AUTH_LIBS) build.raddb
@echo "AUTH-TEST $(notdir $@)"
- ${Q}if ! TESTDIR=$(notdir $@) $(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/auth/ -i "$@.attrs" -f "$@.attrs" -r "$@" -xx > "$@.log" 2>&1 || ! test -f "$@"; then \
+ ${Q}if ! TESTDIR=$(notdir $@) $(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/auth/ -i "$@.attrs" -f "$@.attrs" -r "$@" -xx > "$@.log" 2>&1 || ! test -f "$@"; then \
if ! grep ERROR $< 2>&1 > /dev/null; then \
cat $@.log; \
echo "# $@.log"; \
- echo "TESTDIR=$(notdir $@) $(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/auth/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xxx > \"$@.log\" 2>&1"; \
+ echo "TESTDIR=$(notdir $@) $(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/auth/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xxx > \"$@.log\" 2>&1"; \
rm -f $(BUILD_DIR)/tests/test.auth; \
exit 1; \
fi; \
if [ "$$EXPECTED" != "$$FOUND" ]; then \
cat $@.log; \
echo "# $@.log"; \
- echo "TESTDIR=$(notdir $@) $(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/auth/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xxx > \"$@.log\" 2>&1"; \
+ echo "TESTDIR=$(notdir $@) $(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/auth/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xxx > \"$@.log\" 2>&1"; \
rm -f $(BUILD_DIR)/tests/test.auth; \
exit 1; \
else \
#
$(BUILD_DIR)/tests/bin/%: $(DIR)/% $(BUILD_DIR)/bin/% $(BUILD_DIR)/bin/local/%
@echo "BIN-TEST $(notdir $@)"
- ${Q}if ! TESTBIN="$(TESTBIN)" DICT_DIR="$(top_srcdir)/share/dictionary" $<; then \
- echo TESTBIN=\"$(TESTBIN)\" DICT_DIR="$(top_srcdir)/share/dictionary" $<; \
+ ${Q}if ! TEST_BIN="$(TEST_BIN)" DICT_DIR="$(top_srcdir)/share/dictionary" $<; then \
+ echo TEST_BIN=\"$(TEST_BIN)\" DICT_DIR="$(top_srcdir)/share/dictionary" $<; \
exit 1; \
fi
${Q}touch $@
. src/tests/bin/lib.sh
-do_test $TESTBIN/atomic_queue_test -h
-do_test $TESTBIN/atomic_queue_test -s 40480
+do_test $TEST_BIN/atomic_queue_test -h
+do_test $TEST_BIN/atomic_queue_test -s 40480
. src/tests/bin/lib.sh
-do_test $TESTBIN/control_test -h
-do_test $TESTBIN/control_test -m 40480
+do_test $TEST_BIN/control_test -h
+do_test $TEST_BIN/control_test -m 40480
. src/tests/bin/lib.sh
-do_test $TESTBIN/dhcpclient -h
+do_test $TEST_BIN/dhcpclient -h
. src/tests/bin/lib.sh
-do_test $TESTBIN/message_set_test -h
-do_test $TESTBIN/message_set_test -s caipirinha -tx
+do_test $TEST_BIN/message_set_test -h
+do_test $TEST_BIN/message_set_test -s caipirinha -tx
. src/tests/bin/lib.sh
-do_test $TESTBIN/radclient -h
+do_test $TEST_BIN/radclient -h
. src/tests/bin/lib.sh
-do_test $TESTBIN/radict -h
-do_test $TESTBIN/radict -D $DICT_DIR User-Name
+do_test $TEST_BIN/radict -h
+do_test $TEST_BIN/radict -D $DICT_DIR User-Name
. src/tests/bin/lib.sh
-do_test $TESTBIN/radmin -h
+do_test $TEST_BIN/radmin -h
. src/tests/bin/lib.sh
-do_test $TESTBIN/radsniff -h
+do_test $TEST_BIN/radsniff -h
# list all interfaces
-do_test $TESTBIN/radsniff -a
+do_test $TEST_BIN/radsniff -a
. src/tests/bin/lib.sh
-do_test $TESTBIN/radsnmp -h
+do_test $TEST_BIN/radsnmp -h
. src/tests/bin/lib.sh
-do_test $TESTBIN/radwho -h
+do_test $TEST_BIN/radwho -h
. src/tests/bin/lib.sh
-do_test $TESTBIN/rbmonkey -h
+do_test $TEST_BIN/rbmonkey -h
. src/tests/bin/lib.sh
-do_test $TESTBIN/ring_buffer_test
-do_test $TESTBIN/ring_buffer_test -s caipirinha -x -l 8096
+do_test $TEST_BIN/ring_buffer_test
+do_test $TEST_BIN/ring_buffer_test -s caipirinha -x -l 8096
. src/tests/bin/lib.sh
-do_test $TESTBIN/rlm_redis_ippool_tool -h
+do_test $TEST_BIN/rlm_redis_ippool_tool -h
. src/tests/bin/lib.sh
# -h help option?
-do_test $TESTBIN/smbencrypt -h
+do_test $TEST_BIN/smbencrypt -h
# encrypt output?
_pass_raw="caipirinha"
_expect_lm_hash="1F2FD8485E0EC984E2000DE7B1D8469C"
-_test_lm_hash="$($TESTBIN/smbencrypt $_pass_raw 2>&1 | tail -1 | cut -f1)"
+_test_lm_hash="$($TEST_BIN/smbencrypt $_pass_raw 2>&1 | tail -1 | cut -f1)"
if [ "$_expect_lm_hash" != "$_test_lm_hash" ]; then
- echo "The $TESTBIN/smbencrypt $_pass_raw returns wrong result"
+ echo "The $TEST_BIN/smbencrypt $_pass_raw returns wrong result"
exit 1
fi
_expect_nt_hash="2012E4A51A4AC527D1C88DBA8D64C878"
-_test_nt_hash="$($TESTBIN/smbencrypt $_pass_raw 2>&1 | tail -1 | cut -f2)"
+_test_nt_hash="$($TEST_BIN/smbencrypt $_pass_raw 2>&1 | tail -1 | cut -f2)"
if [ "$_expect_nt_hash" != "$_test_nt_hash" ]; then
- echo "The $TESTBIN/smbencrypt $_pass_raw returns wrong result"
+ echo "The $TEST_BIN/smbencrypt $_pass_raw returns wrong result"
exit 1
fi
. src/tests/bin/lib.sh
# help?
-do_test $TESTBIN/unit_test_attribute -h
+do_test $TEST_BIN/unit_test_attribute -h
# execution?
_t=./build/tests/bin/unit_test_attribute.tmp
touch $_t
cb_do_test="rm -fv $_t"
-do_test $TESTBIN/unit_test_attribute -D ${DICT_DIR} -Mx $_t
+do_test $TEST_BIN/unit_test_attribute -D ${DICT_DIR} -Mx $_t
. src/tests/bin/lib.sh
-do_test $TESTBIN/unit_test_map -h
+do_test $TEST_BIN/unit_test_map -h
. src/tests/bin/lib.sh
-do_test $TESTBIN/unit_test_module -h
+do_test $TEST_BIN/unit_test_module -h
-do_test $TESTBIN/unit_test_module -d src/tests/bin/ -D $DICT_DIR -xx -i - <<EOF
+do_test $TEST_BIN/unit_test_module -d src/tests/bin/ -D $DICT_DIR -xx -i - <<EOF
User-Name = bob
Packet-Type = Access-Accept
EOF
-do_test $TESTBIN/unit_test_module -d src/tests/bin/ -D $DICT_DIR -xx -i - <<EOF
+do_test $TEST_BIN/unit_test_module -d src/tests/bin/ -D $DICT_DIR -xx -i - <<EOF
Packet-Type = CoA-Request,
User-Name = bob
Packet-Type = CoA-ACK
EOF
-do_test $TESTBIN/unit_test_module -d src/tests/bin/ -D $DICT_DIR -xx -i - -n dhcpv4 -p dhcpv4 <<EOF
+do_test $TEST_BIN/unit_test_module -d src/tests/bin/ -D $DICT_DIR -xx -i - -n dhcpv4 -p dhcpv4 <<EOF
Packet-Type = DHCP-Discover,
DHCP-Hardware-Type = Ethernet
DHCP-Hardware-Address-Length = 6
# If the daemon changes, we kill any running tests, and start over.
# If the tmux session isn't running, that's OK, too.
#
-$(BUILD_DIR)/tests/daemon/radiusd.version: $(TESTBINDIR)/radiusd
+$(BUILD_DIR)/tests/daemon/radiusd.version: $(TEST_BIN_DIR)/radiusd
${Q}tmux -L $(TMUX_KEY) send-key C-c 2>/dev/null || true
${Q}tmux -L $(TMUX_KEY) kill-server 2>/dev/null || true
${Q}rm -f $(BUILD_DIR)/tests/daemon/radiusd.log
#
$(BUILD_DIR)/tests/daemon/radiusd.log: $(BUILD_DIR)/tests/daemon/radiusd.version
${Q}rm -f $@
- ${Q}tmux -L $(TMUX_KEY) new-session -d './$(TESTBIN)/radiusd -i 127.0.0.1 -p $(TMUX_PORT) -fxx -d ./raddb -D share/dictionary -l $@'
+ ${Q}tmux -L $(TMUX_KEY) new-session -d './$(TEST_BIN)/radiusd -i 127.0.0.1 -p $(TMUX_PORT) -fxx -d ./raddb -D share/dictionary -l $@'
radiusd.start: $(BUILD_DIR)/tests/daemon/radiusd.log
# The parser expects to read "foo/dictionary", so we make a
# "foo_dir" directory, and copy "foo" into "foo_dir/dictionary"
#
-$(OUTPUT)/%: $(DIR)/% $(TESTBINDIR)/unit_test_attribute
+$(OUTPUT)/%: $(DIR)/% $(TEST_BIN_DIR)/unit_test_attribute
@echo "DICT-TEST $(notdir $@)"
${Q}mkdir -p $@_dir
${Q}cp $< $@_dir/dictionary
- ${Q}if ! $(TESTBIN)/unit_test_attribute -D $(top_srcdir)/share/dictionary -d "$@_dir" -r "$@" -xxx "$(dir $<)/empty.txt" > "$@.log" 2>&1 || ! test -f "$@"; then \
- echo "$(TESTBIN)/unit_test_attribute -D $(top_srcdir)/share/dictionary -d \"$@_dir\" -r \"$@\" \"$(dir $<)/empty.txt\""; \
+ ${Q}if ! $(TEST_BIN)/unit_test_attribute -D $(top_srcdir)/share/dictionary -d "$@_dir" -r "$@" -xxx "$(dir $<)/empty.txt" > "$@.log" 2>&1 || ! test -f "$@"; then \
+ echo "$(TEST_BIN)/unit_test_attribute -D $(top_srcdir)/share/dictionary -d \"$@_dir\" -r \"$@\" \"$(dir $<)/empty.txt\""; \
cat "$@.log"; \
rm -f $(BUILD_DIR)/tests/test.dict; \
exit 1; \
cp -f $< $@.request; \
echo "Test-Name = \"$(TARGET)\"" >> $@.request; \
echo "Test-Number = \"$${_num}\"" >> $@.request; \
- if ! $(TESTBIN)/radclient -f $@.request -xF -d src/tests/digest/config -D share/dictionary 127.0.0.1:$(PORT) auth $(SECRET) > $@.out; then \
+ if ! $(TEST_BIN)/radclient -f $@.request -xF -d src/tests/digest/config -D share/dictionary 127.0.0.1:$(PORT) auth $(SECRET) > $@.out; then \
echo "FAILED"; \
cat $@.out; \
rm -f $(BUILD_DIR)/tests/test.digest; \
$(MAKE) --no-print-directory test.digest.radiusd_kill; \
echo "RADIUSD: $(RADIUSD_RUN)"; \
- echo "RADCLIENT: $(TESTBIN)/radclient -f $@_request -xF -d src/tests/digest/config -D share/dictionary 127.0.0.1:$(PORT) auth $(SECRET)"; \
+ echo "RADCLIENT: $(TEST_BIN)/radclient -f $@_request -xF -d src/tests/digest/config -D share/dictionary 127.0.0.1:$(PORT) auth $(SECRET)"; \
exit 1; \
fi; \
touch $@; \
CONFIG_PATH := $(TEST_PATH)/config
RADIUS_LOG := $(OUTPUT)/radiusd.log
GDB_LOG := $(OUTPUT)/gdb.log
-BIN_PATH := $(BUILD_DIR)/bin/local
+TEST_BIN := $(BUILD_DIR)/bin/local
#
# We use the stock raddb modules to help detect typos and other issues
# Otherwise, check the log file for a parse error which matches the
# ERROR line in the input.
#
-$(OUTPUT)/%: $(DIR)/% $(TESTBINDIR)/unit_test_module | $(KEYWORD_RADDB) $(KEYWORD_LIBS) build.raddb rlm_cache_rbtree.la rlm_test.la rlm_csv.la
+$(OUTPUT)/%: $(DIR)/% $(TEST_BIN_DIR)/unit_test_module | $(KEYWORD_RADDB) $(KEYWORD_LIBS) build.raddb rlm_cache_rbtree.la rlm_test.la rlm_csv.la
@echo "KEYWORD-TEST $(notdir $@)"
${Q}cp $(if $(wildcard $<.attrs),$<.attrs,$(dir $<)/default-input.attrs) $@.attrs
- ${Q}if ! KEYWORD=$(notdir $@) $(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/keywords/ -i "$@.attrs" -f "$@.attrs" -r "$@" -xx > "$@.log" 2>&1 || ! test -f "$@"; then \
+ ${Q}if ! KEYWORD=$(notdir $@) $(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/keywords/ -i "$@.attrs" -f "$@.attrs" -r "$@" -xx > "$@.log" 2>&1 || ! test -f "$@"; then \
if ! grep ERROR $< 2>&1 > /dev/null; then \
cat $@.log; \
echo "# $@.log"; \
- echo "KEYWORD=$(notdir $@) $(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/keywords/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xx"; \
+ echo "KEYWORD=$(notdir $@) $(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/keywords/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xx"; \
rm -f $(BUILD_DIR)/tests/test.keywords; \
exit 1; \
fi; \
if [ "$$EXPECTED" != "$$FOUND" ]; then \
cat $@.log; \
echo "# $@.log"; \
- echo "KEYWORD=$(notdir $@) $(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/keywords/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xx"; \
+ echo "KEYWORD=$(notdir $@) $(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/keywords/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xx"; \
rm -f $(BUILD_DIR)/tests/test.keywords; \
exit 1; \
else \
$(eval $(call TEST_BOOTSTRAP))
-MAP_UNIT := $(TESTBIN)/unit_test_map
+MAP_UNIT := $(TEST_BIN)/unit_test_map
#
# Re-run the tests if the input file changes
#
-$(OUTPUT)/%: $(DIR)/% $(TESTBINDIR)/unit_test_map
+$(OUTPUT)/%: $(DIR)/% $(TEST_BIN_DIR)/unit_test_map
@echo "MAP-TEST $(notdir $<)"
${Q}if ! $(MAP_UNIT) -d $(top_srcdir)/raddb -D $(top_srcdir)/share/dictionary -r "$@" "$<" > "$@.log" 2>&1 || ! test -f "$@"; then \
if ! grep ERROR $< 2>&1 > /dev/null; then \
# Otherwise, check the log file for a parse error which matches the
# ERROR line in the input.
#
-$(BUILD_DIR)/tests/modules/%: src/tests/modules/%.unlang $(BUILD_DIR)/tests/modules/%.attrs $(TESTBINDIR)/unit_test_module | build.raddb
+$(BUILD_DIR)/tests/modules/%: src/tests/modules/%.unlang $(BUILD_DIR)/tests/modules/%.attrs $(TEST_BIN_DIR)/unit_test_module | build.raddb
@echo "MODULE-TEST $(lastword $(subst /, ,$(dir $@))) $(basename $(notdir $@))"
${Q}mkdir -p $(dir $@)
- ${Q}if ! MODULE_TEST_DIR=$(dir $<) MODULE_TEST_UNLANG=$< $(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/modules/ -i "$@.attrs" -f "$@.attrs" -r "$@" -xxx > "$@.log" 2>&1 || ! test -f "$@"; then \
+ ${Q}if ! MODULE_TEST_DIR=$(dir $<) MODULE_TEST_UNLANG=$< $(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/modules/ -i "$@.attrs" -f "$@.attrs" -r "$@" -xxx > "$@.log" 2>&1 || ! test -f "$@"; then \
if ! grep ERROR $< 2>&1 > /dev/null; then \
cat "$@.log"; \
echo "# $@.log"; \
- echo "MODULE_TEST_DIR=$(dir $<) MODULE_TEST_UNLANG=$< $(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/modules/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xx"; \
+ echo "MODULE_TEST_DIR=$(dir $<) MODULE_TEST_UNLANG=$< $(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/modules/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xx"; \
exit 1; \
fi; \
FOUND=$$(grep ^$< $@.log | head -1 | sed 's/:.*//;s/.*\[//;s/\].*//'); \
if [ "$$EXPECTED" != "$$FOUND" ]; then \
cat "$@.log"; \
echo "# $@.log"; \
- echo "MODULE_TEST_DIR=$(dir $<) MODULE_TEST_UNLANG=$< $(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/modules/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xx"; \
+ echo "MODULE_TEST_DIR=$(dir $<) MODULE_TEST_UNLANG=$< $(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/modules/ -i \"$@.attrs\" -f \"$@.attrs\" -r \"$@\" -xx"; \
exit 1; \
else \
touch "$@"; \
$(eval ARGV := $(shell grep "#.*ARGV:" $< | cut -f2 -d ':'))
$(Q)echo "RADCLIENT-TEST INPUT=$(TARGET) ARGV=\"$(ARGV)\""
$(Q)[ -f $(dir $@)/radiusd.pid ] || exit 1
- $(Q)if ! $(TESTBIN)/radclient $(ARGV) -C $(RADCLIENT_CLIENT_PORT) -f $< -d src/tests/radclient/config -D share/dictionary 127.0.0.1:$(PORT) $(TYPE) $(SECRET) 1> $(FOUND) 2>&1; then \
+ $(Q)if ! $(TEST_BIN)/radclient $(ARGV) -C $(RADCLIENT_CLIENT_PORT) -f $< -d src/tests/radclient/config -D share/dictionary 127.0.0.1:$(PORT) $(TYPE) $(SECRET) 1> $(FOUND) 2>&1; then \
echo "FAILED"; \
cat $(FOUND); \
rm -f $(BUILD_DIR)/tests/test.radclient; \
$(MAKE) --no-print-directory test.radclient.radiusd_kill; \
echo "RADIUSD: $(RADIUSD_RUN)"; \
- echo "RADCLIENT: $(TESTBIN)/radclient $(ARGV) -C $(RADCLIENT_CLIENT_PORT) -f $< -xF -d src/tests/radclient/config -D share/dictionary 127.0.0.1:$(PORT) $(TYPE) $(SECRET)"; \
+ echo "RADCLIENT: $(TEST_BIN)/radclient $(ARGV) -C $(RADCLIENT_CLIENT_PORT) -f $< -xF -d src/tests/radclient/config -D share/dictionary 127.0.0.1:$(PORT) $(TYPE) $(SECRET)"; \
exit 1; \
fi
#
$(Q)if [ -e "$(EXPECTED)" ] && ! cmp -s $(FOUND) $(EXPECTED); then \
echo "RADCLIENT FAILED $@"; \
echo "RADIUSD: $(RADIUSD_RUN)"; \
- echo "RADCLIENT: $(TESTBIN)/radclient $(ARGV) -C $(RADCLIENT_CLIENT_PORT) -f $< -d src/tests/radclient/config -D share/dictionary 127.0.0.1:$(PORT) $(TYPE) $(SECRET)"; \
+ echo "RADCLIENT: $(TEST_BIN)/radclient $(ARGV) -C $(RADCLIENT_CLIENT_PORT) -f $< -d src/tests/radclient/config -D share/dictionary 127.0.0.1:$(PORT) $(TYPE) $(SECRET)"; \
echo "ERROR: File $(FOUND) is not the same as $(EXPECTED)"; \
echo "If you did some update on the radclient code, please be sure to update the unit tests."; \
echo "e.g: $(EXPECTED)"; \
elif [ -e "$(CMD_TEST)" ] && ! $(SHELL) $(CMD_TEST); then \
echo "RADCLIENT FAILED $@"; \
echo "RADIUSD: $(RADIUSD_RUN)"; \
- echo "RADCLIENT: $(TESTBIN)/radclient $(ARGV) -C $(RADCLIENT_CLIENT_PORT) -f $< -d src/tests/radclient/config -D share/dictionary 127.0.0.1:$(PORT) $(TYPE) $(SECRET)"; \
+ echo "RADCLIENT: $(TEST_BIN)/radclient $(ARGV) -C $(RADCLIENT_CLIENT_PORT) -f $< -d src/tests/radclient/config -D share/dictionary 127.0.0.1:$(PORT) $(TYPE) $(SECRET)"; \
echo "ERROR: The script $(CMD_TEST) can't validate the content of $(FOUND)"; \
echo "If you did some update on the radclient code, please be sure to update the unit tests."; \
rm -f $(BUILD_DIR)/tests/test.radclient; \
#
# DIR = src/tests/$target
# BUILD_DIR = build/
-# BIN_PATH = $(BUILD_DIR)/bin/local
#
# - Defined by the target
#
include Make.inc
define RADIUSD_SERVICE
-$$(eval RADIUSD_BIN := $(JLIBTOOL) --silent --mode=execute $$(BIN_PATH)/radiusd)
+$$(eval RADIUSD_BIN := $(JLIBTOOL) --silent --mode=execute $$(TEST_BIN)/radiusd)
#
# Kill it. We don't care if it failed or not. However, we do care
echo "FAILED STARTING RADIUSD"; \
grep 'Error :' "${2}/radiusd.log"; \
echo "Last entries in server log (${2}/radiusd.log):"; \
+ tail -n 100 "${2}/radiusd.log" 2> /dev/null; \
echo "RADIUSD_RUN: $$(RADIUSD_RUN)"; \
fi
# the output files depend on the radiusd binary.
#
ifneq "$(FILES.$(TEST))" ""
-$(foreach x, $(FILES.$(TEST)), $(eval $x: $(TESTBINDIR)/radiusd $(TESTBINDIR)/$(CLIENT) $(top_srcdir)/src/tests/$(subst test.,,$(TEST))/config/${1}.conf))
+$(foreach x, $(FILES.$(TEST)), $(eval $x: $(TEST_BIN_DIR)/radiusd $(TEST_BIN_DIR)/$(CLIENT) $(top_srcdir)/src/tests/$(subst test.,,$(TEST))/config/${1}.conf))
endif
endef
$(eval EXPECTED := $(patsubst %.txt,%.out,$<))
$(eval FOUND := $(patsubst %.txt,%.out,$@))
$(eval TARGET := $(patsubst %.txt,%,$(notdir $@)))
- ${Q}if ! $(TESTBIN)/radmin -q -f $(RADMIN_SOCKET_FILE) < $< > $(FOUND) 2>&1; then\
+ ${Q}if ! $(TEST_BIN)/radmin -q -f $(RADMIN_SOCKET_FILE) < $< > $(FOUND) 2>&1; then\
echo "--------------------------------------------------"; \
tail -n 20 "$(RADMIN_RADIUS_LOG)"; \
echo "Last entries in server log ($(RADMIN_RADIUS_LOG)):"; \
echo "--------------------------------------------------"; \
echo "RADIUSD: $(RADIUSD_RUN)"; \
- echo "RADMIN : $(TESTBIN)/radmin -q -f $(RADMIN_SOCKET_FILE) < $< > $(FOUND)"; \
+ echo "RADMIN : $(TEST_BIN)/radmin -q -f $(RADMIN_SOCKET_FILE) < $< > $(FOUND)"; \
rm -f $(BUILD_DIR)/tests/test.radmin; \
$(MAKE) --no-print-directory test.radmin.radiusd_kill; \
exit 1; \
if ! cmp -s $(FOUND) $(EXPECTED); then \
echo "RADMIN FAILED $@"; \
echo "RADIUSD: $(RADIUSD_RUN)"; \
- echo "RADMIN : $(TESTBIN)/radmin -q -f $(RADMIN_SOCKET_FILE) < $< > $(FOUND)"; \
+ echo "RADMIN : $(TEST_BIN)/radmin -q -f $(RADMIN_SOCKET_FILE) < $< > $(FOUND)"; \
echo "ERROR: File $(FOUND) is not the same as $(EXPECTED)"; \
echo "If you did some update on the radmin code, please be sure to update the unit tests."; \
echo "e.g: $(EXPECTED)"; \
#
# Run the radsniff commands
#
-$(OUTPUT)/%.txt: $(DIR)/%.txt $(TESTBINDIR)/radsniff $(PCAP_IN)
+$(OUTPUT)/%.txt: $(DIR)/%.txt $(TEST_BIN_DIR)/radsniff $(PCAP_IN)
$(eval TARGET := $(notdir $@))
$(eval FOUND := $(patsubst %.txt,%.out,$@))
$(eval CMD_TEST := $(patsubst %.txt,%.cmd,$<))
#
# We need that 'TZ=UTC ...' to libpcap pass the same timestamp in anywhere.
#
- $(Q)if ! TZ='UTC' $(TESTBIN)/radsniff $(ARGV) -I $(PCAP_IN) -D share/dictionary 1> $(FOUND); then \
+ $(Q)if ! TZ='UTC' $(TEST_BIN)/radsniff $(ARGV) -I $(PCAP_IN) -D share/dictionary 1> $(FOUND); then \
echo "FAILED"; \
cat $(FOUND); \
- echo "RADSNIFF: TZ='UTC' $(TESTBIN)/radsniff $(ARGV) -I $(PCAP_IN) -D share/dictionary" -xx; \
+ echo "RADSNIFF: TZ='UTC' $(TEST_BIN)/radsniff $(ARGV) -I $(PCAP_IN) -D share/dictionary" -xx; \
rm -f $@; \
exit 1; \
fi
grep -v "^#" $(EXPECTED) > $(FOUND).result || true; \
if ! cmp $(FOUND) $(FOUND).result; then \
echo "RADSNIFF FAILED $@"; \
- echo "RADSNIFF: $(TESTBIN)/radsniff $(ARGV) -I $(PCAP_IN) -D share/dictionary -xx"; \
+ echo "RADSNIFF: $(TEST_BIN)/radsniff $(ARGV) -I $(PCAP_IN) -D share/dictionary -xx"; \
echo "ERROR: File $(FOUND).result is not the same as $(EXPECTED)"; \
echo "If you did some update on the radsniff code, please be sure to update the unit tests."; \
echo "e.g: $(EXPECTED)"; \
$(BUILD_DIR)/tests/trie:
${Q}mkdir -p $@
-$(BUILD_DIR)/tests/trie/trie-%: $(DIR)/% $(TESTBINDIR)/trie | $(BUILD_DIR)/tests/trie
+$(BUILD_DIR)/tests/trie/trie-%: $(DIR)/% $(TEST_BIN_DIR)/trie | $(BUILD_DIR)/tests/trie
@echo TRIE-TEST $(notdir $@)
- @$(TESTBIN)/trie $^ > $@
+ @$(TEST_BIN)/trie $^ > $@
-$(BUILD_DIR)/tests/trie/nopc-%: $(DIR)/% $(TESTBINDIR)/nopc | $(BUILD_DIR)/tests/trie
+$(BUILD_DIR)/tests/trie/nopc-%: $(DIR)/% $(TEST_BIN_DIR)/nopc | $(BUILD_DIR)/tests/trie
@echo TRIE-NO-PC-TEST $(notdir $@)
- @$(TESTBIN)/nopc $^ > $@
+ @$(TEST_BIN)/nopc $^ > $@
#
# Get all of the unit test output files
#
# And the actual script to run each test.
#
-$(OUTPUT)/%: $(DIR)/% $(TESTBINDIR)/unit_test_attribute
+$(OUTPUT)/%: $(DIR)/% $(TEST_BIN_DIR)/unit_test_attribute
$(eval DIR:=${top_srcdir}/src/tests/unit)
@echo "UNIT-TEST $(lastword $(subst /, ,$(dir $@))) $(basename $(notdir $@))"
- ${Q}if ! $(TESTBIN)/unit_test_attribute -D $(top_srcdir)/share/dictionary -d $(DIR) -r "$@" $<; then \
- echo "$(TESTBIN)/unit_test_attribute -D $(top_srcdir)/share/dictionary -d $(DIR) -r \"$@\" $<"; \
+ ${Q}if ! $(TEST_BIN)/unit_test_attribute -D $(top_srcdir)/share/dictionary -d $(DIR) -r "$@" $<; then \
+ echo "$(TEST_BIN)/unit_test_attribute -D $(top_srcdir)/share/dictionary -d $(DIR) -r \"$@\" $<"; \
rm -f $(BUILD_DIR)/tests/test.unit; \
exit 1; \
fi
#
# And the actual script to run each test.
#
-$(OUTPUT)/%: $(DIR)/% $(TESTBINDIR)/unit_test_module | build.raddb
+$(OUTPUT)/%: $(DIR)/% $(TEST_BIN_DIR)/unit_test_module | build.raddb
@echo "XLAT-TEST $(notdir $@)"
- ${Q}if ! $(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/xlat/ -r "$@" -i "$<" -xx -O xlat_only > "$@.log" 2>&1 || ! test -f "$@"; then \
+ ${Q}if ! $(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/xlat/ -r "$@" -i "$<" -xx -O xlat_only > "$@.log" 2>&1 || ! test -f "$@"; then \
cat $@.log; \
- echo "./$(TESTBIN)/unit_test_module -D share/dictionary -d src/tests/xlat/ -r \"$@\" -i \"$<\" -xx -O xlat_only"; \
+ echo "./$(TEST_BIN)/unit_test_module -D share/dictionary -d src/tests/xlat/ -r \"$@\" -i \"$<\" -xx -O xlat_only"; \
rm -f $(BUILD_DIR)/tests/test.xlat; \
exit 1; \
fi