~ruther/qmk_firmware

7eefb34e7c4f162b9568ff880d0e4e5214e1b9c9 — Fred Sundvik 9 years ago ffb0a12
Detect failures when running multiple tests

Also add better output.
2 files changed, 12 insertions(+), 2 deletions(-)

M Makefile
M message.mk
M Makefile => Makefile +11 -2
@@ 415,7 415,15 @@ define BUILD_TEST
    MAKE_MSG := $$(MSG_MAKE_TEST)
    $$(eval $$(call BUILD))
    TEST_EXECUTABLE := $$(TEST_DIR)/$$(TEST_NAME).elf
    TESTS += $$(TEST_EXECUTABLE)
    TESTS += $$(TEST_NAME)
    TEST_MSG := $$(MSG_TEST)
    $$(TEST_NAME)_COMMAND := \
        printf "$$(TEST_MSG)\n"; \
        $$(TEST_EXECUTABLE); \
        if [ $$$$? -gt 0 ]; \
            then error_occured=1; \
        fi; \
        printf "\n";
endef

define PARSE_TEST


@@ 472,7 480,8 @@ $(SUBPROJECTS): %: %-allkm
	+error_occured=0; \
	$(foreach COMMAND,$(COMMANDS),$(RUN_COMMAND)) \
	if [ $$error_occured -gt 0 ]; then printf "$(MSG_ERRORS)" & exit $$error_occured; fi;\
	$(foreach TEST,$(TESTS),$(TEST);)
	$(foreach TEST,$(TESTS),$($(TEST)_COMMAND)) \
	if [ $$error_occured -gt 0 ]; then printf "$(MSG_ERRORS)" & exit $$error_occured; fi;\

# All should compile everything
.PHONY: all

M message.mk => message.mk +1 -0
@@ 76,3 76,4 @@ define GENERATE_MSG_MAKE_TEST
    endif
endef
MSG_MAKE_TEST = $(eval $(call GENERATE_MSG_MAKE_TEST))$(MSG_MAKE_TEST_ACTUAL)
MSG_TEST = Testing $(BOLD)$(TEST_NAME)$(NO_COLOR)