.PHONY: clean.$(TEST)
clean.$(TEST):
$${Q}rm -rf $$(OUTPUT.$(TEST))
+ $${Q}rm -f $$(BUILD_DIR)/tests/$(TEST)
clean.test: clean.$(TEST)
endef
#
# Run the digest commands against the radiusd.
#
-$(OUTPUT)/%: $(DIR)/% | test.digest.radiusd_kill test.digest.radiusd_start
+$(OUTPUT)/%: $(DIR)/% | $(TEST).radiusd_kill $(TEST).radiusd_start
${Q} [ -f $(dir $@)/radiusd.pid ] || exit 1
$(eval TARGET := $(patsubst %.txt,%,$(notdir $@)))
${Q}for _num in $$(sed '/^#.*TESTS/!d; s/.*TESTS//g' $<); do \
if ! $(TESTBIN)/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; \
- $(MAKE) --no-print-directory test.digest.radiusd_kill; \
+ 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)"; \
exit 1; \
done
$(TEST):
- ${Q}$(MAKE) --no-print-directory test.digest.radiusd_kill
+ ${Q}$(MAKE) --no-print-directory $@.radiusd_kill
+ @touch $(BUILD_DIR)/tests/$@
$(MAKE) test.eap.radiusd_kill; \
echo "RADIUSD : OUTPUT=$(dir $@) TESTDIR=$(dir $<) METHOD=$(notdir $(patsubst %.conf,%,$<)) TEST_PORT=$(PORT) $(RADIUSD_BIN) -Pxxx -n servers -d $(dir $<)config -D share/dictionary/ -lstdout -f";\
echo "EAPOL : $(EAPOL_TEST) -c \"$<\" -p $(PORT) -s $(SECRET) $(KEY) "; \
- $(MAKE) --no-print-directory test.eap.radiusd_kill \
+ rm -f $(BUILD_DIR)/tests/test.eap; \
+ $(MAKE) --no-print-directory test.eap.radiusd_kill; \
exit 1;\
fi
${Q}$(MAKE) --no-print-directory test.eap.radiusd_kill || true
${Q}touch $@
$(TEST): $(EAPOL_OK_FILES)
+ @touch $(BUILD_DIR)/tests/$@
else
#
touch "$@"; \
fi \
fi
+
+$(TEST):
+ @touch $(BUILD_DIR)/tests/$@
$(TEST.MODULES_FILES): $(TEST.AUTH_FILES)
-.PHONY: clean.test.modules
-clean.test.modules:
- ${Q}rm -rf $(BUILD_DIR)/tests/modules/
-
-clean.test: clean.test.modules
-
#
# For each file, look for precursor test.
# Ensure that each test depends on its precursors.
fi \
done
+.PHONY: clean.test.modules
+clean.test.modules:
+ ${Q}rm -rf $(BUILD_DIR)/tests/modules/
+ ${Q}rm -rf $(BUILD_DIR)/tests/test.modules
+
+clean.test: clean.test.modules
+
+test.modules:
+ ${Q}touch $(BUILD_DIR)/tests/$@
#
# Run the radclient commands against the radiusd.
#
-$(OUTPUT)/%: $(DIR)/% | test.radclient.radiusd_kill test.radclient.radiusd_start
+$(OUTPUT)/%: $(DIR)/% | $(TEST).radiusd_kill $(TEST).radiusd_start
$(eval TARGET := $(notdir $<))
$(eval TYPE := $(shell echo $(TARGET) | cut -f1 -d '_'))
$(eval CMD_TEST := $(patsubst %.txt,%.cmd,$<))
$(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 \
echo "FAILED"; \
cat $(FOUND); \
- $(MAKE) test.radclient.radiusd_kill; \
+ $(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)"; \
exit 1; \
echo "If you did some update on the radclient code, please be sure to update the unit tests."; \
echo "e.g: $(EXPECTED)"; \
diff $(EXPECTED) $(FOUND); \
+ rm -f $(BUILD_DIR)/tests/test.radclient; \
$(MAKE) --no-print-directory test.radclient.radiusd_kill; \
exit 1; \
elif [ -e "$(CMD_TEST)" ] && ! $(SHELL) $(CMD_TEST); then \
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 "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; \
$(MAKE) --no-print-directory test.radclient.radiusd_kill; \
exit 1; \
fi
$(Q)touch $@
$(TEST):
- $(Q)$(MAKE) --no-print-directory test.radclient.radiusd_kill
+ $(Q)$(MAKE) --no-print-directory $@.radiusd_kill
+ @touch $(BUILD_DIR)/tests/$@
#
# Run the radmin commands against the radiusd.
#
-$(OUTPUT)/%: $(DIR)/% | test.radmin.radiusd_kill test.radmin.radiusd_start
+$(OUTPUT)/%: $(DIR)/% | $(TEST).radiusd_kill $(TEST).radiusd_start
@echo "RADMIN-TEST $(notdir $@)"
${Q} [ -f $(dir $@)/radiusd.pid ] || exit 1
$(eval EXPECTED := $(patsubst %.txt,%.out,$<))
echo "--------------------------------------------------"; \
echo "RADIUSD: $(RADIUSD_RUN)"; \
echo "RADMIN : $(TESTBIN)/radmin -q -f $(RADMIN_SOCKET_FILE) < $< > $(FOUND)"; \
+ rm -f $(BUILD_DIR)/tests/test.radmin; \
$(MAKE) --no-print-directory test.radmin.radiusd_kill; \
exit 1; \
fi; \
echo "If you did some update on the radmin code, please be sure to update the unit tests."; \
echo "e.g: $(EXPECTED)"; \
diff $(EXPECTED) $(FOUND); \
+ rm -f $(BUILD_DIR)/tests/test.radmin; \
$(MAKE) --no-print-directory test.radmin.radiusd_kill; \
exit 1; \
else \
fi
$(TEST):
- ${Q}$(MAKE) --no-print-directory test.radmin.radiusd_kill
+ ${Q}$(MAKE) --no-print-directory $@.radiusd_kill
+ @touch $(BUILD_DIR)/tests/$@
rm -f $(BUILD_DIR)/tests/test.unit; \
exit 1; \
fi
+
+$(TEST):
+ @touch $(BUILD_DIR)/tests/$@