You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

90 lines
3.4 KiB

APPLICATION = unittests
include ../Makefile.tests_common
BOARD_INSUFFICIENT_MEMORY := airfy-beacon arduino-duemilanove arduino-mega2560 \
arduino-uno arduino-zero calliope-mini cc2650stk \
chronos ek-lm4f120xl limifrog-v1 maple-mini microbit \
msb-430 msb-430h nrf51dongle nrf6310 nucleo32-f031 \
nucleo32-f042 nucleo32-f303 nucleo32-l031 nucleo-f030 \
nucleo-f070 nucleo-f072 nucleo-f091 nucleo-f103 nucleo-f334 \
nucleo-f410 nucleo-l053 nucleo-l073 opencm904 \
pba-d-01-kw2x pca10000 pca10005 remote-pa remote-reva \
remote-revb saml21-xpro samr21-xpro seeeduino_arch-pro \
slwstk6220a sodaq-autonomo spark-core stm32f0discovery \
stm32f3discovery telosb waspmote-pro weio wsn430-v1_3b \
wsn430-v1_4 yunjia-nrf51822 z1
USEMODULE += embunit
ifeq (, $(filter tests-%, $(MAKECMDGOALS)))
UNIT_TESTS := $(foreach d,$(wildcard tests-*/Makefile),$(shell dirname $(d)))
else
UNIT_TESTS := $(filter tests-%, $(MAKECMDGOALS))
endif
ARM7_BOARDS := msba2 avrextrem
DISABLE_TEST_FOR_ARM7 := tests-relic
ARM_CORTEX_M_BOARDS := airfy-beacon arduino-due arduino-zero cc2538dk ek-lm4f120xl \
f4vi1 fox frdm-k64f iotlab-m3 limifrog-v1 mbed_lpc1768 msbiot \
mulle nrf51dongle nrf6310 nucleo32-f031 nucleo32-f303 nucleo32-l031 \
nucleo-f030 nucleo-f070 nucleo-f091 nucleo-f303 nucleo-f334 \
nucleo-f401 nucleo-f410 nucleo-f411 nucleo-l053 nucleo-l073 \
nucleo-l1 opencm904 openmote-cc2538 pba-d-01-kw2x pca10000 \
pca10005 remote saml21-xpro samr21-xpro slwstk6220a sodaq-autonomo \
spark-core stm32f0discovery stm32f3discovery stm32f4discovery \
udoo weio yunjia-nrf51822
DISABLE_TEST_FOR_ARM_CORTEX_M := tests-relic
AVR_BOARDS := arduino-mega2560 waspmote-pro arduino-uno arduino-duemilanove
DISABLE_TEST_FOR_AVR := tests-relic
MSP430_BOARDS := chronos msb-430 msb-430h telosb wsn430-v1_3b wsn430-v1_4 z1
DISABLE_TEST_FOR_MSP430 := tests-relic
ifneq (, $(filter $(ARM7_BOARDS), $(BOARD)))
UNIT_TESTS := $(filter-out $(DISABLE_TEST_FOR_ARM7), $(UNIT_TESTS))
endif
ifneq (, $(filter $(ARM_CORTEX_M_BOARDS), $(BOARD)))
UNIT_TESTS := $(filter-out $(DISABLE_TEST_FOR_ARM_CORTEX_M), $(UNIT_TESTS))
endif
ifneq (, $(filter $(AVR_BOARDS), $(BOARD)))
UNIT_TESTS := $(filter-out $(DISABLE_TEST_FOR_AVR), $(UNIT_TESTS))
endif
ifneq (, $(filter $(MSP430_BOARDS), $(BOARD)))
UNIT_TESTS := $(filter-out $(DISABLE_TEST_FOR_AVR), $(UNIT_TESTS))
endif
DISABLE_MODULE += auto_init
# Pull in `Makefile.include`s from the test suites:
-include $(UNIT_TESTS:%=$(RIOTBASE)/tests/unittests/%/Makefile.include)
DIRS += $(UNIT_TESTS)
BASELIBS += $(UNIT_TESTS:%=$(BINDIR)/%.a)
INCLUDES += -I$(RIOTBASE)/tests/unittests/common
include $(RIOTBASE)/Makefile.include
.PHONY: $(UNIT_TESTS)
all:
$(UNIT_TESTS): all
charCOMMA := ,
ifeq (, $(UNIT_TESTS))
CFLAGS += -DNO_TEST_SUITES
$(warning There was no test suite specified!)
else
CFLAGS += -DTEST_SUITES='$(subst $() $(),$(charCOMMA),$(UNIT_TESTS:tests-%=%))'
endif
test:
./tests/01-run.py