Skip to content

Commit 3a8a249

Browse files
committed
ts: test specific vars/cmds hooks in 50/560
1 parent 997d79a commit 3a8a249

File tree

7 files changed

+616
-0
lines changed

7 files changed

+616
-0
lines changed

testsuite/example/siteconfig.tcl-1

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -452,4 +452,97 @@ if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_PWDERROR)]} {
452452
}
453453
}
454454

455+
# extra modulefile/modulerc command and variable tests
456+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_ODD)]} {
457+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_ODD) {
458+
cmd {set modulefile_extra_cmds [list mycmd]}
459+
rc_cmd {set modulerc_extra_cmds [list mycmd]}
460+
var {set modulefile_extra_vars [list myvar]}
461+
rc_var {set modulerc_extra_vars [list myvar]}
462+
}
463+
}
464+
465+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_EMPTYDEF)]} {
466+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_EMPTYDEF) {
467+
cmd {set modulefile_extra_cmds [list]}
468+
rc_cmd {set modulerc_extra_cmds {}}
469+
var {set modulefile_extra_vars {}}
470+
rc_var {set modulerc_extra_vars [list]}
471+
}
472+
}
473+
474+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_EMPTYVAL)]} {
475+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_EMPTYVAL) {
476+
cmd {set modulefile_extra_cmds [list mycmd {}]}
477+
rc_cmd {set modulerc_extra_cmds [list mycmd {}]}
478+
var {set modulefile_extra_vars [list myvar {}]}
479+
rc_var {set modulerc_extra_vars [list myvar {}]}
480+
}
481+
}
482+
483+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_UNK)]} {
484+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_UNK) {
485+
cmd {set modulefile_extra_cmds [list mycmd unkproc]}
486+
rc_cmd {set modulerc_extra_cmds [list mycmd unkproc]}
487+
}
488+
}
489+
490+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SUPERSEDE)]} {
491+
proc myproc1 {args} {
492+
return myproc1
493+
}
494+
proc myproc2 {args} {
495+
return myproc2
496+
}
497+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SUPERSEDE) {
498+
cmd {set modulefile_extra_cmds [list uname myproc1 pid myproc2]}
499+
rc_cmd {set modulerc_extra_cmds [list uname myproc1 pid myproc2]}
500+
var {set modulefile_extra_vars [list ModuleTool super ModulesCurrentModulefile myfile]}
501+
rc_var {set modulerc_extra_vars [list ModuleTool super ModulesCurrentModulefile myfile]}
502+
}
503+
}
504+
505+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINVAL)]} {
506+
proc {my proc1} {args} {
507+
return myproc1
508+
}
509+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINVAL) {
510+
cmd {set modulefile_extra_cmds [list mycmd {my proc1}]}
511+
rc_cmd {set modulerc_extra_cmds [list mycmd {my proc1}]}
512+
}
513+
}
514+
515+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINNAME)]} {
516+
proc myproc1 {args} {
517+
return myproc1
518+
}
519+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINNAME) {
520+
cmd {set modulefile_extra_cmds [list {my cmd} myproc1]}
521+
rc_cmd {set modulerc_extra_cmds [list {my cmd} myproc1]}
522+
var {set modulefile_extra_vars [list {my var} value]}
523+
rc_var {set modulerc_extra_vars [list {my var} value]}
524+
}
525+
}
526+
527+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_REGULAR)]} {
528+
proc mycmd {args} {
529+
return myproc1
530+
}
531+
proc mycmd2 {args} {
532+
return myproc2
533+
}
534+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_REGULAR) {
535+
cmd {set modulefile_extra_cmds [list mycmd mycmd othercmd mycmd2]}
536+
rc_cmd {set modulerc_extra_cmds [list mycmd mycmd othercmd mycmd2]}
537+
var {set modulefile_extra_vars [list myvar {my value} othervar value]}
538+
rc_var {set modulerc_extra_vars [list myvar {my value} othervar value]}
539+
mix - override {
540+
set modulefile_extra_cmds [list mycmd mycmd othercmd mycmd2]
541+
set modulerc_extra_cmds [list mycmd mycmd othercmd mycmd2]
542+
set modulefile_extra_vars [list myvar value]
543+
set modulerc_extra_vars [list myvar value]
544+
}
545+
}
546+
}
547+
455548
}

testsuite/modulefiles.3/.modulerc

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,3 +55,13 @@ if {[info exists env(TESTSUITE_VARIANT)]} {
5555
}
5656
}
5757
}
58+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_REGULAR)]} {
59+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_REGULAR) {
60+
override {
61+
proc myproc1 {} {
62+
return override
63+
}
64+
set myvar override
65+
}
66+
}
67+
}
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
#%Module
2+
3+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_ODD)]} {
4+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_ODD) {
5+
rc_cmd {module-version interp/1 [mycmd]}
6+
rc_var {module-version interp/1 $myvar}
7+
}
8+
}
9+
10+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_EMPTYVAL)]} {
11+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_EMPTYVAL) {
12+
rc_cmd {module-version interp/1 [mycmd]}
13+
rc_var {module-version interp/1 empty$myvar}
14+
}
15+
}
16+
17+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_UNK)]} {
18+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_UNK) {
19+
rc_cmd {module-version interp/1 [mycmd]}
20+
}
21+
}
22+
23+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SUPERSEDE)]} {
24+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SUPERSEDE) {
25+
rc_cmd {module-version interp/1 [uname machine] [pid]}
26+
rc_var {module-version interp/1 $ModuleTool [file tail $ModulesCurrentModulefile]}
27+
}
28+
}
29+
30+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINVAL)]} {
31+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINVAL) {
32+
rc_cmd {module-version interp/1 [mycmd]}
33+
}
34+
}
35+
36+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINNAME)]} {
37+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINNAME) {
38+
rc_cmd {module-version interp/1 [my\ cmd]}
39+
rc_var {module-version interp/1 $my\ var}
40+
}
41+
}
42+
43+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_REGULAR)]} {
44+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_REGULAR) {
45+
rc_cmd {module-version interp/1 [mycmd] [othercmd]}
46+
rc_var {module-version interp/1 $myvar $othervar}
47+
mix - override {module-version interp/1 [mycmd] $myvar}
48+
}
49+
}

testsuite/modulefiles.3/interp/0

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#%Module
2+
3+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_REGULAR)]} {
4+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_REGULAR) {
5+
override {
6+
proc mycmd {} {
7+
return override
8+
}
9+
proc mycmd2 {} {
10+
return override
11+
}
12+
set myvar override
13+
setenv BAR [mycmd]-[othercmd]-${myvar}
14+
proc ModulesHelp {} {
15+
puts stderr [mycmd]-[othercmd]-${::myvar}
16+
}
17+
proc ModulesTest {} {
18+
puts stderr [mycmd]-[othercmd]-${::myvar}
19+
return 1
20+
}
21+
}
22+
}
23+
}

testsuite/modulefiles.3/interp/1

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
#%Module
2+
3+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_ODD)]} {
4+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_ODD) {
5+
cmd {setenv FOO [mycmd]}
6+
var {setenv FOO $myvar}
7+
}
8+
}
9+
10+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_EMPTYVAL)]} {
11+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_EMPTYVAL) {
12+
cmd {setenv FOO [mycmd]}
13+
var {setenv FOO $myvar}
14+
}
15+
}
16+
17+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_UNK)]} {
18+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_UNK) {
19+
cmd {setenv FOO [mycmd]}
20+
}
21+
}
22+
23+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SUPERSEDE)]} {
24+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SUPERSEDE) {
25+
cmd {setenv FOO [uname machine]-[pid]}
26+
var {setenv FOO ${ModuleTool}-[file tail $ModulesCurrentModulefile]}
27+
}
28+
}
29+
30+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINVAL)]} {
31+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINVAL) {
32+
cmd {setenv FOO [mycmd]}
33+
}
34+
}
35+
36+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINNAME)]} {
37+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_SPACEINNAME) {
38+
cmd {setenv FOO [my\ cmd]}
39+
var {setenv FOO $my\ var}
40+
}
41+
}
42+
43+
if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_REGULAR)]} {
44+
switch -- $env(TESTSUITE_ENABLE_SITECONFIG_EXTRA_REGULAR) {
45+
cmd {setenv FOO [mycmd]-[othercmd]}
46+
var {setenv FOO ${myvar}-${othervar}}
47+
mix - override {
48+
setenv FOO [mycmd]-[othercmd]-${myvar}
49+
module-whatis [mycmd]-[othercmd]-${myvar}
50+
set-alias [mycmd] "echo [othercmd]-$myvar"
51+
proc ModulesHelp {} {
52+
puts stderr [mycmd]-[othercmd]-${::myvar}
53+
}
54+
proc ModulesTest {} {
55+
puts stderr [mycmd]-[othercmd]-${::myvar}
56+
return 1
57+
}
58+
}
59+
}
60+
}

testsuite/modulefiles.3/interp/2

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
#%Module

0 commit comments

Comments
 (0)