mirror of
https://github.com/envmodules/modules.git
synced 2026-05-30 00:12:31 +08:00
ts: change approach with version req in cache file magic cookie
Signed-off-by: Xavier Delaruelle <xavier.delaruelle@cea.fr>
This commit is contained in:
@@ -29,6 +29,8 @@ send_user "\tInitializing the testsuite ...\n"
|
||||
# Modules release number
|
||||
set major_minor_rel [join [lrange [split $install_version .] 0 1] .]
|
||||
|
||||
set cache_mcookie_version 5.3
|
||||
|
||||
# test kind of sh-shell we have
|
||||
if {[file type /bin/sh] eq {link}} {
|
||||
set sh_kind [file readlink /bin/sh]
|
||||
@@ -1191,7 +1193,7 @@ proc create_dummy_cachefile {mp} {
|
||||
set cachefile $mp/.modulecache
|
||||
send_user "\tCreating dummy cache file $cachefile\n"
|
||||
set fid [open $cachefile w]
|
||||
puts $fid "#%Module$::major_minor_rel"
|
||||
puts $fid "#%Module$::cache_mcookie_version"
|
||||
close $fid
|
||||
}
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@ file mkdir $mp2
|
||||
setenv_path_var MODULEPATH $mp1:$mp2
|
||||
create_dummy_modulefile $mp1modfile
|
||||
set tserr [msg_create $mp1cache]\n\n[msg_create $mp2cache $warn_cache_nothingtorec]
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
append tscache \n[list modulefile-content foo [file mtime $mp1modfile] #%Module #%Module\n]
|
||||
testouterrfile_cmd sh cachebuild OK $tserr $mp1cache $tscache
|
||||
file delete $mp1modfile
|
||||
@@ -58,7 +58,7 @@ file delete $mp1modfile
|
||||
create_dummy_modulefile $mp1modfile
|
||||
create_dummy_cachefile $mp1
|
||||
set tserr [msg_create $mp1cache]\n\n[msg_create $mp2cache $warn_cache_nothingtorec]
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
append tscache \n[list modulefile-content foo [file mtime $mp1modfile] #%Module #%Module\n]
|
||||
testouterrfile_cmd sh cachebuild OK $tserr $mp1cache $tscache
|
||||
file delete $mp1modfile
|
||||
@@ -73,7 +73,7 @@ close [open $mpfile w]
|
||||
|
||||
# silent mode
|
||||
create_dummy_modulefile $mp1modfile
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
append tscache \n[list modulefile-content foo [file mtime $mp1modfile] #%Module #%Module\n]
|
||||
append tscache \n[list modulefile-invalid qux invalid {Magic cookie '#%Module' missing}]
|
||||
testouterrfile_cmd sh {cachebuild -s} OK {} $mp1cache $tscache
|
||||
@@ -88,7 +88,7 @@ file delete $mp1cache
|
||||
create_dummy_modulefile $mp2modfile
|
||||
setenv_path_var MODULEPATH $mpunk:$mp2
|
||||
set tserr [msg_create $mpunk/.modulecache "$error_msgs: '$mpunk' is not a directory"]\n\n[msg_create $mp2cache]
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
append tscache \n[list modulefile-content bar [file mtime $mp2modfile] #%Module #%Module\n]
|
||||
testouterrfile_cmd sh cachebuild ERR $tserr $mp2cache $tscache
|
||||
|
||||
@@ -130,7 +130,7 @@ setenv_path_var MODULEPATH $mp1:$mp2
|
||||
change_file_perms $mp1 $nowrite_perms
|
||||
create_dummy_modulefile $mp2modfile
|
||||
set tserr [msg_create $mp1cache $warn_cache_build_nowritable]\n\n[msg_create $mp2cache]
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
append tscache \n[list modulefile-content bar [file mtime $mp2modfile] #%Module #%Module\n]
|
||||
testouterrfile_cmd sh cachebuild OK $tserr $mp2cache $tscache
|
||||
set tscache [couldnotopen_nofile $mp1cache]
|
||||
@@ -143,7 +143,7 @@ create_dummy_modulefile $mp1modfile
|
||||
create_dummy_modulefile $mp2modfile
|
||||
change_file_perms $mp1 $nowrite_perms
|
||||
set tserr [msg_create $mp1cache $warn_cache_build_nowritable]\n\n[msg_create $mp2cache]
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
append tscache \n[list modulefile-content bar [file mtime $mp2modfile] #%Module #%Module\n]
|
||||
testouterrfile_cmd sh cachebuild OK $tserr $mp2cache $tscache
|
||||
set tscache [couldnotopen_nofile $mp1cache]
|
||||
@@ -200,7 +200,7 @@ change_file_perms $mp2cache $nowrite_perms
|
||||
set tserr [msg_create $mp1cache]\n\n[msg_create $mp2cache [err_couldnotopen_permdenied $mp2cache]]
|
||||
set tscache [couldnotopen_permdenied $mp1cache]
|
||||
testouterrfile_cmd sh cachebuild ERR $tserr $mp1cache $tscache
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
testouterrfile_cmd sh cachebuild ERR $tserr $mp2cache $tscache
|
||||
file delete $mp1modfile
|
||||
file delete $mp2modfile
|
||||
@@ -218,7 +218,7 @@ change_file_perms $mp2cache $nowrite_perms
|
||||
set tserr [msg_create $mp1cache]\n\n[msg_create $mp2cache [err_couldnotopen_permdenied $mp2cache]]
|
||||
set tscache [couldnotopen_permdenied $mp1cache]
|
||||
testouterrfile_cmd sh "cachebuild $mp1 $mp2" ERR $tserr $mp1cache $tscache
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
set tserr [msg_create $mp2cache [err_couldnotopen_permdenied $mp2cache]]\n\n[msg_create $mp1cache]
|
||||
testouterrfile_cmd sh "cachebuild $mp2 $mp1" ERR $tserr $mp2cache $tscache
|
||||
file delete $mp1modfile
|
||||
@@ -236,7 +236,7 @@ if {$is_stderr_tty} {
|
||||
create_dummy_modulefile $mp2modfile
|
||||
change_file_perms $mp1 $nowrite_perms
|
||||
set tserr [msg_create $mp1cache [err_couldnotopen_permdenied $mp1cache]]\n\n[msg_create $mp2cache]
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
append tscache \n[list modulefile-content bar [file mtime $mp2modfile] #%Module #%Module\n]
|
||||
testouterrfile_cmd sh cachebuild ERR $tserr $mp2cache $tscache
|
||||
set tscache [couldnotopen_nofile $mp1cache]
|
||||
|
||||
@@ -34,7 +34,7 @@ lassign [create_diverse_module_setup $mp1] dir_list file_list
|
||||
array set file_arr $file_list
|
||||
|
||||
# expected cache file
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
foreach f [lsort [array names file_arr]] {
|
||||
set entry {}
|
||||
switch -- $f {
|
||||
@@ -143,7 +143,7 @@ setenv_path_var MODULEPATH $mp2:$mp1
|
||||
# one modulefile not readable
|
||||
change_file_perms $mp2/bar/1.0 $noread_perms
|
||||
set tserr [msg_create $mp2cache]\n[msg_create $mp1cache]
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
foreach f [lsort [array names other_file_arr]] {
|
||||
switch -- $f {
|
||||
bar/1.0 {
|
||||
@@ -166,7 +166,7 @@ restore_file_perms $mp2/bar/1.0
|
||||
# one modulerc not readable
|
||||
change_file_perms $mp2/foo/.modulerc $noread_perms
|
||||
set tserr [msg_create $mp2cache]\n[msg_create $mp1cache]
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
foreach f [lsort [array names other_file_arr]] {
|
||||
set entry {}
|
||||
switch -- $f {
|
||||
@@ -192,7 +192,7 @@ restore_file_perms $mp2/foo/.modulerc
|
||||
# one directory not readable
|
||||
change_file_perms $mp2/foo $noread_perms
|
||||
set tserr [msg_create $mp2cache]\n[msg_create $mp1cache]
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
foreach f [lsort [array names other_file_arr]] {
|
||||
set entry {}
|
||||
switch -- $f {
|
||||
@@ -223,7 +223,7 @@ if {$is_stderr_tty} {
|
||||
# test a modulefile read failure during cache build by faking modulefile is readable
|
||||
setenv_var TESTSUITE_ENABLE_SITECONFIG_CACHEBUILD_READ1 1
|
||||
set tserr [msg_create $mp2cache]\n[msg_create $mp1cache]
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
foreach f [lsort [array names other_file_arr]] {
|
||||
set entry {}
|
||||
switch -- $f {
|
||||
|
||||
@@ -36,7 +36,7 @@ array set file_arr [concat $file_list $other_file_list]
|
||||
|
||||
|
||||
# expected cache file when no limited access
|
||||
set tscache "#%Module$major_minor_rel"
|
||||
set tscache "#%Module$cache_mcookie_version"
|
||||
foreach f [lsort [array names file_arr]] {
|
||||
set entry {}
|
||||
switch -- $f {
|
||||
@@ -105,7 +105,7 @@ change_file_perms $mp1/quxc/1.0~ $no_arx_perms
|
||||
change_file_perms $mp1/.svn $no_arx_perms
|
||||
change_file_perms $mp1/.sos/ignmod $no_arx_perms
|
||||
|
||||
set tscache1 "#%Module$major_minor_rel"
|
||||
set tscache1 "#%Module$cache_mcookie_version"
|
||||
foreach f [lsort [concat [array names file_arr] [list foo quux/oth empty anotherempty]]] {
|
||||
set entry {}
|
||||
switch -glob -- $f {
|
||||
@@ -157,7 +157,7 @@ change_file_perms $mp1/.version $no_ar_perms
|
||||
change_file_perms $mp1/foo/1.0 $no_ar_perms
|
||||
change_file_perms $mp1/foo/.modulerc $no_arx_perms
|
||||
|
||||
set tscache2 "#%Module$major_minor_rel"
|
||||
set tscache2 "#%Module$cache_mcookie_version"
|
||||
foreach f [lsort [concat [array names file_arr] [list quux empty anotherempty]]] {
|
||||
set entry {}
|
||||
switch -glob -- $f {
|
||||
@@ -297,7 +297,7 @@ change_file_perms $mp1/quxc/1.0~ $no_arx_perms
|
||||
change_file_perms $mp1/.svn $no_arx_perms
|
||||
change_file_perms $mp1/.sos/ignmod $no_arx_perms
|
||||
|
||||
set tscachewin1 "#%Module$major_minor_rel"
|
||||
set tscachewin1 "#%Module$cache_mcookie_version"
|
||||
foreach f [lsort [concat [array names file_arr] [list foo empty anotherempty]]] {
|
||||
set entry {}
|
||||
switch -glob -- $f {
|
||||
@@ -363,7 +363,7 @@ change_file_perms $mp1/quxc/1.0~ $no_orx_perms
|
||||
change_file_perms $mp1/.svn $no_orx_perms
|
||||
change_file_perms $mp1/.sos/ignmod $no_orx_perms
|
||||
|
||||
set tscachewin2 "#%Module$major_minor_rel"
|
||||
set tscachewin2 "#%Module$cache_mcookie_version"
|
||||
foreach f [lsort [array names file_arr]] {
|
||||
set entry {}
|
||||
switch -- $f {
|
||||
|
||||
@@ -147,7 +147,7 @@ file delete $mp1cache
|
||||
|
||||
# tests with a cache containing only few elements
|
||||
set fid [open $mp1cache w]
|
||||
puts $fid "#%Module$::major_minor_rel
|
||||
puts $fid "#%Module$::cache_mcookie_version
|
||||
modulefile-content bar/1.0 1664035017 #%Module #%Module"
|
||||
close $fid
|
||||
testouterr_cmd sh {avail -a -t -o } OK bar/1.0
|
||||
@@ -228,7 +228,7 @@ file delete $mp1cache
|
||||
|
||||
# tests with a cache containing element that does not exists anymore in modulepath
|
||||
set fid [open $mp1cache w]
|
||||
puts $fid "#%Module$::major_minor_rel
|
||||
puts $fid "#%Module$::cache_mcookie_version
|
||||
modulefile-content bar/5.0 1664035017 #%Module #%Module"
|
||||
close $fid
|
||||
testouterr_cmd sh {avail -a -t -o } OK bar/5.0
|
||||
|
||||
@@ -33,7 +33,7 @@ array set other_file_arr $other_file_list
|
||||
|
||||
# create cache file for mp1 that supersedes command definition
|
||||
set fid [open $mp1cache w]
|
||||
puts $fid "#%Module$major_minor_rel
|
||||
puts $fid "#%Module$cache_mcookie_version
|
||||
modulefile-content foo/1.0 {} {#%Module} {#%Module}
|
||||
modulerc-content foo/.modulerc {#%Module} {#%Module}
|
||||
proc modulefile-content {args} {}
|
||||
@@ -57,12 +57,12 @@ testouterr_cmd sh {avail -t} OK $tserr
|
||||
|
||||
# test local variables and procedures are not propagated to the next evaluation
|
||||
set fid [open $mp1cache w]
|
||||
puts $fid "#%Module$major_minor_rel
|
||||
puts $fid "#%Module$cache_mcookie_version
|
||||
proc foo {args} {}
|
||||
set bar val"
|
||||
close $fid
|
||||
set fid [open $mp2cache w]
|
||||
puts $fid "#%Module$major_minor_rel
|
||||
puts $fid "#%Module$cache_mcookie_version
|
||||
if {\[llength \[info procs foo\]\]} {
|
||||
modulefile-content foo/1.0 {} {#%Module} {#%Module}
|
||||
}
|
||||
@@ -77,7 +77,7 @@ testouterr_cmd sh {avail -t} OK {}
|
||||
|
||||
# test a cachefile overriding basic Tcl command
|
||||
set fid [open $mp1cache w]
|
||||
puts $fid "#%Module$major_minor_rel
|
||||
puts $fid "#%Module$cache_mcookie_version
|
||||
proc set {args} {}"
|
||||
close $fid
|
||||
set tserr [msg_create $mp2cache]
|
||||
|
||||
@@ -39,7 +39,7 @@ setenv_var MODULEPATH $mp1
|
||||
|
||||
# cache with an unknown command
|
||||
set fid [open $mp1cache w]
|
||||
puts $fid "#%Module$major_minor_rel
|
||||
puts $fid "#%Module$cache_mcookie_version
|
||||
modulefile-content foo/1.0 1000000000 #%Module {#%Module
|
||||
module-whatis foo/1.0
|
||||
setenv FOO 1}
|
||||
@@ -83,7 +83,7 @@ testouterr_cmd sh {load bar/2.0} $ans_load2 $cacheerr
|
||||
|
||||
# cache with a command with bad args
|
||||
set fid [open $mp1cache w]
|
||||
puts $fid "#%Module$major_minor_rel
|
||||
puts $fid "#%Module$cache_mcookie_version
|
||||
modulefile-content foo/1.0 1000000000 #%Module {#%Module
|
||||
module-whatis foo/1.0
|
||||
setenv FOO 1}
|
||||
@@ -109,7 +109,7 @@ testouterr_cmd sh {load bar/2.0} $ans_load2 $cacheerr
|
||||
|
||||
# cache with unbalanced curly brace
|
||||
set fid [open $mp1cache w]
|
||||
puts $fid "#%Module$major_minor_rel
|
||||
puts $fid "#%Module$cache_mcookie_version
|
||||
modulefile-content foo/1.0 1000000000 #%Module {#%Module
|
||||
module-whatis foo/1.0
|
||||
setenv FOO 1}
|
||||
@@ -135,7 +135,7 @@ testouterr_cmd_re sh {load bar/2.0} $ans_load2 $cacheerr
|
||||
|
||||
# cache with unbalanced quote
|
||||
set fid [open $mp1cache w]
|
||||
puts $fid "#%Module$major_minor_rel
|
||||
puts $fid "#%Module$cache_mcookie_version
|
||||
modulefile-content foo/1.0 1000000000 #%Module {#%Module
|
||||
module-whatis foo/1.0
|
||||
setenv FOO 1}
|
||||
@@ -162,7 +162,7 @@ testouterr_cmd_re sh {load bar/2.0} $ans_load2 $cacheerr
|
||||
|
||||
# duplicate modulefile and modulerc entries
|
||||
set fid [open $mp1cache w]
|
||||
puts $fid "#%Module$major_minor_rel
|
||||
puts $fid "#%Module$cache_mcookie_version
|
||||
modulefile-content foo/1.0 1000000000 #%Module {#%Module
|
||||
module-whatis foo/1.0
|
||||
setenv FOO 1}
|
||||
|
||||
Reference in New Issue
Block a user