diff --git a/testsuite/modulefiles.3/path-cmd-opt/1.0 b/testsuite/modulefiles.3/path-cmd-opt/1.0 index d1ef37ec..a77eaaf4 100644 --- a/testsuite/modulefiles.3/path-cmd-opt/1.0 +++ b/testsuite/modulefiles.3/path-cmd-opt/1.0 @@ -40,6 +40,24 @@ if {[info exists env(TESTSUITE_PATH_CMD_OPT)]} { remove4 { remove-path --remove-on-unload --index FOO 3 } + remove5 { + remove-path FOO --remove-on-unload + } + remove6 { + remove-path FOO /tmp --remove-on-unload /dir1 + } + remove7 { + remove-path --remove-on-unload FOO /tmp {} + } + unuse3 { + module unuse --remove-on-unload + } + unuse4 { + module unuse /tmp --remove-on-unload /dir1 + } + unuse5 { + module unuse --remove-on-unload /tmp {} + } } } diff --git a/testsuite/modulefiles.3/path-cmd-opt/1.1 b/testsuite/modulefiles.3/path-cmd-opt/1.1 index 319ce0d4..0496c414 100644 --- a/testsuite/modulefiles.3/path-cmd-opt/1.1 +++ b/testsuite/modulefiles.3/path-cmd-opt/1.1 @@ -94,6 +94,30 @@ if {[info exists env(TESTSUITE_PATH_CMD_OPT)]} { unuse9 { module unuse --remove-on-unload /tmp --append-on-unload /dir1 /dir2 } + remove16 { + remove-path FOO --append-on-unload + } + remove17 { + remove-path FOO --append-on-unload /tmp /dir1 --remove-on-unload /dir2 + } + remove18 { + remove-path FOO --append-on-unload --remove-on-unload /tmp /dir1 + } + remove19 { + remove-path FOO --append-on-unload {} /tmp + } + unuse10 { + module unuse --append-on-unload + } + unuse11 { + module unuse --append-on-unload /tmp /dir1 --remove-on-unload /dir2 + } + unuse12 { + module unuse --append-on-unload --remove-on-unload /tmp /dir1 + } + unuse13 { + module unuse --append-on-unload {} /tmp + } } } diff --git a/testsuite/modules.50-cmds/500-remove-on-load.exp b/testsuite/modules.50-cmds/500-remove-on-load.exp index ae03f9e0..078d2058 100644 --- a/testsuite/modules.50-cmds/500-remove-on-load.exp +++ b/testsuite/modules.50-cmds/500-remove-on-load.exp @@ -271,6 +271,64 @@ testouterr_cmd_re sh "unload $mod" ERR $tserr unsetenv_loaded_module +setenv_var TESTSUITE_PATH_CMD_OPT remove5 + +setenv_path_var FOO /tmp +set ln [expr {[cmpversion $tclsh_version 8.6] == -1 ? 5 : 44}] +set tserr [escre [msg_load $mod [msg_moderr {remove-path should get a value for environment variable FOO} {remove-path FOO --remove-on-unload} $modfile $ln]]] +testouterr_cmd_re sh "load $mod" ERR $tserr + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var FOO /tmp +set tserr [escre [msg_unload $mod [msg_moderr {remove-path should get a value for environment variable FOO} {remove-path FOO --remove-on-unload} $modfile $ln]]] +testouterr_cmd_re sh "unload $mod" ERR $tserr + +unsetenv_loaded_module + + +setenv_var TESTSUITE_PATH_CMD_OPT remove6 + +setenv_path_var FOO /tmp /dir1 +set ans [list] +lappend ans [list unset FOO] +lappend ans [list set _LMFILES_ $modfile] +lappend ans [list set LOADEDMODULES $mod] +testouterr_cmd sh "load $mod" $ans {} + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var FOO /tmp /dir1 +set ans [list] +lappend ans [list unset FOO] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +testouterr_cmd sh "unload $mod" $ans {} + +unsetenv_loaded_module + + +setenv_var TESTSUITE_PATH_CMD_OPT remove7 + +setenv_path_var FOO /tmp {} +set ans [list] +lappend ans [list unset __MODULES_SHARE_FOO] +lappend ans [list unset FOO] +lappend ans [list set _LMFILES_ $modfile] +lappend ans [list set LOADEDMODULES $mod] +testouterr_cmd sh "load $mod" $ans {} + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var FOO /tmp {} +set ans [list] +lappend ans [list unset __MODULES_SHARE_FOO] +lappend ans [list unset FOO] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +testouterr_cmd sh "unload $mod" $ans {} + +unsetenv_loaded_module +unsetenv_path_var FOO + + # # module use # @@ -406,6 +464,68 @@ $modlin" testouterr_cmd_re sh "test $mod" OK $tserr +setenv_var TESTSUITE_PATH_CMD_OPT unuse3 + +setenv_path_var MODULEPATH $mp /tmp +set ln [expr {[cmpversion $tclsh_version 8.6] == -1 ? 5 : 53}] +set tserr [escre [msg_load $mod [msg_moderr {remove-path should get a value for environment variable MODULEPATH} {module unuse --remove-on-unload} $modfile $ln]]] +testouterr_cmd_re sh "load $mod" ERR $tserr + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var MODULEPATH $mp /tmp +set tserr [escre [msg_unload $mod [msg_moderr {remove-path should get a value for environment variable MODULEPATH} {module unuse --remove-on-unload} $modfile $ln]]] +testouterr_cmd_re sh "unload $mod" ERR $tserr + +unsetenv_loaded_module + + +setenv_var TESTSUITE_PATH_CMD_OPT unuse4 + +setenv_path_var MODULEPATH $mp /tmp /dir1 +set ans [list] +lappend ans [list set _LMFILES_ $modfile] +lappend ans [list set LOADEDMODULES $mod] +lappend ans [list set MODULEPATH $mp] +testouterr_cmd sh "load $mod" $ans {} + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var MODULEPATH $mp /tmp /dir1 +set ans [list] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +lappend ans [list set MODULEPATH $mp] +testouterr_cmd sh "unload $mod" $ans {} + +unsetenv_loaded_module + + +setenv_var TESTSUITE_PATH_CMD_OPT unuse5 + +setenv_path_var MODULEPATH $mp /tmp {} +set ans [list] +lappend ans [list set _LMFILES_ $modfile] +lappend ans [list set LOADEDMODULES $mod] +lappend ans [list set __MODULES_SHARE_MODULEPATH :1] +lappend ans [list set MODULEPATH $mp:] +lappend ans [list ERR] +set tserr [msg_load $mod $err_emptydirname] +testouterr_cmd sh "load $mod" $ans $tserr + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var MODULEPATH $mp /tmp {} +set ans [list] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +lappend ans [list set __MODULES_SHARE_MODULEPATH :1] +lappend ans [list set MODULEPATH $mp:] +lappend ans [list ERR] +set tserr [msg_unload $mod $err_emptydirname] +testouterr_cmd sh "unload $mod" $ans $tserr + +unsetenv_loaded_module +setenv_path_var MODULEPATH $mp + + # # Cleanup # diff --git a/testsuite/modules.50-cmds/501-append-on-unload.exp b/testsuite/modules.50-cmds/501-append-on-unload.exp index 8df19703..9cfbc6eb 100644 --- a/testsuite/modules.50-cmds/501-append-on-unload.exp +++ b/testsuite/modules.50-cmds/501-append-on-unload.exp @@ -482,6 +482,92 @@ testouterr_cmd sh "unload $mod" $ans {} unsetenv_loaded_module +setenv_var TESTSUITE_PATH_CMD_OPT remove16 + +setenv_path_var FOO /tmp +set ln [expr {[cmpversion $tclsh_version 8.6] == -1 ? 5 : 98}] +set tserr [escre [msg_load $mod [msg_moderr {remove-path should get a value for environment variable FOO} {remove-path FOO --append-on-unload} $modfile $ln]]] +testouterr_cmd_re sh "load $mod" ERR $tserr + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var FOO /tmp +set tserr [escre [msg_unload $mod [msg_moderr {remove-path should get a value for environment variable FOO} {remove-path FOO --append-on-unload} $modfile $ln]]] +testouterr_cmd_re sh "unload $mod" ERR $tserr + +unsetenv_loaded_module + + +setenv_var TESTSUITE_PATH_CMD_OPT remove17 + +setenv_path_var FOO /tmp /dir1 +set ans [list] +lappend ans [list unset FOO] +lappend ans [list set _LMFILES_ $modfile] +lappend ans [list set LOADEDMODULES $mod] +testouterr_cmd sh "load $mod" $ans {} + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var FOO /tmp +set ans [list] +lappend ans [list unset FOO] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +testouterr_cmd sh "unload $mod" $ans {} + +unsetenv_loaded_module + + +setenv_var TESTSUITE_PATH_CMD_OPT remove18 + +setenv_path_var FOO /tmp /dir1 +set ans [list] +lappend ans [list unset FOO] +lappend ans [list set _LMFILES_ $modfile] +lappend ans [list set LOADEDMODULES $mod] +testouterr_cmd sh "load $mod" $ans {} + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var FOO /tmp +set ans [list] +lappend ans [list unset FOO] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +testouterr_cmd sh "unload $mod" $ans {} + +unsetenv_loaded_module + + +setenv_var TESTSUITE_PATH_CMD_OPT remove19 + +setenv_path_var FOO /tmp {} +set ans [list] +lappend ans [list unset __MODULES_SHARE_FOO] +lappend ans [list unset FOO] +lappend ans [list set _LMFILES_ $modfile] +lappend ans [list set LOADEDMODULES $mod] +testouterr_cmd sh "load $mod" $ans {} + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var FOO /tmp {} +set ans [list] +lappend ans [list set __MODULES_SHARE_FOO /tmp:2::2] +lappend ans [list set FOO /tmp:] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +testouterr_cmd sh "unload $mod" $ans {} + +setenv_path_var FOO /tmp +set ans [list] +lappend ans [list set __MODULES_SHARE_FOO :1:/tmp:2] +lappend ans [list set FOO /tmp:] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +testouterr_cmd sh "unload $mod" $ans {} + +unsetenv_loaded_module +unsetenv_path_var FOO + + # # module use # @@ -788,6 +874,97 @@ testouterr_cmd sh "unload $mod" $ans {} unsetenv_loaded_module +setenv_var TESTSUITE_PATH_CMD_OPT unuse10 + +setenv_path_var MODULEPATH $mp /tmp +set ln [expr {[cmpversion $tclsh_version 8.6] == -1 ? 5 : 110}] +set tserr [escre [msg_load $mod [msg_moderr {remove-path should get a value for environment variable MODULEPATH} {module unuse --append-on-unload} $modfile $ln]]] +testouterr_cmd_re sh "load $mod" ERR $tserr + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var MODULEPATH $mp /tmp +set tserr [escre [msg_unload $mod [msg_moderr {remove-path should get a value for environment variable MODULEPATH} {module unuse --append-on-unload} $modfile $ln]]] +testouterr_cmd_re sh "unload $mod" ERR $tserr + +unsetenv_loaded_module + + +setenv_var TESTSUITE_PATH_CMD_OPT unuse11 + +setenv_path_var MODULEPATH $mp /tmp /dir1 +set ans [list] +lappend ans [list set _LMFILES_ $modfile] +lappend ans [list set LOADEDMODULES $mod] +lappend ans [list set MODULEPATH $mp] +testouterr_cmd sh "load $mod" $ans {} + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var MODULEPATH $mp /tmp /dir1 +set ans [list] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +lappend ans [list set MODULEPATH $mp] +testouterr_cmd sh "unload $mod" $ans {} + +unsetenv_loaded_module + + +setenv_var TESTSUITE_PATH_CMD_OPT unuse12 + +setenv_path_var MODULEPATH $mp /tmp /dir1 +set ans [list] +lappend ans [list set _LMFILES_ $modfile] +lappend ans [list set LOADEDMODULES $mod] +lappend ans [list set MODULEPATH $mp] +testouterr_cmd sh "load $mod" $ans {} + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var MODULEPATH $mp /tmp /dir1 +set ans [list] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +lappend ans [list set MODULEPATH $mp] +testouterr_cmd sh "unload $mod" $ans {} + +unsetenv_loaded_module + + +setenv_var TESTSUITE_PATH_CMD_OPT unuse13 + +setenv_path_var MODULEPATH $mp /tmp {} +set ans [list] +lappend ans [list set _LMFILES_ $modfile] +lappend ans [list set LOADEDMODULES $mod] +lappend ans [list set __MODULES_SHARE_MODULEPATH :1] +lappend ans [list set MODULEPATH $mp:] +lappend ans [list ERR] +set tserr [msg_load $mod $err_emptydirname] +testouterr_cmd sh "load $mod" $ans $tserr + +setenv_loaded_module [list $mod] [list $modfile] +setenv_path_var MODULEPATH $mp /tmp {} +set ans [list] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +lappend ans [list set __MODULES_SHARE_MODULEPATH /tmp:2::1] +lappend ans [list set MODULEPATH $mp:/tmp:] +lappend ans [list ERR] +set tserr [msg_unload $mod $err_emptydirname] +testouterr_cmd sh "unload $mod" $ans $tserr + +setenv_path_var MODULEPATH $mp +set ans [list] +lappend ans [list unset _LMFILES_] +lappend ans [list unset LOADEDMODULES] +lappend ans [list set MODULEPATH $mp:/tmp] +lappend ans [list ERR] +set tserr [msg_unload $mod $err_emptydirname] +testouterr_cmd sh "unload $mod" $ans $tserr + +unsetenv_loaded_module +setenv_path_var MODULEPATH $mp + + # # Cleanup #