@@ -2,6 +2,7 @@ SCRIPTS_DIR := buildroot/share/scripts
2
2
CONTAINER_RT_BIN := docker
3
3
CONTAINER_RT_OPTS := --rm -v $(PWD ) :/code -v platformio-cache:/root/.platformio
4
4
CONTAINER_IMAGE := marlin-dev
5
+ UNIT_TEST_CONFIG ?= default
5
6
6
7
help :
7
8
@echo " Tasks for local development:"
@@ -12,12 +13,11 @@ help:
12
13
@echo " make tests-single-local-docker : Run a single test locally, using docker"
13
14
@echo " make tests-all-local : Run all tests locally"
14
15
@echo " make tests-all-local-docker : Run all tests locally, using docker"
15
- # @echo "make unit-test-single-ci : Run a single code test from inside the CI"
16
- # @echo "make unit-test-single-local : Run a single code test locally"
17
- # @echo "make unit-test-single-local-docker : Run a single code test locally, using docker-compose"
16
+ @echo " make unit-test-single-local : Run unit tests for a single config locally"
17
+ @echo " make unit-test-single-local-docker : Run unit tests for a single config locally, using docker"
18
18
@echo " make unit-test-all-local : Run all code tests locally"
19
- @echo "make unit-test-all-local-docker : Run all code tests locally, using docker-compose "
20
- @echo "make setup-local-docker : Setup local docker-compose "
19
+ @echo " make unit-test-all-local-docker : Run all code tests locally, using docker"
20
+ @echo " make setup-local-docker : Setup local docker using buildx "
21
21
@echo " "
22
22
@echo " Options for testing:"
23
23
@echo " TEST_TARGET Set when running tests-single-*, to select the"
27
27
@echo " run on GitHub CI"
28
28
@echo " ONLY_TEST Limit tests to only those that contain this, or"
29
29
@echo " the index of the test (1-based)"
30
+ @echo " UNIT_TEST_CONFIG Set the name of the config from the test folder, without"
31
+ @echo " the leading number. Default is 'default'" . Used with the
32
+ @echo " unit-test-single-* tasks"
30
33
@echo " VERBOSE_PLATFORMIO If you want the full PIO output, set any value"
31
34
@echo " GIT_RESET_HARD Used by CI: reset all local changes. WARNING:"
32
35
@echo " THIS WILL UNDO ANY CHANGES YOU'VE MADE!"
@@ -59,19 +62,12 @@ tests-all-local-docker:
59
62
@if ! $(CONTAINER_RT_BIN ) images -q $(CONTAINER_IMAGE ) > /dev/null ; then $(MAKE ) setup-local-docker ; fi
60
63
$(CONTAINER_RT_BIN ) run $(CONTAINER_RT_OPTS ) $(CONTAINER_IMAGE ) make tests-all-local VERBOSE_PLATFORMIO=$(VERBOSE_PLATFORMIO ) GIT_RESET_HARD=$(GIT_RESET_HARD )
61
64
62
- # unit-test-single-ci:
63
- # export GIT_RESET_HARD=true
64
- # $(MAKE) unit-test-single-local TEST_TARGET=$(TEST_TARGET)
65
+ unit-test-single-local :
66
+ platformio run -t marlin_$(UNIT_TEST_CONFIG ) -e linux_native_test
65
67
66
- # TODO: How can we limit tests with ONLY_TEST with platformio?
67
- # unit-test-single-local:
68
- # @if ! test -n "$(TEST_TARGET)" ; then echo "***ERROR*** Set TEST_TARGET=<your-module> or use make unit-test-all-local" ; return 1; fi
69
- # platformio run -t marlin_$(TEST_TARGET)
70
-
71
- # unit-test-single-local-docker:
72
- # @if ! test -n "$(TEST_TARGET)" ; then echo "***ERROR*** Set TEST_TARGET=<your-module> or use make unit-test-all-local-docker" ; return 1; fi
73
- # @if ! $(CONTAINER_RT_BIN) images -q $(CONTAINER_IMAGE) > /dev/null ; then $(MAKE) setup-local-docker ; fi
74
- # $(CONTAINER_RT_BIN) run $(CONTAINER_RT_OPTS) $(CONTAINER_IMAGE) make unit-test-single-local TEST_TARGET=$(TEST_TARGET) ONLY_TEST="$(ONLY_TEST)"
68
+ unit-test-single-local-docker :
69
+ @if ! $(CONTAINER_RT_BIN ) images -q $(CONTAINER_IMAGE ) > /dev/null ; then $(MAKE ) setup-local-docker ; fi
70
+ $(CONTAINER_RT_BIN ) run $(CONTAINER_RT_OPTS ) $(CONTAINER_IMAGE ) make unit-test-single-local UNIT_TEST_CONFIG=$(UNIT_TEST_CONFIG )
75
71
76
72
unit-test-all-local :
77
73
platformio run -t test-marlin -e linux_native_test
0 commit comments