# HG changeset patch # User Edouard Tisserant # Date 1644937819 -3600 # Node ID 803ce245f72ff01d37796bcd0e5a303091e7b1c1 # Parent c2c366964913bbdc4720e45b7fcb063cce1118b3 Tests: Add a Makefile variable to allow changing standalone headless X server command (Xvfb by default) diff -r c2c366964913 -r 803ce245f72f tests/Makefile --- a/tests/Makefile Sun Feb 13 21:05:19 2022 +0100 +++ b/tests/Makefile Tue Feb 15 16:10:19 2022 +0100 @@ -41,6 +41,9 @@ # $(test_dir) defaults to $(HOME)/test and can be overloaded: # $ make test_dir=${HOME}/other_test_dir # +# Makefile attemps to use xvfb-run to run each test individually with its own +# X server instance. This behavior can be overloaded +# $ DISPLAY=:42 make xserver_command='echo "Using $DISPLAY X Server !";' # # Matiec and Beremiz code are expected to be clean as if after hg clean --all. # Any change in Matiec directory triggers rebuild of matiec. @@ -105,19 +108,20 @@ Xnest :42 -geometry 1920x1080+0+0 & export xnestpid=$$!; sleep 1; DISPLAY=:42 $(1); export res=$$?; kill $${xnestpid} 2>/dev/null; exit $${res} endef -# Manually invoked rule {testname}.sikuli +xserver_command ?= xvfb-run -s '-screen 0 1920x1080x24' + define make_idetest_rule $(test_dir)/$(1)_idetest/.passed: own_apps rm -rf $(test_dir)/$(1)_idetest mkdir $(test_dir)/$(1)_idetest - cd $(test_dir)/$(1)_idetest; xvfb-run -s '-screen 0 1920x1080x24' bash -c '$$(call idetest_command, $(1))' + cd $(test_dir)/$(1)_idetest; $(xserver_command) bash -c '$(call idetest_command, $(1))' touch $$@ +# Manually invoked rule {testname}.sikuli $(1): $(test_dir)/$(1)_idetest/.passed # Manually invoked rule xnest_{testname}.sikuli # runs test in xnest so that one can see what happens -# depends on docker arguments "-v /tmp/.X11-unix/X0:/tmp/.X11-unix/X0 -e DISPLAY=$DISPLAY" xnest_$(1): own_apps rm -rf $(test_dir)/$(1)_idetest mkdir $(test_dir)/$(1)_idetest