ts: add getvariant --return-value tests in 50/472

This commit is contained in:
Xavier Delaruelle
2021-10-13 06:52:43 +02:00
parent 059bac5024
commit 455499bccd
2 changed files with 153 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
#%Module
if {![info exists env(TESTSUITE_GETVARIANT)] || $env(TESTSUITE_GETVARIANT) ne {return1}} {
variant foo val1 val2 val3
}
if {[info exists env(TESTSUITE_GETVARIANT)]} {
switch -- $env(TESTSUITE_GETVARIANT) {
toomany1 {
setenv testsuite [getvariant foo {} other]
}
toomany2 {
setenv testsuite [getvariant --return-value foo {} other]
}
toofew1 {
setenv testsuite [getvariant]
}
toofew2 {
setenv testsuite [getvariant --return-value]
}
misplaced1 {
setenv testsuite [getvariant foo --return-value]
}
misplaced2 {
setenv testsuite [getvariant foo bar --return-value]
}
return1 {
setenv testsuite [getvariant --return-value foo bar]
}
return2 {
setenv testsuite [getvariant --return-value foo]
}
}
}

View File

@@ -173,6 +173,125 @@ testouterr_cmd_re sh {test variant/5.0 foo=val1 b?r\ =} OK $tserr
# see 70/375
#
# --return-value test
#
set module variant/5.1
set modulefile $mp/$module
set modulefilere $mpre/$module
setenv_var TESTSUITE_GETVARIANT toomany1
set tserr [msg_load $module{foo=val1} [msg_moderr {wrong # args: should be "getvariant ?--return-value? name ?valifundef?"} {getvariant foo {} other} $modulefile 10]]
testouterr_cmd sh "load $module foo=val1" ERR $tserr
set tserr "$modlin
$modulefilere:
variant\\s*foo\\s*val1 val2 val3
[escre [msg_moderr {wrong # args: should be "getvariant ?--return-value? name ?valifundef?"} {getvariant foo {} other} $modulefile 10 { }]]
$modlin"
testouterr_cmd_re sh "display $module foo=val1" ERR $tserr
setenv_var TESTSUITE_GETVARIANT toomany2
set tserr [msg_load $module{foo=val1} [msg_moderr {wrong # args: should be "getvariant ?--return-value? name ?valifundef?"} {getvariant --return-value foo {} other} $modulefile 13]]
testouterr_cmd sh "load $module foo=val1" ERR $tserr
set tserr "$modlin
$modulefilere:
variant\\s*foo\\s*val1 val2 val3
[escre [msg_moderr {wrong # args: should be "getvariant ?--return-value? name ?valifundef?"} {getvariant --return-value foo {} other} $modulefile 13 { }]]
$modlin"
testouterr_cmd_re sh "display $module foo=val1" ERR $tserr
setenv_var TESTSUITE_GETVARIANT toofew1
set tserr [msg_load $module{foo=val1} [msg_moderr {wrong # args: should be "getvariant ?--return-value? name ?valifundef?"} {getvariant} $modulefile 16]]
testouterr_cmd sh "load $module foo=val1" ERR $tserr
set tserr "$modlin
$modulefilere:
variant\\s*foo\\s*val1 val2 val3
[escre [msg_moderr {wrong # args: should be "getvariant ?--return-value? name ?valifundef?"} {getvariant} $modulefile 16 { }]]
$modlin"
testouterr_cmd_re sh "display $module foo=val1" ERR $tserr
setenv_var TESTSUITE_GETVARIANT toofew2
set ans [list]
lappend ans [list set __MODULES_LMVARIANT {variant/5.1&foo|val1|0|0}]
lappend ans [list set _LMFILES_ $mp/variant/5.1]
lappend ans [list set LOADEDMODULES variant/5.1]
lappend ans [list set testsuite {}]
testouterr_cmd sh "load $module foo=val1" $ans {}
set tserr "$modlin
$modulefilere:
variant\\s*foo\\s*val1 val2 val3
setenv\\s*testsuite {--return-value}
$modlin"
testouterr_cmd_re sh "display $module foo=val1" OK $tserr
setenv_var TESTSUITE_GETVARIANT misplaced1
set ans [list]
lappend ans [list set __MODULES_LMVARIANT {variant/5.1&foo|val1|0|0}]
lappend ans [list set _LMFILES_ $mp/variant/5.1]
lappend ans [list set LOADEDMODULES variant/5.1]
lappend ans [list set testsuite {val1}]
testouterr_cmd sh "load $module foo=val1" $ans {}
set tserr "$modlin
$modulefilere:
variant\\s*foo\\s*val1 val2 val3
setenv\\s*testsuite {foo}
$modlin"
testouterr_cmd_re sh "display $module foo=val1" OK $tserr
setenv_var TESTSUITE_GETVARIANT misplaced2
set tserr [msg_load $module{foo=val1} [msg_moderr {wrong # args: should be "getvariant ?--return-value? name ?valifundef?"} {getvariant foo bar --return-value} $modulefile 25]]
testouterr_cmd sh "load $module foo=val1" ERR $tserr
set tserr "$modlin
$modulefilere:
variant\\s*foo\\s*val1 val2 val3
[escre [msg_moderr {wrong # args: should be "getvariant ?--return-value? name ?valifundef?"} {getvariant foo bar --return-value} $modulefile 25 { }]]
$modlin"
testouterr_cmd_re sh "display $module foo=val1" ERR $tserr
setenv_var TESTSUITE_GETVARIANT return1
set ans [list]
lappend ans [list set _LMFILES_ $mp/variant/5.1]
lappend ans [list set LOADEDMODULES variant/5.1]
lappend ans [list set testsuite {bar}]
testouterr_cmd sh "load $module" $ans {}
set tserr "$modlin
$modulefilere:
setenv\\s*testsuite bar
$modlin"
testouterr_cmd_re sh "display $module" OK $tserr
setenv_var TESTSUITE_GETVARIANT return2
set ans [list]
lappend ans [list set __MODULES_LMVARIANT {variant/5.1&foo|val1|0|0}]
lappend ans [list set _LMFILES_ $mp/variant/5.1]
lappend ans [list set LOADEDMODULES variant/5.1]
lappend ans [list set testsuite val1]
testouterr_cmd sh "load $module foo=val1" $ans {}
set tserr "$modlin
$modulefilere:
variant\\s*foo\\s*val1 val2 val3
setenv\\s*testsuite val1
$modlin"
testouterr_cmd_re sh "display $module foo=val1" OK $tserr
#
# Cleanup
#