From a233fd4f1e13d078c318d0d563cfa721e430a4db Mon Sep 17 00:00:00 2001 From: Patrick Baudin <patrick.baudin@cea.fr> Date: Tue, 27 Oct 2020 16:01:43 +0100 Subject: [PATCH] [PTESTS] allows to redefine the topvel command --- ptests/Makefile | 9 +++++++-- ptests/ptests.ml | 11 ++++++++--- ptests/tests/cmd/README | 3 +++ ptests/tests/{ => cmd/tests}/ptests_config | 0 ptests/tests/{ => cmd/tests}/test_config | 0 .../tests/{ => cmd/tests}/without-test_config/README | 0 .../{ => cmd/tests}/without-test_config/config.i | 0 .../tests/{ => cmd/tests}/without-test_config/empty.i | 0 .../without-test_config/oracle/config.0.res.oracle | 0 .../without-test_config/oracle/config.1.res.oracle | 0 .../without-test_config/oracle/config.2.res.oracle | 0 .../without-test_config/oracle/config.3.res.oracle | 0 .../without-test_config/oracle/config.4.res.oracle | 0 .../without-test_config/oracle/empty.res.oracle | 0 ptests/tests/nothing/README | 3 +++ .../tests/nothing/tests/basic/oracle/empty.res.oracle | 1 + ptests/tests/nothing/tests/ptests_config | 1 + 17 files changed, 23 insertions(+), 5 deletions(-) create mode 100644 ptests/tests/cmd/README rename ptests/tests/{ => cmd/tests}/ptests_config (100%) rename ptests/tests/{ => cmd/tests}/test_config (100%) rename ptests/tests/{ => cmd/tests}/without-test_config/README (100%) rename ptests/tests/{ => cmd/tests}/without-test_config/config.i (100%) rename ptests/tests/{ => cmd/tests}/without-test_config/empty.i (100%) rename ptests/tests/{ => cmd/tests}/without-test_config/oracle/config.0.res.oracle (100%) rename ptests/tests/{ => cmd/tests}/without-test_config/oracle/config.1.res.oracle (100%) rename ptests/tests/{ => cmd/tests}/without-test_config/oracle/config.2.res.oracle (100%) rename ptests/tests/{ => cmd/tests}/without-test_config/oracle/config.3.res.oracle (100%) rename ptests/tests/{ => cmd/tests}/without-test_config/oracle/config.4.res.oracle (100%) rename ptests/tests/{ => cmd/tests}/without-test_config/oracle/empty.res.oracle (100%) create mode 100644 ptests/tests/nothing/README create mode 100644 ptests/tests/nothing/tests/basic/oracle/empty.res.oracle create mode 100644 ptests/tests/nothing/tests/ptests_config diff --git a/ptests/Makefile b/ptests/Makefile index 8dccd5f2574..2a5a585305a 100644 --- a/ptests/Makefile +++ b/ptests/Makefile @@ -6,8 +6,13 @@ purge-tests: clean-tests: purge-tests rm -rf _build/default/ptests/tests +TESTS= nothing cmd +# opts + run-tests: purge-tests - dune exec -- ../ptests/ptests.exe ./tests - dune build @tests/ptests + for dir in $(TESTS) ; do \ + dune exec -- ../ptests/ptests.exe ./tests/$$dir/tests ; \ + done + dune build $(addprefix @tests/,$(addsuffix /tests/ptests,$(TESTS))) tests: run-tests diff --git a/ptests/ptests.ml b/ptests/ptests.ml index 1bd64804faa..d73047c9f65 100644 --- a/ptests/ptests.ml +++ b/ptests/ptests.ml @@ -130,9 +130,10 @@ let () = locale *) let macro_default_options = "-journal-disable -check -no-autoload-plugins" -let macro_frama_c_only = "frama-c @DEFAULT_OPTIONS@" -let macro_frama_c_cmd = "frama-c @DEFAULT_OPTIONS@ @PLUGIN_OPTIONS@" -let macro_frama_c = "frama-c @DEFAULT_OPTIONS@ @PLUGIN_OPTIONS@ @PTEST_FILE@" +let macro_frama_c_exe = "frama-c" +let macro_frama_c_only = "@frama-c-exe@ @DEFAULT_OPTIONS@" +let macro_frama_c_cmd = "@frama-c-exe@ @DEFAULT_OPTIONS@ @PLUGIN_OPTIONS@" +let macro_frama_c = "@frama-c-exe@ @DEFAULT_OPTIONS@ @PLUGIN_OPTIONS@ @PTEST_FILE@" let example_msg = Format.sprintf @@ -160,6 +161,8 @@ let example_msg = # the current list of options related to PLUGIN, MODULE and LIBS to load@ \ @@OPTIONS@@ \ # the current list of options related to OPT and STDOPT directives (for CMD directives)@ \ + @@frama-c-exe@@ \ + # shortcut defined as follow: %s@ \ @@frama-c-only@@ \ # shortcut defined as follow: %s@ \ @@frama-c@@ \ @@ -168,6 +171,7 @@ let example_msg = # shortcut defined as follow: %s@ \ @]@ @]" macro_default_options + macro_frama_c_exe macro_frama_c_only macro_frama_c macro_frama_c_cmd @@ -419,6 +423,7 @@ module Macros = struct let default_macros = add_list [ "PLUGIN", "" ; "DEFAULT_OPTIONS", macro_default_options; + "frama-c-exe", macro_frama_c_exe; "frama-c-only", macro_frama_c_only; "frama-c-cmd", macro_frama_c_cmd; "frama-c", macro_frama_c; diff --git a/ptests/tests/cmd/README b/ptests/tests/cmd/README new file mode 100644 index 00000000000..75d737ebce8 --- /dev/null +++ b/ptests/tests/cmd/README @@ -0,0 +1,3 @@ +Test suite where ./test_config contents: +- 1 CMD +- no OPT diff --git a/ptests/tests/ptests_config b/ptests/tests/cmd/tests/ptests_config similarity index 100% rename from ptests/tests/ptests_config rename to ptests/tests/cmd/tests/ptests_config diff --git a/ptests/tests/test_config b/ptests/tests/cmd/tests/test_config similarity index 100% rename from ptests/tests/test_config rename to ptests/tests/cmd/tests/test_config diff --git a/ptests/tests/without-test_config/README b/ptests/tests/cmd/tests/without-test_config/README similarity index 100% rename from ptests/tests/without-test_config/README rename to ptests/tests/cmd/tests/without-test_config/README diff --git a/ptests/tests/without-test_config/config.i b/ptests/tests/cmd/tests/without-test_config/config.i similarity index 100% rename from ptests/tests/without-test_config/config.i rename to ptests/tests/cmd/tests/without-test_config/config.i diff --git a/ptests/tests/without-test_config/empty.i b/ptests/tests/cmd/tests/without-test_config/empty.i similarity index 100% rename from ptests/tests/without-test_config/empty.i rename to ptests/tests/cmd/tests/without-test_config/empty.i diff --git a/ptests/tests/without-test_config/oracle/config.0.res.oracle b/ptests/tests/cmd/tests/without-test_config/oracle/config.0.res.oracle similarity index 100% rename from ptests/tests/without-test_config/oracle/config.0.res.oracle rename to ptests/tests/cmd/tests/without-test_config/oracle/config.0.res.oracle diff --git a/ptests/tests/without-test_config/oracle/config.1.res.oracle b/ptests/tests/cmd/tests/without-test_config/oracle/config.1.res.oracle similarity index 100% rename from ptests/tests/without-test_config/oracle/config.1.res.oracle rename to ptests/tests/cmd/tests/without-test_config/oracle/config.1.res.oracle diff --git a/ptests/tests/without-test_config/oracle/config.2.res.oracle b/ptests/tests/cmd/tests/without-test_config/oracle/config.2.res.oracle similarity index 100% rename from ptests/tests/without-test_config/oracle/config.2.res.oracle rename to ptests/tests/cmd/tests/without-test_config/oracle/config.2.res.oracle diff --git a/ptests/tests/without-test_config/oracle/config.3.res.oracle b/ptests/tests/cmd/tests/without-test_config/oracle/config.3.res.oracle similarity index 100% rename from ptests/tests/without-test_config/oracle/config.3.res.oracle rename to ptests/tests/cmd/tests/without-test_config/oracle/config.3.res.oracle diff --git a/ptests/tests/without-test_config/oracle/config.4.res.oracle b/ptests/tests/cmd/tests/without-test_config/oracle/config.4.res.oracle similarity index 100% rename from ptests/tests/without-test_config/oracle/config.4.res.oracle rename to ptests/tests/cmd/tests/without-test_config/oracle/config.4.res.oracle diff --git a/ptests/tests/without-test_config/oracle/empty.res.oracle b/ptests/tests/cmd/tests/without-test_config/oracle/empty.res.oracle similarity index 100% rename from ptests/tests/without-test_config/oracle/empty.res.oracle rename to ptests/tests/cmd/tests/without-test_config/oracle/empty.res.oracle diff --git a/ptests/tests/nothing/README b/ptests/tests/nothing/README new file mode 100644 index 00000000000..352ae03088e --- /dev/null +++ b/ptests/tests/nothing/README @@ -0,0 +1,3 @@ +Test suite where ./test_config contents: +- no CMD +- no OPT diff --git a/ptests/tests/nothing/tests/basic/oracle/empty.res.oracle b/ptests/tests/nothing/tests/basic/oracle/empty.res.oracle new file mode 100644 index 00000000000..628d824bcc7 --- /dev/null +++ b/ptests/tests/nothing/tests/basic/oracle/empty.res.oracle @@ -0,0 +1 @@ +frama-c default-options:=-journal-disable -check -no-autoload-plugins:= empty.i diff --git a/ptests/tests/nothing/tests/ptests_config b/ptests/tests/nothing/tests/ptests_config new file mode 100644 index 00000000000..d8df396ade8 --- /dev/null +++ b/ptests/tests/nothing/tests/ptests_config @@ -0,0 +1 @@ +DEFAULT_SUITES= basic -- GitLab