mirror of
https://github.com/envmodules/modules.git
synced 2026-05-30 00:12:31 +08:00
ts: test sticky/super-sticky tag on full path mod in 50/463
This commit is contained in:
@@ -142,5 +142,21 @@ if {[info exists env(TESTSUITE_FPMOD_TAG)]} {
|
||||
module-tag foo [file dirname $ModulesCurrentModulefile]/1.0
|
||||
module-tag bar [file dirname $ModulesCurrentModulefile]/1.0
|
||||
}
|
||||
sticky1 {
|
||||
module-tag sticky [file dirname $ModulesCurrentModulefile]/1.0
|
||||
module-virtual tag/1.1 ./1.0
|
||||
}
|
||||
sticky2 {
|
||||
module-tag super-sticky [file dirname $ModulesCurrentModulefile]/1.0
|
||||
module-virtual tag/1.1 ./1.0
|
||||
}
|
||||
sticky3 {
|
||||
module-tag sticky [file dirname $ModulesCurrentModulefile]
|
||||
module-virtual tag/1.1 ./1.0
|
||||
}
|
||||
sticky4 {
|
||||
module-tag super-sticky [file dirname $ModulesCurrentModulefile]
|
||||
module-virtual tag/1.1 ./1.0
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
1
testsuite/modulefiles.4/tag/2.1
Normal file
1
testsuite/modulefiles.4/tag/2.1
Normal file
@@ -0,0 +1 @@
|
||||
#%Module
|
||||
@@ -42,7 +42,8 @@ setenv_var TESTSUITE_FPMOD_TAG thisloc1
|
||||
set tserr "$mp:
|
||||
tag/1.0 <foo>
|
||||
tag/1.2.sub/1.0
|
||||
tag/2.0"
|
||||
tag/2.0
|
||||
tag/2.1"
|
||||
testouterr_cmd sh {avail -t tag} OK $tserr
|
||||
set tserr "$mp:
|
||||
tag/1.0 <foo>"
|
||||
|
||||
219
testsuite/modules.50-cmds/463-sticky-full-path.exp
Normal file
219
testsuite/modules.50-cmds/463-sticky-full-path.exp
Normal file
@@ -0,0 +1,219 @@
|
||||
##############################################################################
|
||||
# Modules Revision 3.0
|
||||
# Providing a flexible user environment
|
||||
#
|
||||
# File: modules.50-cmds/%M%
|
||||
# Revision: %I%
|
||||
# First Edition: 2023/05/29
|
||||
# Last Mod.: %U%, %G%
|
||||
#
|
||||
# Authors: Xavier Delaruelle, xavier.delaruelle@cea.fr
|
||||
#
|
||||
# Description: Testuite testsequence
|
||||
# Command: load, unload, switch, restore
|
||||
# Modulefiles:
|
||||
# Sub-Command:
|
||||
#
|
||||
# Comment: %C{
|
||||
# Check sticky/super-sticky modules when tag is set over
|
||||
# full path module designation
|
||||
# }C%
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
skip_if_quick_mode
|
||||
|
||||
set mp $modpath.4
|
||||
set mpre $modpathre.4
|
||||
setenv_path_var MODULEPATH $mp
|
||||
|
||||
|
||||
#
|
||||
# load
|
||||
#
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky1
|
||||
set ans [list]
|
||||
lappend ans [list set _LMFILES_ $mp/tag/1.0]
|
||||
lappend ans [list set LOADEDMODULES tag/1.0]
|
||||
lappend ans [list set __MODULES_LMTAG tag/1.0&sticky]
|
||||
set tserr [msg_load {tag/1.0 <S>}]
|
||||
testouterr_cmd sh {load -v tag/1.0} $ans $tserr
|
||||
|
||||
set ans [list]
|
||||
lappend ans [list set _LMFILES_ $mp/tag/1.0]
|
||||
lappend ans [list set LOADEDMODULES tag/1.1]
|
||||
lappend ans [list set __MODULES_LMTAG tag/1.1&sticky]
|
||||
set tserr [msg_load {tag/1.1 <S>}]
|
||||
testouterr_cmd sh {load -v tag/1.1} $ans $tserr
|
||||
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky2
|
||||
set ans [list]
|
||||
lappend ans [list set _LMFILES_ $mp/tag/1.0]
|
||||
lappend ans [list set LOADEDMODULES tag/1.0]
|
||||
lappend ans [list set __MODULES_LMTAG tag/1.0&super-sticky]
|
||||
set tserr [msg_load {tag/1.0 <sS>}]
|
||||
testouterr_cmd sh {load -v tag/1.0} $ans $tserr
|
||||
|
||||
set ans [list]
|
||||
lappend ans [list set _LMFILES_ $mp/tag/1.0]
|
||||
lappend ans [list set LOADEDMODULES tag/1.1]
|
||||
lappend ans [list set __MODULES_LMTAG tag/1.1&super-sticky]
|
||||
set tserr [msg_load {tag/1.1 <sS>}]
|
||||
testouterr_cmd sh {load -v tag/1.1} $ans $tserr
|
||||
|
||||
|
||||
#
|
||||
# unload
|
||||
#
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky1
|
||||
|
||||
setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.0&sticky
|
||||
set tserr [msg_unload {tag/1.0 <S>} $err_stickyunload]
|
||||
testouterr_cmd sh {unload -v tag/1.0} ERR $tserr
|
||||
|
||||
# tag not recorded in environment
|
||||
unsetenv_var __MODULES_LMTAG
|
||||
set ans [list]
|
||||
lappend ans [list unset _LMFILES_]
|
||||
lappend ans [list unset LOADEDMODULES]
|
||||
set tserr [msg_unload {tag/1.0}]
|
||||
testouterr_cmd sh {unload -v tag/1.0} $ans $tserr
|
||||
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky2
|
||||
|
||||
setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.0&super-sticky
|
||||
set tserr [msg_unload {tag/1.0 <sS>} $err_superstickyunload]
|
||||
testouterr_cmd sh {unload -v tag/1.0} ERR $tserr
|
||||
|
||||
# tag not recorded in environment
|
||||
unsetenv_var __MODULES_LMTAG
|
||||
set ans [list]
|
||||
lappend ans [list unset _LMFILES_]
|
||||
lappend ans [list unset LOADEDMODULES]
|
||||
set tserr [msg_unload {tag/1.0}]
|
||||
testouterr_cmd sh {unload -v tag/1.0} $ans $tserr
|
||||
|
||||
|
||||
#
|
||||
# switch
|
||||
#
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky1
|
||||
setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.0&sticky
|
||||
set tserr [msg_switch {tag/1.0 <S>} tag/2.0 $err_stickyunload]
|
||||
testouterr_cmd sh {switch tag/1.0 tag/2.0} ERR $tserr
|
||||
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky2
|
||||
setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.0&super-sticky
|
||||
set tserr [msg_switch {tag/1.0 <sS>} tag/2.0 $err_superstickyunload]
|
||||
testouterr_cmd sh {switch tag/1.0 tag/2.0} ERR $tserr
|
||||
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky3
|
||||
|
||||
setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.0&sticky
|
||||
set tserr [msg_switch {tag/1.0 <S>} foo/1.0 $err_stickyunload]
|
||||
testouterr_cmd sh {switch tag/1.0 foo/1.0} ERR $tserr
|
||||
|
||||
set tserr [msg_switch {tag/1.0 <S>} foo/2.0 $err_stickyunload]
|
||||
testouterr_cmd sh {switch tag/1.0 foo/2.0} ERR $tserr
|
||||
|
||||
setenv_loaded_module [list tag/1.1] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.1&sticky
|
||||
set tserr [msg_switch {tag/1.1 <S>} foo/1.0 $err_stickyunload]
|
||||
testouterr_cmd sh {switch tag/1.1 foo/1.0} ERR $tserr
|
||||
|
||||
set tserr [msg_switch {tag/1.1 <S>} foo/2.0 $err_stickyunload]
|
||||
testouterr_cmd sh {switch tag/1.1 foo/2.0} ERR $tserr
|
||||
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky4
|
||||
|
||||
setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.0&super-sticky
|
||||
set tserr [msg_switch {tag/1.0 <sS>} foo/1.0 $err_superstickyunload]
|
||||
testouterr_cmd sh {switch tag/1.0 foo/1.0} ERR $tserr
|
||||
|
||||
set tserr [msg_switch {tag/1.0 <sS>} foo/2.0 $err_superstickyunload]
|
||||
testouterr_cmd sh {switch tag/1.0 foo/2.0} ERR $tserr
|
||||
|
||||
setenv_loaded_module [list tag/1.1] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.1&super-sticky
|
||||
set tserr [msg_switch {tag/1.1 <sS>} foo/1.0 $err_superstickyunload]
|
||||
testouterr_cmd sh {switch tag/1.1 foo/1.0} ERR $tserr
|
||||
|
||||
set tserr [msg_switch {tag/1.1 <sS>} foo/2.0 $err_superstickyunload]
|
||||
testouterr_cmd sh {switch tag/1.1 foo/2.0} ERR $tserr
|
||||
|
||||
|
||||
#
|
||||
# restore
|
||||
#
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky1
|
||||
setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.0&sticky
|
||||
setenv_var __MODULES_LMINIT "module use $mp:module load tag/2.0"
|
||||
|
||||
set ans [list]
|
||||
lappend ans [list set _LMFILES_ $mp/tag/2.0]
|
||||
lappend ans [list set LOADEDMODULES tag/2.0]
|
||||
lappend ans [list unset __MODULES_LMTAG]
|
||||
set tserr [msg_unload {tag/1.0 <S>}]\n[msg_load tag/2.0]
|
||||
testouterr_cmd sh {restore __init__} $ans $tserr
|
||||
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky2
|
||||
setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.0&super-sticky
|
||||
setenv_var __MODULES_LMINIT "module use $mp:module load tag/2.0"
|
||||
|
||||
set ans [list]
|
||||
lappend ans [list set _LMFILES_ $mp/tag/1.0:$mp/tag/2.0]
|
||||
lappend ans [list set LOADEDMODULES tag/1.0:tag/2.0]
|
||||
lappend ans [list ERR]
|
||||
set tserr [msg_unload {tag/1.0 <sS>} $err_superstickyunload]\n\n[msg_load tag/2.0]
|
||||
|
||||
testouterr_cmd sh {restore __init__} $ans $tserr
|
||||
|
||||
setenv_var TESTSUITE_FPMOD_TAG sticky4
|
||||
setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.0&super-sticky
|
||||
setenv_var __MODULES_LMINIT "module use $mp:module load --tag=super-sticky tag/2.0"
|
||||
|
||||
set ans [list]
|
||||
lappend ans [list set _LMFILES_ $mp/tag/1.0:$mp/tag/2.0]
|
||||
lappend ans [list set LOADEDMODULES tag/1.0:tag/2.0]
|
||||
lappend ans [list set __MODULES_LMEXTRATAG tag/2.0&super-sticky]
|
||||
lappend ans [list set __MODULES_LMTAG tag/1.0&super-sticky:tag/2.0&super-sticky]
|
||||
lappend ans [list ERR]
|
||||
set tserr [msg_unload {tag/1.0 <sS>} $err_superstickyunload]\n\n[msg_load {tag/2.0 <sS>}]
|
||||
testouterr_cmd sh {restore __init__} $ans $tserr
|
||||
|
||||
set ans [list]
|
||||
lappend ans [list set _LMFILES_ $mp/tag/1.0:$mp/tag/2.0]
|
||||
lappend ans [list set LOADEDMODULES tag/1.1:tag/2.0]
|
||||
lappend ans [list set __MODULES_LMEXTRATAG tag/2.0&super-sticky]
|
||||
lappend ans [list set __MODULES_LMTAG tag/1.1&super-sticky:tag/2.0&super-sticky]
|
||||
lappend ans [list ERR]
|
||||
setenv_loaded_module [list tag/1.1] [list $mp/tag/1.0]
|
||||
setenv_var __MODULES_LMTAG tag/1.1&super-sticky
|
||||
set tserr [msg_unload {tag/1.1 <sS>} $err_superstickyunload]\n\n[msg_load {tag/2.0 <sS>}]
|
||||
testouterr_cmd sh {restore __init__} $ans $tserr
|
||||
|
||||
|
||||
#
|
||||
# Cleanup
|
||||
#
|
||||
|
||||
reset_test_env
|
||||
Reference in New Issue
Block a user