From ebb765bfac3dd4bc3bc9ca806bf9cdff1ebd4e18 Mon Sep 17 00:00:00 2001 From: Xavier Delaruelle Date: Tue, 22 Aug 2023 11:35:58 +0200 Subject: [PATCH] ts: test exit error against error_on_multi_load in 50/59* --- testsuite/modulefiles.4/err/1.0 | 15 +++++ testsuite/modulefiles.4/lerr/1.0 | 6 +- .../590-error_on_multi_load-load.exp | 65 +++++++++++++++++-- .../591-error_on_multi_load-load-any.exp | 53 +++++++++++++-- .../592-error_on_multi_load-try-load.exp | 65 +++++++++++++++++-- 5 files changed, 184 insertions(+), 20 deletions(-) diff --git a/testsuite/modulefiles.4/err/1.0 b/testsuite/modulefiles.4/err/1.0 index 0eb53665..ca82cf9f 100644 --- a/testsuite/modulefiles.4/err/1.0 +++ b/testsuite/modulefiles.4/err/1.0 @@ -7,6 +7,9 @@ if {[info exists env(TESTSUITE_ERROR_ON_MULTI_LOAD)]} { break - load_first_break - load-any_first_break - try-load_first_break { break } + exit - load_first_exit - load-any_first_exit - try-load_first_exit { + exit + } continue { continue } @@ -55,6 +58,18 @@ if {[info exists env(TESTSUITE_ERROR_ON_MULTI_LOAD)]} { break } } + depre_load_exit { + prereq --optional foo + if {[module-info mode load]} { + exit + } + } + depre_unload_exit { + prereq --optional foo + if {[module-info mode unload]} { + exit + } + } depre_load_reqmis { prereq --optional foo if {[module-info mode load]} { diff --git a/testsuite/modulefiles.4/lerr/1.0 b/testsuite/modulefiles.4/lerr/1.0 index fd51ad9d..61b317f8 100644 --- a/testsuite/modulefiles.4/lerr/1.0 +++ b/testsuite/modulefiles.4/lerr/1.0 @@ -4,16 +4,16 @@ if {[info exists env(TESTSUITE_ERROR_ON_MULTI_LOAD)]} { load_last_bad - load_last_forbidden - load_last_hard_hidden { module load foo/1.0 err/1.0 } - load_first_bad - load_first_break - load_first_forbidden - load_first_hard_hidden { + load_first_bad - load_first_break - load_first_exit - load_first_forbidden - load_first_hard_hidden { module load err/1.0 foo/1.0 } - load-any_first_bad - load-any_first_break - load-any_first_forbidden - load-any_first_hard_hidden { + load-any_first_bad - load-any_first_break - load-any_first_exit - load-any_first_forbidden - load-any_first_hard_hidden { module load-any err/1.0 foo/1.0 } try-load_last_bad - try-load_last_forbidden - try-load_last_hard_hidden { module try-load foo/1.0 err/1.0 } - try-load_first_bad - try-load_first_break - try-load_first_forbidden - try-load_first_hard_hidden { + try-load_first_bad - try-load_first_break - try-load_first_exit - try-load_first_forbidden - try-load_first_hard_hidden { module try-load err/1.0 foo/1.0 } load_last_not_found { diff --git a/testsuite/modules.50-cmds/590-error_on_multi_load-load.exp b/testsuite/modules.50-cmds/590-error_on_multi_load-load.exp index d796d4bb..cfbf3c08 100644 --- a/testsuite/modules.50-cmds/590-error_on_multi_load-load.exp +++ b/testsuite/modules.50-cmds/590-error_on_multi_load-load.exp @@ -43,6 +43,20 @@ lappend ans_continue [list chdir /tmp] lappend ans_continue [list out all-out] lappend ans_continue [list ERR] +set ans_stop [list] +lappend ans_stop [list out all-pre-out] +lappend ans_stop [list set TSPATH dir1] +lappend ans_stop [list set __MODULES_LMREFRESH all/1.0] +lappend ans_stop [list set _LMFILES_ $mp/all/1.0] +lappend ans_stop [list set LOADEDMODULES all/1.0] +lappend ans_stop [list set TS ok] +lappend ans_stop [list alias alall value] +lappend ans_stop [list funcall "() { value; }; export -f funcall;"] +lappend ans_stop [list out {complete value compall;}] +lappend ans_stop [list chdir /tmp] +lappend ans_stop [list out all-out] +lappend ans_stop [list ERR] + set ans_all [list] lappend ans_all [list out all-pre-out] lappend ans_all [list set TSPATH dir1] @@ -224,6 +238,15 @@ testouterr_cmd bash {load all/1.0 err/1.0 foo/1.0} $ans_continue $ts_break testouterr_cmd bash {load --force all/1.0 err/1.0 foo/1.0} $ans_continue $ts_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD exit + +set ts_exit [msg_load err/1.0 $err_evalabort] +testouterr_cmd bash {load all/1.0 err/1.0 foo/1.0} $ans_stop $ts_exit + +# --force has no effect +testouterr_cmd bash {load --force all/1.0 err/1.0 foo/1.0} $ans_stop $ts_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD continue testouterr_cmd bash {load all/1.0 err/1.0 foo/1.0} $ans_all {} @@ -231,7 +254,7 @@ testouterr_cmd bash {load all/1.0 err/1.0 foo/1.0} $ans_all {} setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD error -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 14}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 17}] set ts_error_verbose [msg_load all/1.0]\n\n append ts_error_verbose [msg_load err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_error_verbose [msg_load foo/1.0] @@ -273,7 +296,7 @@ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_error setenv_loaded_module [list err/1.0] [list $mp/err/1.0] setenv_var __MODULES_LMPREREQ err/1.0&err/1.0|foo -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 25}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 28}] set ts_depre_load_error [msg_load err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_load_error [msg_load foo/1.0 [err_depre err/1.0]] testouterr_cmd bash {load all/1.0 foo/1.0 setenv/1.0} $ans_depre_error $ts_depre_load_error @@ -286,7 +309,7 @@ testouterr_cmd bash {load --force all/1.0 foo/1.0 setenv/1.0} $ans_depre_error_f setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_unload_error -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 31}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 34}] set ts_depre_unload_error [msg_unload err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_unload_error [msg_load foo/1.0 [err_depun err/1.0]] testouterr_cmd bash {load all/1.0 foo/1.0 setenv/1.0} $ans_depre_error $ts_depre_unload_error @@ -363,6 +386,13 @@ append ts_load_break [msg_load lerr/1.0 [err_reqlo err/1.0]] testouterr_cmd bash {load lerr/1.0} ERR $ts_load_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load_first_exit + +set ts_load_exit $ts_exit\n\n +append ts_load_exit [msg_load lerr/1.0 [err_reqlo err/1.0]] +testouterr_cmd bash {load lerr/1.0} ERR $ts_load_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load_last_forbidden set ts_load_forbidden [msg_load lerr/1.0 $ts_forbidden [err_reqlo err/1.0]] @@ -413,6 +443,11 @@ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD break testouterr_cmd bash {load all/1.0 err/1.0 foo/1.0} ERR $ts_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD exit + +testouterr_cmd bash {load all/1.0 err/1.0 foo/1.0} ERR $ts_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD continue testouterr_cmd bash {load all/1.0 err/1.0 foo/1.0} $ans_all {} @@ -420,7 +455,7 @@ testouterr_cmd bash {load all/1.0 err/1.0 foo/1.0} $ans_all {} setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD error -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 14}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 17}] set ts_error_verbose_abort [msg_load all/1.0]\n\n append ts_error_verbose_abort [msg_load err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]] testouterr_cmd bash {load -v all/1.0 err/1.0 foo/1.0} ERR $ts_error_verbose_abort @@ -472,14 +507,14 @@ testouterr_cmd bash {load --force all/1.0 foo/1.0 setenv/1.0} $ans_depre_unload_ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_bad -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 37}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 40}] set ts_depre_load_bad [msg_load err/1.0 [msg_moderr {invalid command name "bad"} bad $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_load_bad [msg_load foo/1.0 [err_depre err/1.0]] testouterr_cmd bash {load all/1.0 foo/1.0 setenv/1.0} ERR $ts_depre_load_bad setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_unload_bad -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 43}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 46}] set ts_depre_unload_bad [msg_unload err/1.0 [msg_moderr {invalid command name "bad"} bad $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_unload_bad [msg_load foo/1.0 [err_depun err/1.0]] testouterr_cmd bash {load all/1.0 foo/1.0 setenv/1.0} ERR $ts_depre_unload_bad @@ -498,6 +533,19 @@ append ts_depre_unload_break [msg_load foo/1.0 [err_depun err/1.0]] testouterr_cmd bash {load all/1.0 foo/1.0 setenv/1.0} ERR $ts_depre_unload_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_exit + +set ts_depre_load_exit [msg_load err/1.0 $err_evalabort]\n\n +append ts_depre_load_exit [msg_load foo/1.0 [err_depre err/1.0]] +testouterr_cmd bash {load all/1.0 foo/1.0 setenv/1.0} ERR $ts_depre_load_exit + +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_unload_exit + +set ts_depre_unload_exit [msg_unload err/1.0 $err_evalabort]\n\n +append ts_depre_unload_exit [msg_load foo/1.0 [err_depun err/1.0]] +testouterr_cmd bash {load all/1.0 foo/1.0 setenv/1.0} ERR $ts_depre_unload_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_reqmis set ts_depre_load_reqmis [msg_load err/1.0 [err_prereq unk]]\n\n @@ -582,6 +630,11 @@ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load_first_break testouterr_cmd bash {load lerr/1.0} ERR $ts_load_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load_first_exit + +testouterr_cmd bash {load lerr/1.0} ERR $ts_load_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load_last_forbidden testouterr_cmd bash {load lerr/1.0} ERR $ts_load_forbidden diff --git a/testsuite/modules.50-cmds/591-error_on_multi_load-load-any.exp b/testsuite/modules.50-cmds/591-error_on_multi_load-load-any.exp index ee1ce03c..ed4fa50f 100644 --- a/testsuite/modules.50-cmds/591-error_on_multi_load-load-any.exp +++ b/testsuite/modules.50-cmds/591-error_on_multi_load-load-any.exp @@ -135,6 +135,15 @@ testouterr_cmd bash {load-any err/1.0 foo/1.0} $ans_load_any $ts_break testouterr_cmd bash {load-any --force err/1.0 foo/1.0} $ans_load_any $ts_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD exit + +set ts_exit [msg_load err/1.0 $err_evalabort] +testouterr_cmd bash {load-any err/1.0 foo/1.0} ERR $ts_exit + +# --force has no effect +testouterr_cmd bash {load-any --force err/1.0 foo/1.0} ERR $ts_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD continue testouterr_cmd bash {load-any err/1.0 foo/1.0} $ans_continue {} @@ -142,7 +151,7 @@ testouterr_cmd bash {load-any err/1.0 foo/1.0} $ans_continue {} setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD error -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 14}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 17}] set ts_error_verbose [msg_load err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_error_verbose [msg_load foo/1.0] testouterr_cmd bash {load-any -v err/1.0 foo/1.0} $ans_load_any $ts_error_verbose @@ -176,7 +185,7 @@ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_error setenv_loaded_module [list err/1.0] [list $mp/err/1.0] setenv_var __MODULES_LMPREREQ err/1.0&err/1.0|foo -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 25}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 28}] set ts_depre_load_error [msg_load err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_load_error [msg_load foo/1.0 [err_depre err/1.0]] testouterr_cmd bash {load-any foo/1.0 setenv/1.0} $ans_depre_error $ts_depre_load_error @@ -189,7 +198,7 @@ testouterr_cmd bash {load-any --force foo/1.0 setenv/1.0} $ans_depre_error_force setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_unload_error -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 31}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 34}] set ts_depre_unload_error [msg_unload err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_unload_error [msg_load foo/1.0 [err_depun err/1.0]] testouterr_cmd bash {load-any foo/1.0 setenv/1.0} $ans_depre_error $ts_depre_unload_error @@ -258,6 +267,14 @@ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load-any_first_break testouterr_cmd bash {load lerr/1.0} $ans_in_modfile $ts_in_modfile +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load-any_first_exit + +set ts_in_modfile_stop [msg_load err/1.0 $err_evalabort]\n\n +append ts_in_modfile_stop [msg_load lerr/1.0 [err_reqlo err/1.0 foo/1.0]] +# exit command inhibits all remaining modulefile evaluations in load mode +testouterr_cmd bash {load lerr/1.0} ERR $ts_in_modfile_stop + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load-any_first_forbidden testouterr_cmd bash {load lerr/1.0} $ans_in_modfile_no_err $ts_in_modfile @@ -289,6 +306,11 @@ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD break testouterr_cmd bash {load-any err/1.0 foo/1.0} $ans_load_any $ts_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD exit + +testouterr_cmd bash {load-any err/1.0 foo/1.0} ERR $ts_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD continue testouterr_cmd bash {load-any err/1.0 foo/1.0} $ans_continue {} @@ -345,14 +367,14 @@ testouterr_cmd bash {load-any --force foo/1.0 setenv/1.0} $ans_depre_unload_erro setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_bad -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 37}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 40}] set ts_depre_load_bad [msg_load err/1.0 [msg_moderr {invalid command name "bad"} bad $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_load_bad [msg_load foo/1.0 [err_depre err/1.0]] testouterr_cmd bash {load-any foo/1.0 setenv/1.0} $ans_depre_error $ts_depre_load_bad setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_unload_bad -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 43}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 46}] set ts_depre_unload_bad [msg_unload err/1.0 [msg_moderr {invalid command name "bad"} bad $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_unload_bad [msg_load foo/1.0 [err_depun err/1.0]] testouterr_cmd bash {load-any foo/1.0 setenv/1.0} $ans_depre_error $ts_depre_unload_bad @@ -371,6 +393,21 @@ append ts_depre_unload_break [msg_load foo/1.0 [err_depun err/1.0]] testouterr_cmd bash {load-any foo/1.0 setenv/1.0} $ans_depre_error $ts_depre_unload_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_exit + +set ts_depre_load_exit [msg_load err/1.0 $err_evalabort]\n\n +append ts_depre_load_exit [msg_load foo/1.0 [err_depre err/1.0]] +# exit command inhibits all remaining modulefile evaluations in load mode +testouterr_cmd bash {load-any foo/1.0 setenv/1.0} ERR $ts_depre_load_exit + +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_unload_exit + +set ts_depre_unload_exit [msg_unload err/1.0 $err_evalabort]\n\n +append ts_depre_unload_exit [msg_load foo/1.0 [err_depun err/1.0]] +# exit command is not superseded on unload mode +testouterr_cmd bash {load-any foo/1.0 setenv/1.0} $ans_depre_error $ts_depre_unload_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_reqmis set ts_depre_load_reqmis [msg_load err/1.0 [err_prereq unk]]\n\n @@ -450,6 +487,12 @@ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load-any_first_break testouterr_cmd bash {load lerr/1.0} $ans_in_modfile $ts_in_modfile +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load-any_first_exit + +# exit command inhibits all remaining modulefile evaluations in load mode +testouterr_cmd bash {load lerr/1.0} ERR $ts_in_modfile_stop + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load-any_first_forbidden testouterr_cmd bash {load lerr/1.0} $ans_in_modfile_no_err $ts_in_modfile diff --git a/testsuite/modules.50-cmds/592-error_on_multi_load-try-load.exp b/testsuite/modules.50-cmds/592-error_on_multi_load-try-load.exp index 172d313e..66003a2e 100644 --- a/testsuite/modules.50-cmds/592-error_on_multi_load-try-load.exp +++ b/testsuite/modules.50-cmds/592-error_on_multi_load-try-load.exp @@ -43,6 +43,20 @@ lappend ans_continue [list chdir /tmp] lappend ans_continue [list out all-out] lappend ans_continue [list ERR] +set ans_stop [list] +lappend ans_stop [list out all-pre-out] +lappend ans_stop [list set TSPATH dir1] +lappend ans_stop [list set __MODULES_LMREFRESH all/1.0] +lappend ans_stop [list set _LMFILES_ $mp/all/1.0] +lappend ans_stop [list set LOADEDMODULES all/1.0] +lappend ans_stop [list set TS ok] +lappend ans_stop [list alias alall value] +lappend ans_stop [list funcall "() { value; }; export -f funcall;"] +lappend ans_stop [list out {complete value compall;}] +lappend ans_stop [list chdir /tmp] +lappend ans_stop [list out all-out] +lappend ans_stop [list ERR] + set ans_all [list] lappend ans_all [list out all-pre-out] lappend ans_all [list set TSPATH dir1] @@ -242,6 +256,15 @@ testouterr_cmd bash {try-load all/1.0 err/1.0 foo/1.0} $ans_continue $ts_break testouterr_cmd bash {try-load --force all/1.0 err/1.0 foo/1.0} $ans_continue $ts_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD exit + +set ts_exit [msg_load err/1.0 $err_evalabort] +testouterr_cmd bash {load all/1.0 err/1.0 foo/1.0} $ans_stop $ts_exit + +# --force has no effect +testouterr_cmd bash {load --force all/1.0 err/1.0 foo/1.0} $ans_stop $ts_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD continue testouterr_cmd bash {try-load all/1.0 err/1.0 foo/1.0} $ans_all {} @@ -249,7 +272,7 @@ testouterr_cmd bash {try-load all/1.0 err/1.0 foo/1.0} $ans_all {} setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD error -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 14}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 17}] set ts_error_verbose [msg_load all/1.0]\n\n append ts_error_verbose [msg_load err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_error_verbose [msg_load foo/1.0] @@ -285,7 +308,7 @@ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_error setenv_loaded_module [list err/1.0] [list $mp/err/1.0] setenv_var __MODULES_LMPREREQ err/1.0&err/1.0|foo -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 25}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 28}] set ts_depre_load_error [msg_load err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_load_error [msg_load foo/1.0 [err_depre err/1.0]] testouterr_cmd bash {try-load all/1.0 foo/1.0 setenv/1.0} $ans_depre_error $ts_depre_load_error @@ -298,7 +321,7 @@ testouterr_cmd bash {try-load --force all/1.0 foo/1.0 setenv/1.0} $ans_depre_err setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_unload_error -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 31}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 34}] set ts_depre_unload_error [msg_unload err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_unload_error [msg_load foo/1.0 [err_depun err/1.0]] testouterr_cmd bash {try-load all/1.0 foo/1.0 setenv/1.0} $ans_depre_error $ts_depre_unload_error @@ -375,6 +398,13 @@ append ts_load_break [msg_load lerr/1.0 [err_reqlo err/1.0]] testouterr_cmd bash {load lerr/1.0} ERR $ts_load_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load_first_exit + +set ts_load_exit $ts_exit\n\n +append ts_load_exit [msg_load lerr/1.0 [err_reqlo err/1.0]] +testouterr_cmd bash {load lerr/1.0} ERR $ts_load_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD try-load_last_forbidden set ts_load_forbidden [msg_top_load lerr/1.0 {} foo/1.0 {}] @@ -424,6 +454,11 @@ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD break testouterr_cmd bash {try-load all/1.0 err/1.0 foo/1.0} ERR $ts_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD exit + +testouterr_cmd bash {load all/1.0 err/1.0 foo/1.0} ERR $ts_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD continue testouterr_cmd bash {try-load all/1.0 err/1.0 foo/1.0} $ans_all {} @@ -431,7 +466,7 @@ testouterr_cmd bash {try-load all/1.0 err/1.0 foo/1.0} $ans_all {} setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD error -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 14}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 17}] set ts_error_verbose_abort [msg_load all/1.0]\n\n append ts_error_verbose_abort [msg_load err/1.0 [msg_moderr msg {error msg} $mp/err/1.0 $line_num {} {} {} $custom_error_trace]] testouterr_cmd bash {try-load -v all/1.0 err/1.0 foo/1.0} ERR $ts_error_verbose_abort @@ -482,14 +517,14 @@ testouterr_cmd bash {try-load --force all/1.0 foo/1.0 setenv/1.0} $ans_depre_unl setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_bad -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 37}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 40}] set ts_depre_load_bad [msg_load err/1.0 [msg_moderr {invalid command name "bad"} bad $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_load_bad [msg_load foo/1.0 [err_depre err/1.0]] testouterr_cmd bash {try-load all/1.0 foo/1.0 setenv/1.0} ERR $ts_depre_load_bad setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_unload_bad -set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 43}] +set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 46}] set ts_depre_unload_bad [msg_unload err/1.0 [msg_moderr {invalid command name "bad"} bad $mp/err/1.0 $line_num {} {} {} $custom_error_trace]]\n\n append ts_depre_unload_bad [msg_load foo/1.0 [err_depun err/1.0]] testouterr_cmd bash {try-load all/1.0 foo/1.0 setenv/1.0} ERR $ts_depre_unload_bad @@ -508,6 +543,19 @@ append ts_depre_unload_break [msg_load foo/1.0 [err_depun err/1.0]] testouterr_cmd bash {try-load all/1.0 foo/1.0 setenv/1.0} ERR $ts_depre_unload_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_exit + +set ts_depre_load_exit [msg_load err/1.0 $err_evalabort]\n\n +append ts_depre_load_exit [msg_load foo/1.0 [err_depre err/1.0]] +testouterr_cmd bash {load all/1.0 foo/1.0 setenv/1.0} ERR $ts_depre_load_exit + +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_unload_exit + +set ts_depre_unload_exit [msg_unload err/1.0 $err_evalabort]\n\n +append ts_depre_unload_exit [msg_load foo/1.0 [err_depun err/1.0]] +testouterr_cmd bash {load all/1.0 foo/1.0 setenv/1.0} ERR $ts_depre_unload_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD depre_load_reqmis set ts_depre_load_reqmis [msg_load err/1.0 [err_prereq unk]]\n\n @@ -592,6 +640,11 @@ setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD try-load_first_break testouterr_cmd bash {load lerr/1.0} ERR $ts_load_break +setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD load_first_exit + +testouterr_cmd bash {load lerr/1.0} ERR $ts_load_exit + + setenv_var TESTSUITE_ERROR_ON_MULTI_LOAD try-load_last_forbidden testouterr_cmd bash {load lerr/1.0} $ans_in_modfile_no_err $ts_load_forbidden