From 644bdef55bb324c6d3b51038018d5a0d2d1557c9 Mon Sep 17 00:00:00 2001 From: Xavier Delaruelle Date: Thu, 14 May 2026 22:05:11 +0200 Subject: [PATCH] Improve column output performances MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Improve the performance of the module’s column output by removing the costly optimization that attempts to fit more columns within the available screen width. As a result in some situations, module list or module avail may now have an output a little less dense. This new grid output is exactly the same as the one from the "ls" command. Output performances are clearly improved. On "avail4" test case of script/mb utility, a "module avail" over 962 modulefiles takes 47 ms instead of 73 ms (-35% elapsed time). Closes #622 Signed-off-by: Xavier Delaruelle --- NEWS.rst | 3 + tcl/report.tcl.in | 166 ++--- tcl/subcmd.tcl.in | 6 +- testsuite/example/siteconfig.tcl-1 | 11 +- testsuite/modules.00-init/120-siteconfig.exp | 64 +- testsuite/modules.00-init/140-color.exp | 32 +- testsuite/modules.20-locate/060-rc.exp | 4 +- testsuite/modules.20-locate/090-memcache.exp | 14 +- testsuite/modules.20-locate/100-wspace.exp | 56 +- testsuite/modules.50-cmds/083-info-mode.exp | 2 +- .../modules.50-cmds/084-info-mode-exp.exp | 2 +- .../modules.50-cmds/152-module-emptyarg.exp | 2 +- testsuite/modules.50-cmds/260-getenv.exp | 4 +- .../modules.50-cmds/281-info-modulerc.exp | 4 +- testsuite/modules.50-cmds/440-module-tag.exp | 10 +- testsuite/modules.50-cmds/465-tag-opt.exp | 4 +- testsuite/modules.50-cmds/467-keep-loaded.exp | 8 +- testsuite/modules.50-cmds/530-module-list.exp | 34 +- .../modules.50-cmds/570-modulepath-label.exp | 32 +- .../020-avail_output-variant.exp | 98 +-- .../021-avail_output-variant-sgr.exp | 661 +++++++++--------- testsuite/modules.61-coll/020-savelist.exp | 4 +- .../modules.61-coll/021-savelist-search.exp | 30 +- testsuite/modules.70-maint/040-list.exp | 106 +-- .../274-adv_version_spec-autosym.exp | 18 +- testsuite/modules.70-maint/280-ml.exp | 4 +- testsuite/modules.70-maint/320-tags.exp | 28 +- testsuite/modules.70-maint/321-tag_abbrev.exp | 42 +- testsuite/modules.70-maint/322-tag-sgr.exp | 40 +- testsuite/modules.70-maint/340-output-key.exp | 92 +-- testsuite/modules.70-maint/350-term_width.exp | 341 ++++----- .../modules.70-maint/360-avail_output.exp | 349 ++++----- .../modules.70-maint/361-list_output.exp | 54 +- .../modules.70-maint/362-spider_output.exp | 389 ++++++----- testsuite/modules.70-maint/370-variant.exp | 166 ++--- .../modules.70-maint/377-variant-shortcut.exp | 24 +- .../modules.70-maint/400-list-search.exp | 42 +- testsuite/modules.70-maint/455-stashlist.exp | 8 +- .../modules.70-maint/457-stash-savelist.exp | 20 +- testsuite/modules.90-avail/020-single.exp | 14 +- testsuite/modules.90-avail/030-multiple.exp | 24 +- testsuite/modules.90-avail/070-full.exp | 338 ++++----- testsuite/modules.90-avail/100-tags.exp | 42 +- .../modules.92-spider/020-spider-single.exp | 12 +- .../modules.92-spider/030-spider-multiple.exp | 26 +- .../modules.92-spider/070-spider-full.exp | 478 ++++++------- .../modules.92-spider/100-spider-tags.exp | 42 +- 47 files changed, 1970 insertions(+), 1980 deletions(-) diff --git a/NEWS.rst b/NEWS.rst index 27e204b00..bec05677c 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -70,6 +70,9 @@ Modules 5.7.0 (not yet released) :mconfig:`non_exportable_tags` is changed with :subcmd:`config` sub-command, it sets the :envvar:`MODULES_NON_EXPORTABLE_TAGS` environment variable. (fix issue #608) +* Improve the performance of the module’s column output by removing the costly + optimization that attempts to fit more columns within the available screen + width. (fix issue #622) .. _5.6 release notes: diff --git a/tcl/report.tcl.in b/tcl/report.tcl.in index 5ab5ba01c..bf3a1fbe7 100644 --- a/tcl/report.tcl.in +++ b/tcl/report.tcl.in @@ -1590,7 +1590,6 @@ proc reportModules {search_queries header hsgrkey hstyle show_mtime show_idx\ } set len_list {} - set max_len 0 # dictionary-sort results unless if output order is specified if {![llength $mod_list_order]} { set clean_list [lsort -dictionary $clean_list] @@ -1607,9 +1606,6 @@ proc reportModules {search_queries header hsgrkey hstyle show_mtime show_idx\ # compute display element length list on sorted result lappend display_list $sgrmap($disp) lappend len_list $lenmap($disp) - if {$lenmap($disp) > $max_len} { - set max_len $lenmap($disp) - } } } @@ -1622,7 +1618,7 @@ proc reportModules {search_queries header hsgrkey hstyle show_mtime show_idx\ # output formatted elements displayElementList $header $hsgrkey $hstyle $one_per_line $show_idx 1\ - $display_list $len_list $max_len $via + $display_list $len_list $via } proc showModulePath {} { @@ -1667,10 +1663,10 @@ proc displaySeparatorLine {{title {}} {sgrkey {}} {extra {}}} { # get a list of elements and print them in a column or in a # one-per-line fashion proc displayElementList {header sgrkey hstyle one_per_line display_idx\ - start_idx display_list {len_list {}} {max_len 0} {via {}}} { + start_idx display_list {len_list {}} {via {}}} { set elt_cnt [llength $display_list] reportDebug "header=$header, sgrkey=$sgrkey, hstyle=$hstyle,\ - elt_cnt=$elt_cnt, max_len=$max_len, one_per_line=$one_per_line,\ + elt_cnt=$elt_cnt, one_per_line=$one_per_line,\ display_idx=$display_idx, start_idx=$start_idx, via=$via" # end proc if no element are to print @@ -1716,97 +1712,10 @@ proc displayElementList {header sgrkey hstyle one_per_line display_idx\ # save room for numbers and spacing: 2 or 3 digits + ) + space set elt_prefix_len [expr {$display_idx ? $idx_len + 2 : {0}}] # save room for two spaces after element - set elt_suffix_len 2 - - # compute rows*cols grid size with optimized column number - # the size of each column is computed to display as much column - # as possible on each line - incr max_len $elt_suffix_len - foreach len $len_list { - lappend elt_len [incr len $elt_suffix_len] - } - set tty_cols [getState term_columns] - # find valid grid by starting with non-optimized solution where each - # column length is equal to the length of the biggest element to display - set cur_cols [tcl::mathfunc::max [expr {int(($tty_cols - \ - $elt_prefix_len) / $max_len)}] 0] - # when display is found too short to display even one column - if {$cur_cols == 0} { - set cols 1 - set rows $elt_cnt - array set col_width [list 0 $max_len] - } else { - set cols 0 - set rows 0 - } - set last_round 0 - set restart_loop 0 - while {$cur_cols > $cols} { - if {!$restart_loop} { - if {$last_round} { - incr cur_rows - } else { - set cur_rows [expr {int(ceil(double($elt_cnt) / $cur_cols))}] - } - for {set i 0} {$i < $cur_cols} {incr i} { - set cur_col_width($i) 0 - } - for {set i 0} {$i < $cur_rows} {incr i} { - set row_width($i) 0 - } - set istart 0 - } else { - ##nagelfar ignore Unknown variable - set istart [expr {$col * $cur_rows}] - # only remove width of elements from current col - for {set row 0} {$row < ($i % $cur_rows)} {incr row} { - ##nagelfar ignore Unknown variable - incr row_width($row) -[expr {$pre_col_width + $elt_prefix_len}] - } - } - set restart_loop 0 - for {set i $istart} {$i < $elt_cnt} {incr i} { - set col [expr {int($i / $cur_rows)}] - set row [expr {$i % $cur_rows}] - # restart loop if a column width change - if {[lindex $elt_len $i] > $cur_col_width($col)} { - set pre_col_width $cur_col_width($col) - set cur_col_width($col) [lindex $elt_len $i] - set restart_loop 1 - break - } - # end search of maximum number of columns if computed row width - # is larger than terminal width - if {[incr row_width($row) +[expr {$cur_col_width($col) \ - + $elt_prefix_len}]] > $tty_cols} { - # start last optimization pass by increasing row number until - # reaching number used for previous column number, by doing so - # this number of column may pass in terminal width, if not - # fallback to previous number of column - if {$last_round && $cur_rows == $rows} { - incr cur_cols -1 - } else { - set last_round 1 - } - break - } - } - # went through all elements without reaching terminal width limit so - # this number of column solution is valid, try next with a greater - # column number - if {$i == $elt_cnt} { - set cols $cur_cols - set rows $cur_rows - array set col_width [array get cur_col_width] - # number of column is fixed if last optimization round has started - # reach end also if there is only one row of results - if {!$last_round && $rows > 1} { - incr cur_cols - } - } - } + lassign [compute_output_grid $tty_cols $len_list $elt_prefix_len] rows\ + cols cols_width reportDebug list=$display_list reportDebug "rows/cols=$rows/$cols,\ lastcol_item_cnt=[expr {int($elt_cnt % $rows)}]" @@ -1821,7 +1730,8 @@ proc displayElementList {header sgrkey hstyle one_per_line display_idx\ } # cannot use 'format' as strings may contain SGR codes append displist [lindex $display_list $index][string repeat\ - { } [expr {$col_width($col) - [lindex $len_list $index]}]] + { } [expr {[lindex $cols_width $col] - [lindex $len_list\ + $index] - $elt_prefix_len}]] } } append displist \n @@ -1834,6 +1744,58 @@ proc displayElementList {header sgrkey hstyle one_per_line display_idx\ reportSeparateNextContent } +# returns rows, cols and each col width of the output grid with most cols +proc compute_output_grid {out_width len_list prefix_len} { + set col_sepa_len 2 + set elt_count [llength $len_list] + if {!$elt_count} { + return {0 0 {0}} + } + + # start with max possible columns guessed from shortest element in list + set min_len [tcl::mathfunc::min {*}$len_list] + set col_min [expr {$prefix_len + $min_len + $col_sepa_len}] + # exact same output with 1 elt to print whether width is tiny or large + set max_cols [tcl::mathfunc::min $elt_count\ + [expr {int(floor(double($out_width) / $col_min))}]] + + for {set cols $max_cols} {$cols > 1} {incr cols -1} { + set rows [expr {int(ceil(double($elt_count) / $cols))}] + set cols_width {} + + # compute width of each column (max length among elements in that col) + for {set c 0} {$c < $cols} {incr c} { + set idx_first [expr {$c * $rows}] + set idx_last [expr {$idx_first + $rows - 1}] + # stop when no more element for available columns + if {$idx_first >= $elt_count} { + break + } + set col_max [tcl::mathfunc::max {*}[lrange $len_list $idx_first\ + $idx_last]] + set col_width [expr {$prefix_len + $col_max}] + # column separator suffix is not added on last column + if {($c + 1) < $cols && ($idx_last + 1) < $elt_count} { + incr col_width $col_sepa_len + } + lappend cols_width $col_width + + # immediately try fewer columns if we already exceed output grid + if {[tcl::mathop::+ {*}$cols_width] > $out_width} { + break + } + } + + # ff it fits, this is the maximum cols possible + if {[tcl::mathop::+ {*}$cols_width] <= $out_width} { + return [list $rows $cols $cols_width] + } + } + + # fits in 1 column + return [list $elt_count 1 {0}] +} + # Report an output key to help understand what the SGR used on this output # correspond to proc displayKey {} { @@ -1936,19 +1898,11 @@ proc displayKey {} { } } - # find largest element - set max_len 0 - foreach len $len_list { - if {$len > $max_len} { - set max_len $len - } - } - if {[llength $display_list]} { # display header report Key: # display key content - displayElementList noheader {} {} 0 0 0 $display_list $len_list $max_len + displayElementList noheader {} {} 0 0 0 $display_list $len_list } } diff --git a/tcl/subcmd.tcl.in b/tcl/subcmd.tcl.in index 360860aa9..0bf9ad1cd 100644 --- a/tcl/subcmd.tcl.in +++ b/tcl/subcmd.tcl.in @@ -927,7 +927,6 @@ proc cmdModuleSavelist {show_oneperline show_mtime search_match args} { } set display_list {} set len_list {} - set max_len 0 set one_per_line [expr {$show_mtime || $show_oneperline}] set show_idx [expr {!$one_per_line}] # prepare query to highlight @@ -948,15 +947,12 @@ proc cmdModuleSavelist {show_oneperline show_mtime search_match args} { } else { lappend display_list $collsgr lappend len_list [set len [string length $coll]] - if {$len > $max_len} { - set max_len $len - } } } } displayElementList noheader {} {} $one_per_line $show_idx $start_idx\ - $display_list $len_list $max_len + $display_list $len_list } } diff --git a/testsuite/example/siteconfig.tcl-1 b/testsuite/example/siteconfig.tcl-1 index 57e1f5270..32a89c582 100644 --- a/testsuite/example/siteconfig.tcl-1 +++ b/testsuite/example/siteconfig.tcl-1 @@ -44,15 +44,11 @@ if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_TRICKYLISTDISP)]} { # set a specific terminal column number to fall in tricky condition set orig_term_columns [getState term_columns] setState term_columns 80 - set max_len 0 foreach elt [list abc/def abcdefgh/ijklmnop abc/defg abcd/ef abc/defg-hijkl.mn.op abcdefgh/ijklm.nopqrst abcdefg/hijklmnop-qr.st.uvw abcdefgh/ijklmnopqrst-u-vwxy.zA-BCD-E abcdef/ghijklm-nopq.r_st.uv abcdefgh/ijklmnop-q-rstu.vw-xyz-A abcdefg/hijklmn-op.qr.stu abcdefg/hijkl-mn.op.qrs abcd/efgh-ij.k abcdefg/hijk-lmnop_qr.st.uvw abcdef/ghijklmno-p.q.r abcdefgh/ijklmn-o-pqrs.tu abcdefgh/ijklmnop-q-rstu.vw-xyz abcdefg/hij-klm.nopq abcdefg/hij-kl.mn.opq abcdefgh/ijklmnopq_rstuv-w-xyzA.BC-DEF abcdefgh/ijklmnopqrstuv-w-xyzA.BC abcdefgh/ij-k-lmno.pq abcdefgh/ijk-l-mnop.qr-stu abcdefgh/ijklmnop-qr.st abcdef/ghijklmno-pq.rs abcdef/ghi-jklm_no_pqrstuv abcdefgh/ijk-lm-n-opqr.st abcdefgh/ijklm-n-opqr.st-uvw abcdef/ghijklm-nopq_r abcdefg/hijkl-mn.op.qzs abcdefg/hijklmn-op.qr.stz abcdefgh/ijklmn] { lappend display_list $elt lappend len_list [string length $elt] - if {[string length $elt] > $max_len} { - set max_len [string length $elt] - } } - displayElementList test {} terse 0 1 1 $display_list $len_list $max_len + displayElementList test {} terse 0 1 1 $display_list $len_list setState term_columns $orig_term_columns } @@ -701,4 +697,9 @@ if {[info exists env(TESTSUITE_ENABLE_RUNENVCOMMAND_UNSET)]} { } } +# specific tests to improve compute_output_grid coverage +if {[info exists env(TESTSUITE_ENABLE_SITECONFIG_COMPUTEOUTPUTGRID)]} { + report [compute_output_grid 80 {} 3] +} + } diff --git a/testsuite/modules.00-init/120-siteconfig.exp b/testsuite/modules.00-init/120-siteconfig.exp index 1eb2ee6ea..387c5a75a 100644 --- a/testsuite/modules.00-init/120-siteconfig.exp +++ b/testsuite/modules.00-init/120-siteconfig.exp @@ -217,27 +217,38 @@ unset env(TESTSUITE_ENABLE_SITECONFIG_TERSENUM) # test displayElementList procedure with a tricky list that triggers unusual condition setenv_var TESTSUITE_ENABLE_SITECONFIG_TRICKYLISTDISP 1 set ans "test: - 1\\) abc/def 22\\) abcdefgh/ij-k-lmno.pq - 2\\) abcdefgh/ijklmnop 23\\) abcdefgh/ijk-l-mnop.qr-stu - 3\\) abc/defg 24\\) abcdefgh/ijklmnop-qr.st - 4\\) abcd/ef 25\\) abcdef/ghijklmno-pq.rs - 5\\) abc/defg-hijkl.mn.op 26\\) abcdef/ghi-jklm_no_pqrstuv - 6\\) abcdefgh/ijklm.nopqrst 27\\) abcdefgh/ijk-lm-n-opqr.st - 7\\) abcdefg/hijklmnop-qr.st.uvw 28\\) abcdefgh/ijklm-n-opqr.st-uvw - 8\\) abcdefgh/ijklmnopqrst-u-vwxy.zA-BCD-E 29\\) abcdef/ghijklm-nopq_r - 9\\) abcdef/ghijklm-nopq.r_st.uv 30\\) abcdefg/hijkl-mn.op.qzs -10\\) abcdefgh/ijklmnop-q-rstu.vw-xyz-A 31\\) abcdefg/hijklmn-op.qr.stz -11\\) abcdefg/hijklmn-op.qr.stu 32\\) abcdefgh/ijklmn -12\\) abcdefg/hijkl-mn.op.qrs -13\\) abcd/efgh-ij.k -14\\) abcdefg/hijk-lmnop_qr.st.uvw -15\\) abcdef/ghijklmno-p.q.r -16\\) abcdefgh/ijklmn-o-pqrs.tu -17\\) abcdefgh/ijklmnop-q-rstu.vw-xyz -18\\) abcdefg/hij-klm.nopq -19\\) abcdefg/hij-kl.mn.opq -20\\) abcdefgh/ijklmnopq_rstuv-w-xyzA.BC-DEF -21\\) abcdefgh/ijklmnopqrstuv-w-xyzA.BC + 1\\) abc/def + 2\\) abcdefgh/ijklmnop + 3\\) abc/defg + 4\\) abcd/ef + 5\\) abc/defg-hijkl.mn.op + 6\\) abcdefgh/ijklm.nopqrst + 7\\) abcdefg/hijklmnop-qr.st.uvw + 8\\) abcdefgh/ijklmnopqrst-u-vwxy.zA-BCD-E + 9\\) abcdef/ghijklm-nopq.r_st.uv +10\\) abcdefgh/ijklmnop-q-rstu.vw-xyz-A +11\\) abcdefg/hijklmn-op.qr.stu +12\\) abcdefg/hijkl-mn.op.qrs +13\\) abcd/efgh-ij.k +14\\) abcdefg/hijk-lmnop_qr.st.uvw +15\\) abcdef/ghijklmno-p.q.r +16\\) abcdefgh/ijklmn-o-pqrs.tu +17\\) abcdefgh/ijklmnop-q-rstu.vw-xyz +18\\) abcdefg/hij-klm.nopq +19\\) abcdefg/hij-kl.mn.opq +20\\) abcdefgh/ijklmnopq_rstuv-w-xyzA.BC-DEF +21\\) abcdefgh/ijklmnopqrstuv-w-xyzA.BC +22\\) abcdefgh/ij-k-lmno.pq +23\\) abcdefgh/ijk-l-mnop.qr-stu +24\\) abcdefgh/ijklmnop-qr.st +25\\) abcdef/ghijklmno-pq.rs +26\\) abcdef/ghi-jklm_no_pqrstuv +27\\) abcdefgh/ijk-lm-n-opqr.st +28\\) abcdefgh/ijklm-n-opqr.st-uvw +29\\) abcdef/ghijklm-nopq_r +30\\) abcdefg/hijkl-mn.op.qzs +31\\) abcdefg/hijklmn-op.qr.stz +32\\) abcdefgh/ijklmn $vers_reportre" testouterr_cmd_re "sh" "-V" "OK" $ans @@ -666,8 +677,8 @@ lappend ans { invoked from within} lappend ans { "displaySeparatorLine $header $sgrkey $extra"} lappend ans { (procedure "displayElementList" line 19)} lappend ans { invoked from within} -lappend ans { "displayElementList $header $hsgrkey $hstyle $one_per_line $show_idx 1 $display_list $len_list $max_len $via"} -lappend ans { (procedure "reportModules" line 155)} +lappend ans { "displayElementList $header $hsgrkey $hstyle $one_per_line $show_idx 1 $display_list $len_list $via"} +lappend ans { (procedure "reportModules" line 151)} lappend ans { invoked from within} lappend ans { "reportModules $args $dir mp $hstyle $show_mtime 0 $one_per_line $theader_cols hidden-loaded"} lappend ans { (procedure "cmdModuleAvail" line 43)} @@ -766,6 +777,13 @@ lappend ans $vers_reportre testouterr_cmd_re sh -V OK [join $ans \n] unsetenv_var TESTSUITE_ENABLE_RUNENVCOMMAND_UNSET +setenv_var TESTSUITE_ENABLE_SITECONFIG_COMPUTEOUTPUTGRID 1 +set ans [list] +lappend ans {0 0 \{0\}} +lappend ans $vers_reportre +testouterr_cmd_re sh -V OK [join $ans \n] +unsetenv_var TESTSUITE_ENABLE_SITECONFIG_COMPUTEOUTPUTGRID + } elseif {$verbose} { send_user "\tSkip tests relying on an excepted siteconfig file installed\n" } diff --git a/testsuite/modules.00-init/140-color.exp b/testsuite/modules.00-init/140-color.exp index c18250f7b..e9b87fbb8 100644 --- a/testsuite/modules.00-init/140-color.exp +++ b/testsuite/modules.00-init/140-color.exp @@ -464,10 +464,10 @@ unsetenv_var __MODULES_LMALTNAME # highlighted element (hi) on savelist setenv_var HOME $env(HOME)/home -set tserr ".* 1\\) infocmd 2\\) infocmdexp " +set tserr ".* 1\\) infocmd 2\\) infocmdexp" colorset_test_case {savelist info} [list hi info] $tserr 1 set tserr ".* - 1\\) coll1 3\\) coll3 5\\) coll6.target 7\\) infocmdexp + 1\\) coll1 3\\) coll3 5\\) coll6.target 7\\) infocmdexp 2\\) coll2 4\\) coll4.target 6\\) infocmd " colorset_test_case {savelist -w 80 coll info} [list hi coll hi info] $tserr 1 setenv_var HOME $ORIG_HOME @@ -522,29 +522,29 @@ unsetenv_var TESTSUITE_ENABLE_SITECONFIG_TWICEINITCOLORS setenv_path_var MODULEPATH $modpath.2 setenv_var MODULES_ADVANCED_VERSION_SPEC 0 setenv_var MODULES_COLORS {hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:de=4:sy=95} -set tserr "[sgr 95][sgr 1]hide3/sym[sgr 22][sgr 0] +set tserr "[sgr 95][sgr 1]hide3/sym[sgr 22][sgr 0] Key: -[sgr 95]symbolic-version[sgr 0] " +[sgr 95]symbolic-version[sgr 0]" testouterr_cmd_re sh {avail --color=always -o key:indesym hide3/sym} OK $tserr -set tserr "[sgr 1]hide3/sub2[sgr 22]/4.0 -[sgr 1]hide3/sub2[sgr 22]/5.0 -[sgr 95][sgr 1]hide3/sub2[sgr 22]/default[sgr 0] -[sgr 95][sgr 1]hide3/sub2[sgr 22]/new[sgr 0] -[sgr 95][sgr 1]hide3/sub2[sgr 22]/sym[sgr 0] +set tserr "[sgr 1]hide3/sub2[sgr 22]/4.0 +[sgr 1]hide3/sub2[sgr 22]/5.0 +[sgr 95][sgr 1]hide3/sub2[sgr 22]/default[sgr 0] +[sgr 95][sgr 1]hide3/sub2[sgr 22]/new[sgr 0] +[sgr 95][sgr 1]hide3/sub2[sgr 22]/sym[sgr 0] Key: -[sgr 95]symbolic-version[sgr 0] " +[sgr 95]symbolic-version[sgr 0]" testouterr_cmd_re sh {avail -w 20 --color=always -o key:indesym hide3/sub2} OK $tserr testouterr_cmd_re sh {avail -w 20 --color=always -o key:indesym:dirwsym hide3/sub2} OK $tserr -set tserr "[sgr 95][sgr 1]hide3/sub2/default[sgr 22][sgr 0] +set tserr "[sgr 95][sgr 1]hide3/sub2/default[sgr 22][sgr 0] Key: -[sgr 95]symbolic-version[sgr 0] " +[sgr 95]symbolic-version[sgr 0]" testouterr_cmd_re sh {avail --color=always -o key:indesym hide3/sub2/default} OK $tserr # no color definition for symbolic versions setenv_var MODULES_COLORS {hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:de=4} -set tserr "[sgr 1]hide3/sym[sgr 22] " +set tserr "[sgr 1]hide3/sym[sgr 22]" testouterr_cmd_re sh {avail --color=always -o key:indesym hide3/sym} OK $tserr unsetenv_var MODULES_COLORS unsetenv_var MODULES_ADVANCED_VERSION_SPEC @@ -560,17 +560,17 @@ setenv_loaded_module [list foo/1.0] [list $modpath.3/foo/1.0] setenv_var __MODULES_LMALTNAME foo/1.0&foo/bar&foo&al|alfoo #FIXME -set tserr " 1\\) [sgr 96]alfoo[sgr 0] 2\\) foo/1.0[sgr 2]\\([sgr 22][sgr 95]bar[sgr 0][sgr 2]\\)[sgr 22] +set tserr " 1\\) [sgr 96]alfoo[sgr 0] 2\\) foo/1.0[sgr 2]\\([sgr 22][sgr 95]bar[sgr 0][sgr 2]\\)[sgr 22] Key: -[sgr 2]\\([sgr 22][sgr 95]symbolic-version[sgr 0][sgr 2]\\)[sgr 22] [sgr 96]module-alias[sgr 0] " +[sgr 2]\\([sgr 22][sgr 95]symbolic-version[sgr 0][sgr 2]\\)[sgr 22] [sgr 96]module-alias[sgr 0]" testouterr_cmd_re sh {list --color=always -o alias:idx:sym:key} OK $tserr set tserr " 1\\) [sgr 95]foo/bar[sgr 0] 2\\) [sgr 96]alfoo[sgr 0] 3\\) foo/1.0 Key: -[sgr 95]symbolic-version[sgr 0] [sgr 96]module-alias[sgr 0] " +[sgr 95]symbolic-version[sgr 0] [sgr 96]module-alias[sgr 0]" testouterr_cmd_re sh {list --color=always -t -o alias:idx:indesym:sym:key} OK $tserr unsetenv_var __MODULES_LMALTNAME diff --git a/testsuite/modules.20-locate/060-rc.exp b/testsuite/modules.20-locate/060-rc.exp index 46149ef47..9dcd81251 100644 --- a/testsuite/modules.20-locate/060-rc.exp +++ b/testsuite/modules.20-locate/060-rc.exp @@ -44,8 +44,8 @@ set modulefilere_3 "$modpathre/loc_rcv1/.common" set disp_csh "setenv\t\ttestsuite yes" set whatis_csh_1 "module-whatis\t$module_1" set disp_1 "$modlin\n$modulefilere_1:\n\n$whatis_csh_1\n$disp_csh\n$modlin" -set avail_1_al "$modlin global/user modulerc $modlin\nsym_foo\\(special:@\\)\\s+\n\nKey:\n\\(@\\)=module-alias \\(symbolic-version\\) " -set avail_1 "$modlin $modpathre $modlin\n$module_1\\(foo:special\\)\\s+\n\nKey:\n\\(symbolic-version\\) " +set avail_1_al "$modlin global/user modulerc $modlin\nsym_foo\\(special:@\\)\n\nKey:\n\\(@\\)=module-alias \\(symbolic-version\\)" +set avail_1 "$modlin $modpathre $modlin\n$module_1\\(foo:special\\)\n\nKey:\n\\(symbolic-version\\)" set what_1 "$modlin $modpathre $modlin\n $module_1: $module_1" set whatis_csh_2 "module-whatis\t$module_2" set disp_2 "$modlin\n$modulefilere_2:\n\n$whatis_csh_2\n$disp_csh\n$modlin" diff --git a/testsuite/modules.20-locate/090-memcache.exp b/testsuite/modules.20-locate/090-memcache.exp index e6c560b5d..cd64d14a6 100644 --- a/testsuite/modules.20-locate/090-memcache.exp +++ b/testsuite/modules.20-locate/090-memcache.exp @@ -90,13 +90,13 @@ DEBUG \\\[#1:load:look/1\\\] findModules: finding 'foo1\\*' in $mpre .* DEBUG \\\[#1:load:look/1\\\] findModules: found foo1\\S* foo1\\S* DEBUG \\\[#1:load:look/1\\\] findModules: create cache entry .* (.*)+ -foo1/1 foo1/2 +foo1/1 foo1/2 (.*)+ DEBUG \\\[#1:load:look/1\\\] findModules: finding 'foo\\*' in $mpre .* DEBUG \\\[#1:load:look/1\\\] findModules: found foo\\S* foo\\S* foo\\S* foo\\S* DEBUG \\\[#1:load:look/1\\\] findModules: create cache entry .* (.*)+ -foo/1 foo/2 foo1/1 foo1/2 +foo/1 foo/2 foo1/1 foo1/2 (.*)+" testerr_cmd_re sh {load -D look/1} $tserr @@ -105,12 +105,12 @@ DEBUG \\\[#1:load:look/2\\\] findModules: finding 'foo\\*' in $mpre .* DEBUG \\\[#1:load:look/2\\\] findModules: found foo\\S* foo\\S* foo\\S* foo\\S* DEBUG \\\[#1:load:look/2\\\] findModules: create cache entry .* (.*)+ -foo/1 foo/2 foo1/1 foo1/2 +foo/1 foo/2 foo1/1 foo1/2 (.*)+ DEBUG \\\[#1:load:look/2\\\] findModules: finding 'foo1\\*' in $mpre .* DEBUG \\\[#1:load:look/2\\\] findModules: use cache entry .* (.*)+ -foo1/1 foo1/2 +foo1/1 foo1/2 (.*)+ Get modules: {foo1/1 foo1/2} matching 'foo1' in.* (.*)+" @@ -124,7 +124,7 @@ DEBUG \\\[#1:load:look/3\\\] findModules: create cache entry .* DEBUG \\\[#1:load:look/3\\\] findModules: finding 'f\\*' in $mpre .* DEBUG \\\[#1:load:look/3\\\] findModules: use cache entry .* (.*)+ -foo/1 foo/2 foo1/1 foo1/2 +foo/1 foo/2 foo1/1 foo1/2 (.*)+ Get modules: {foo\\S* foo\\S* foo\\S* foo\\S*} matching 'f' in.* (.*)+" @@ -135,7 +135,7 @@ DEBUG \\\[#1:load:look/4\\\] findModules: finding 'f\\*' in $mpre .* DEBUG \\\[#1:load:look/4\\\] findModules: found foo\\S* foo\\S* foo\\S* foo\\S* DEBUG \\\[#1:load:look/4\\\] findModules: create cache entry .* (.*)+ -foo/1 foo/2 foo1/1 foo1/2 +foo/1 foo/2 foo1/1 foo1/2 (.*)+ DEBUG \\\[#1:load:look/4\\\] findModules: finding '\\*' in $mpre .* (.*)+ @@ -185,7 +185,7 @@ DEBUG \\\[#1:load:look/8\\\] findModules: create cache entry .* (.*)+ DEBUG \\\[#1:load:look/8\\\] getModules: use cache entry .* (.*)+ -'sp cial/1' +'sp cial/1' (.*)+ Get modules: {{sp cial/1}} matching '{sp cial}' in.* (.*)+" diff --git a/testsuite/modules.20-locate/100-wspace.exp b/testsuite/modules.20-locate/100-wspace.exp index aa3d093d7..96fb3774d 100644 --- a/testsuite/modules.20-locate/100-wspace.exp +++ b/testsuite/modules.20-locate/100-wspace.exp @@ -34,7 +34,7 @@ setenv_var MODULES_SEARCH_MATCH starts_with # ensure auto symbolic versions are not set for these tests setenv_var MODULES_ADVANCED_VERSION_SPEC 0 -set key_sym "\n\nKey:\n(symbolic-version) " +set key_sym "\n\nKey:\n(symbolic-version)" # # tests of modules with whitespace in modulepath without whitespace @@ -62,7 +62,7 @@ testouterr_cmd sh {path space\ ya/1} [list [list text "{$mp/space ya/1}"]] {} testouterr_cmd_re sh {display space\ ya/1} OK "$modlin\n$mpre/space ya/1:\n\nmodule-whatis\t{space ya/1}\n$modlin" setenv_loaded_module [list "space ya/1"] [list "$mp/space ya/1"] setenv_var __MODULES_LMALTNAME "space ya/1&space ya/ns" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -83,7 +83,7 @@ testouterr_cmd sh {load spacen/2\ s} $ans {} testouterr_cmd sh {path spacen/2\ s} [list [list text "{$mp/spacen/2 s}"]] {} testouterr_cmd_re sh {display spacen/2\ s} OK "$modlin\n$mpre/spacen/2 s:\n\nmodule-whatis\t{spacen/2 s}\n$modlin" setenv_loaded_module [list "spacen/2 s"] [list "$mp/spacen/2 s"] -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'spacen/2 s' " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'spacen/2 s'" set ans [list] lappend ans [list unset _LMFILES_] lappend ans [list unset LOADEDMODULES] @@ -102,7 +102,7 @@ testouterr_cmd sh {path space\ ya/al} [list [list text "{$mp/spacen/1}"]] {} testouterr_cmd_re sh {display space\ ya/al} OK "$modlin\n$mpre/spacen/1:\n\nmodule-whatis\tspacen/1\n$modlin" setenv_loaded_module [list "spacen/1"] [list "$mp/spacen/1"] setenv_var __MODULES_LMALTNAME "spacen/1&spacen/w s&al|space ya/al" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/1(w s) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/1(w s)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -123,7 +123,7 @@ testouterr_cmd sh {path spacen/al} [list [list text "{$mp/space ya/1}"]] {} testouterr_cmd_re sh {display spacen/al} OK "$modlin\n$mpre/space ya/1:\n\nmodule-whatis\t{space ya/1}\n$modlin" setenv_loaded_module [list "space ya/1"] [list "$mp/space ya/1"] setenv_var __MODULES_LMALTNAME "space ya/1&space ya/ns&al|spacen/al" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -144,7 +144,7 @@ testouterr_cmd sh {path spacen/w\ s} [list [list text "{$mp/spacen/1}"]] {} testouterr_cmd_re sh {display spacen/w\ s} OK "$modlin\n$mpre/spacen/1:\n\nmodule-whatis\tspacen/1\n$modlin" setenv_loaded_module [list "spacen/1"] [list "$mp/spacen/1"] setenv_var __MODULES_LMALTNAME "spacen/1&spacen/w s" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/1(w s) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/1(w s)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -165,7 +165,7 @@ testouterr_cmd sh {path space\ ya/ns} [list [list text "{$mp/space ya/1}"]] {} testouterr_cmd_re sh {display space\ ya/ns} OK "$modlin\n$mpre/space ya/1:\n\nmodule-whatis\t{space ya/1}\n$modlin" setenv_loaded_module [list "space ya/1"] [list "$mp/space ya/1"] setenv_var __MODULES_LMALTNAME "space ya/1&space ya/ns" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -186,7 +186,7 @@ testouterr_cmd sh {path space\ ya} [list [list text "{$mp/space ya/2}"]] {} testouterr_cmd_re sh {display space\ ya} OK "$modlin\n$mpre/space ya/2:\n\nmodule-whatis\t{space ya/2}\n$modlin" setenv_loaded_module [list "space ya/2"] [list "$mp/space ya/2"] setenv_var __MODULES_LMALTNAME "space ya/2&space ya/default&space ya" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/2'(default) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/2'(default)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -205,7 +205,7 @@ testouterr_cmd sh {load spacen/vw\ s} $ans {} testouterr_cmd sh {path spacen/vw\ s} [list [list text "{$mp/spacen/1}"]] {} testouterr_cmd_re sh {display spacen/vw\ s} OK "$modlin\n$mpre/spacen/1:\n\nmodule-whatis\t{spacen/vw s}\n$modlin" setenv_loaded_module [list "spacen/vw s"] [list "$mp/spacen/1"] -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'spacen/vw s' " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'spacen/vw s'" set ans [list] lappend ans [list unset _LMFILES_] lappend ans [list unset LOADEDMODULES] @@ -222,7 +222,7 @@ testouterr_cmd sh {load spacen/vns} $ans {} testouterr_cmd sh {path spacen/vns} [list [list text "{$mp/space ya/1}"]] {} testouterr_cmd_re sh {display spacen/vns} OK "$modlin\n$mpre/space ya/1:\n\nmodule-whatis\tspacen/vns\n$modlin" setenv_loaded_module [list "spacen/vns"] [list "$mp/space ya/1"] -testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/vns " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/vns" set ans [list] lappend ans [list unset _LMFILES_] lappend ans [list unset LOADEDMODULES] @@ -241,7 +241,7 @@ testouterr_cmd sh {path spacenb/dw\ s} [list [list text "{$mp/spacenb/1}"]] {} testouterr_cmd_re sh {display spacenb/dw\ s} OK "$modlin\n$mpre/spacenb/1:\n\nmodule-whatis\tspacenb/1\n$modlin" setenv_loaded_module [list "spacenb/1"] [list "$mp/spacenb/1"] setenv_var __MODULES_LMALTNAME "spacenb/1&spacenb/dw s" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacenb/1(dw s) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacenb/1(dw s)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -262,7 +262,7 @@ testouterr_cmd sh {path space\ yb/dns} [list [list text "{$mp/space yb/1}"]] {} testouterr_cmd_re sh {display space\ yb/dns} OK "$modlin\n$mpre/space yb/1:\n\nmodule-whatis\t{space yb/1}\n$modlin" setenv_loaded_module [list "space yb/1"] [list "$mp/space yb/1"] setenv_var __MODULES_LMALTNAME "space yb/1&space yb/dns" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space yb/1'(dns) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space yb/1'(dns)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -424,7 +424,7 @@ testouterr_cmd sh {path space\ ya/1} [list [list text "{$mp/space ya/1}"]] {} testouterr_cmd_re sh {display space\ ya/1} OK "$modlin\n$mpre/space ya/1:\n\nmodule-whatis\t{space ya/1}\n$modlin" setenv_loaded_module [list "space\ ya/1"] [list "$mp/space ya/1"] setenv_var __MODULES_LMALTNAME "space ya/1&space ya/ns" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -443,7 +443,7 @@ testouterr_cmd sh {load spacen/2\ s} $ans {} testouterr_cmd sh {path spacen/2\ s} [list [list text "{$mp/spacen/2 s}"]] {} testouterr_cmd_re sh {display spacen/2\ s} OK "$modlin\n$mpre/spacen/2 s:\n\nmodule-whatis\t{spacen/2 s}\n$modlin" setenv_loaded_module [list "spacen/2 s"] [list "$mp/spacen/2 s"] -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'spacen/2 s' " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'spacen/2 s'" set ans [list] lappend ans [list unset _LMFILES_] lappend ans [list unset LOADEDMODULES] @@ -462,7 +462,7 @@ testouterr_cmd sh {path space\ ya/al} [list [list text "{$mp/spacen/1}"]] {} testouterr_cmd_re sh {display space\ ya/al} OK "$modlin\n$mpre/spacen/1:\n\nmodule-whatis\tspacen/1\n$modlin" setenv_loaded_module [list "spacen/1"] [list "$mp/spacen/1"] setenv_var __MODULES_LMALTNAME "spacen/1&spacen/w s&al|space ya/al" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/1(w s) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/1(w s)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -483,7 +483,7 @@ testouterr_cmd sh {path spacen/al} [list [list text "{$mp/space ya/1}"]] {} testouterr_cmd_re sh {display spacen/al} OK "$modlin\n$mpre/space ya/1:\n\nmodule-whatis\t{space ya/1}\n$modlin" setenv_loaded_module [list "space ya/1"] [list "$mp/space ya/1"] setenv_var __MODULES_LMALTNAME "space ya/1&space ya/ns&al|spacen/al" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -504,7 +504,7 @@ testouterr_cmd sh {path spacen/w\ s} [list [list text "{$mp/spacen/1}"]] {} testouterr_cmd_re sh {display spacen/w\ s} OK "$modlin\n$mpre/spacen/1:\n\nmodule-whatis\tspacen/1\n$modlin" setenv_loaded_module [list "spacen/1"] [list "$mp/spacen/1"] setenv_var __MODULES_LMALTNAME "spacen/1&spacen/w s" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/1(w s) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/1(w s)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -525,7 +525,7 @@ testouterr_cmd sh {path space\ ya/ns} [list [list text "{$mp/space ya/1}"]] {} testouterr_cmd_re sh {display space\ ya/ns} OK "$modlin\n$mpre/space ya/1:\n\nmodule-whatis\t{space ya/1}\n$modlin" setenv_loaded_module [list "space ya/1"] [list "$mp/space ya/1"] setenv_var __MODULES_LMALTNAME "space ya/1&space ya/ns" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/1'(ns)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -546,7 +546,7 @@ testouterr_cmd sh {path space\ ya} [list [list text "{$mp/space ya/2}"]] {} testouterr_cmd_re sh {display space\ ya} OK "$modlin\n$mpre/space ya/2:\n\nmodule-whatis\t{space ya/2}\n$modlin" setenv_loaded_module [list "space ya/2"] [list "$mp/space ya/2"] setenv_var __MODULES_LMALTNAME "space ya/2&space ya/default&space ya" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/2'(default) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space ya/2'(default)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -565,7 +565,7 @@ testouterr_cmd sh {load spacen/vw\ s} $ans {} testouterr_cmd sh {path spacen/vw\ s} [list [list text "{$mp/spacen/1}"]] {} testouterr_cmd_re sh {display spacen/vw\ s} OK "$modlin\n$mpre/spacen/1:\n\nmodule-whatis\t{spacen/vw s}\n$modlin" setenv_loaded_module [list "spacen/vw s"] [list "$mp/spacen/1"] -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'spacen/vw s' " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'spacen/vw s'" set ans [list] lappend ans [list unset _LMFILES_] lappend ans [list unset LOADEDMODULES] @@ -582,7 +582,7 @@ testouterr_cmd sh {load spacen/vns} $ans {} testouterr_cmd sh {path spacen/vns} [list [list text "{$mp/space ya/1}"]] {} testouterr_cmd_re sh {display spacen/vns} OK "$modlin\n$mpre/space ya/1:\n\nmodule-whatis\tspacen/vns\n$modlin" setenv_loaded_module [list "spacen/vns"] [list "$mp/space ya/1"] -testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/vns " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacen/vns" set ans [list] lappend ans [list unset _LMFILES_] lappend ans [list unset LOADEDMODULES] @@ -601,7 +601,7 @@ testouterr_cmd sh {path spacenb/dw\ s} [list [list text "{$mp/spacenb/1}"]] {} testouterr_cmd_re sh {display spacenb/dw\ s} OK "$modlin\n$mpre/spacenb/1:\n\nmodule-whatis\tspacenb/1\n$modlin" setenv_loaded_module [list "spacenb/1"] [list "$mp/spacenb/1"] setenv_var __MODULES_LMALTNAME "spacenb/1&spacenb/dw s" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacenb/1(dw s) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) spacenb/1(dw s)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -622,7 +622,7 @@ testouterr_cmd sh {path space\ yb/dns} [list [list text "{$mp/space yb/1}"]] {} testouterr_cmd_re sh {display space\ yb/dns} OK "$modlin\n$mpre/space yb/1:\n\nmodule-whatis\t{space yb/1}\n$modlin" setenv_loaded_module [list "space yb/1"] [list "$mp/space yb/1"] setenv_var __MODULES_LMALTNAME "space yb/1&space yb/dns" -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space yb/1'(dns) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space yb/1'(dns)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -676,7 +676,7 @@ testouterr_cmd sh {path space\ y\ /1\ } [list [list text "{$mp/space y /1 }"]] { testouterr_cmd_re sh {display space\ y\ /1\ } OK "$modlin\n$mpre/space y /1 :\n\nmodule-whatis\t{space y /1 }\n$modlin" setenv_loaded_module [list "space\ y\ /1 "] [list "$mp/space y /1 "] setenv_var __MODULES_LMALTNAME "space y /1 &space y /n &al|space y /a " -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space y /1 '(n ) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space y /1 '(n )$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -703,7 +703,7 @@ testouterr_cmd sh {path space\ y\ /a\ } [list [list text "{$mp/space y /1 }"]] { testouterr_cmd_re sh {display space\ y\ /a\ } OK "$modlin\n$mpre/space y /1 :\n\nmodule-whatis\t{space y /1 }\n$modlin" setenv_loaded_module [list "space y /1 "] [list "$mp/space y /1 "] setenv_var __MODULES_LMALTNAME "space y /1 &space y /n &al|space y /a " -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space y /1 '(n ) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space y /1 '(n )$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -724,7 +724,7 @@ testouterr_cmd sh {path space\ y\ /n\ } [list [list text "{$mp/space y /1 }"]] { testouterr_cmd_re sh {display space\ y\ /n\ } OK "$modlin\n$mpre/space y /1 :\n\nmodule-whatis\t{space y /1 }\n$modlin" setenv_loaded_module [list "space y /1 "] [list "$mp/space y /1 "] setenv_var __MODULES_LMALTNAME "space y /1 &space y /n &al|space y /a " -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space y /1 '(n ) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space y /1 '(n )$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -745,7 +745,7 @@ testouterr_cmd sh {path space\ y\ } [list [list text "{$mp/space y /2.2}"]] {} testouterr_cmd_re sh {display space\ y\ } OK "$modlin\n$mpre/space y /2.2:\n\nmodule-whatis\t{space y /2.2}\n$modlin" setenv_loaded_module [list "space y /2.2"] [list "$mp/space y /2.2"] setenv_var __MODULES_LMALTNAME "space y /2.2&space y /default&space y " -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space y /2.2'(default) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space y /2.2'(default)$key_sym" set ans [list] lappend ans [list unset __MODULES_LMALTNAME] lappend ans [list unset _LMFILES_] @@ -764,7 +764,7 @@ testouterr_cmd sh {load space\ y\ /v\ } $ans {} testouterr_cmd sh {path space\ y\ /v\ } [list [list text "{$mp/space y /1 }"]] {} testouterr_cmd_re sh {display space\ y\ /v\ } OK "$modlin\n$mpre/space y /1 :\n\nmodule-whatis\t{space y /v }\n$modlin" setenv_loaded_module [list "space y /v "] [list "$mp/space y /1 "] -testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space y /v ' " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) 'space y /v '" set ans [list] lappend ans [list unset _LMFILES_] lappend ans [list unset LOADEDMODULES] diff --git a/testsuite/modules.50-cmds/083-info-mode.exp b/testsuite/modules.50-cmds/083-info-mode.exp index 128fdef14..fb07ef8a7 100644 --- a/testsuite/modules.50-cmds/083-info-mode.exp +++ b/testsuite/modules.50-cmds/083-info-mode.exp @@ -105,7 +105,7 @@ testouterr_cmd_re "sh" "test $module" [join $ansout "\n"] "$modlin\n$lin_test\n\ # test scan setenv_var MODULEPATH $modpath.4 -testouterr_cmd sh {avail -o variant info/mode7} OK "info/mode7{foo=scan} " +testouterr_cmd sh {avail -o variant info/mode7} OK "info/mode7{foo=scan}" # diff --git a/testsuite/modules.50-cmds/084-info-mode-exp.exp b/testsuite/modules.50-cmds/084-info-mode-exp.exp index 7d072bde1..199786d34 100644 --- a/testsuite/modules.50-cmds/084-info-mode-exp.exp +++ b/testsuite/modules.50-cmds/084-info-mode-exp.exp @@ -114,7 +114,7 @@ testouterr_cmd_re "sh" "test $module" [join $ansout "\n"] "$modlin\n$lin_test\n\ # test scan setenv_var MODULEPATH $modpath.4 -testouterr_cmd sh {avail -o variant info/mode8} OK "info/mode8{foo=scan} " +testouterr_cmd sh {avail -o variant info/mode8} OK "info/mode8{foo=scan}" # diff --git a/testsuite/modules.50-cmds/152-module-emptyarg.exp b/testsuite/modules.50-cmds/152-module-emptyarg.exp index 0ab996140..15e31bd93 100644 --- a/testsuite/modules.50-cmds/152-module-emptyarg.exp +++ b/testsuite/modules.50-cmds/152-module-emptyarg.exp @@ -181,7 +181,7 @@ setenv_loaded_module $module/list $modulepath/$module/list set ans [list] lappend ans [list unset _LMFILES_] lappend ans [list unset LOADEDMODULES] -testouterr_cmd sh "unload $module/list" $ans "$cur_matchingloaded\n 1) $module/list " +testouterr_cmd sh "unload $module/list" $ans "$cur_matchingloaded\n 1) $module/list" setenv_loaded_module $module/savelist $modulepath/$module/savelist set ans [list] lappend ans [list unset _LMFILES_] diff --git a/testsuite/modules.50-cmds/260-getenv.exp b/testsuite/modules.50-cmds/260-getenv.exp index 4c5fe820c..85e27d00a 100644 --- a/testsuite/modules.50-cmds/260-getenv.exp +++ b/testsuite/modules.50-cmds/260-getenv.exp @@ -188,11 +188,11 @@ testouterr_cmd_re sh "display $module" OK $tserr setenv_var MODULES_SEARCH_MATCH starts_with setenv_var MODULEPATH $modpath.4 setenv_var TESTSUITE_RC_GETENV sym -set tserr {foo/1.0(sym) } +set tserr {foo/1.0(sym)} testouterr_cmd sh {avail -o sym foo/1.0} OK $tserr setenv_var TESTSUITE_RC_GETENV unk -set tserr {foo/1.0(foo) } +set tserr {foo/1.0(foo)} testouterr_cmd sh {avail -o sym foo/1.0} OK $tserr diff --git a/testsuite/modules.50-cmds/281-info-modulerc.exp b/testsuite/modules.50-cmds/281-info-modulerc.exp index 8751f94e2..bbc827ddb 100644 --- a/testsuite/modules.50-cmds/281-info-modulerc.exp +++ b/testsuite/modules.50-cmds/281-info-modulerc.exp @@ -80,7 +80,7 @@ testouterr_cmd_re "sh" "test $module" "OK" "$out_rc_test\n$modlin\nModule Specif # test avail # no output as defined in modulerc if mode is not set -testouterr_cmd_re "sh" "avail $module" "OK" "$header\n$module/1.0\\s+$module/2.0\\(avail:bar:default\\)\\s+$module/foo\\(@\\)\\s+\n\nKey:\n\\(@\\)=module-alias \\(symbolic-version\\) " +testouterr_cmd_re "sh" "avail $module" "OK" "$header\n$module/1.0\\s+$module/2.0\\(avail:bar:default\\)\\s+$module/foo\\(@\\)\n\nKey:\n\\(@\\)=module-alias \\(symbolic-version\\)" # test aliases testouterr_cmd_re "sh" "aliases" "OK" ".*$module/aliases -> $module2\n.*" @@ -99,7 +99,7 @@ setenv_loaded_module $module2 $modulefile2 setenv_var __MODULES_LMALTNAME "$module2&inforc/bar&inforc/default&inforc" # test listing -testouterr_cmd_re "sh" "list" "OK" "$header_list\n 1\\) $module2\\(bar:default\\)\\s+\n\nKey:\n\\(symbolic-version\\) " +testouterr_cmd_re "sh" "list" "OK" "$header_list\n 1\\) $module2\\(bar:default\\)\n\nKey:\n\\(symbolic-version\\)" # test switching # modulerc is interpreted on first resolved internally prior switched-on load phase diff --git a/testsuite/modules.50-cmds/440-module-tag.exp b/testsuite/modules.50-cmds/440-module-tag.exp index 7b664eae7..53bc565be 100644 --- a/testsuite/modules.50-cmds/440-module-tag.exp +++ b/testsuite/modules.50-cmds/440-module-tag.exp @@ -219,19 +219,19 @@ unsetenv_var TESTSUITE_MODULE_TAG_ERR11 setenv_var TESTSUITE_MODULE_TAG_SET1 1 set tserr "$modlin $mpre $modlin -tag/7.0 " +tag/7.0" testouterr_cmd_re sh {avail tag/7.0} OK $tserr set tserr "$modlin $mpre $modlin -tag/5.0 +tag/5.0 Key: - " +" testouterr_cmd_re sh {avail tag/5.0} OK $tserr set tserr "$modlin $mpre $modlin -tag/6.0 +tag/6.0 Key: - " +" testouterr_cmd_re sh {avail tag/6.0} OK $tserr set ans [list] lappend ans [list set _LMFILES_ $mp/tag/5.0] diff --git a/testsuite/modules.50-cmds/465-tag-opt.exp b/testsuite/modules.50-cmds/465-tag-opt.exp index 0fd7aefad..744f82c40 100644 --- a/testsuite/modules.50-cmds/465-tag-opt.exp +++ b/testsuite/modules.50-cmds/465-tag-opt.exp @@ -561,11 +561,11 @@ setenv_path_var __MODULES_LMEXTRATAG $mod&foo&bar setenv_path_var __MODULES_LMTAG $mod&foo&bar setenv_var MODULES_ADVANCED_VERSION_SPEC 1 -set tserr {tag/8.0 } +set tserr {tag/8.0 } testouterr_cmd sh "avail -o tag tag@7.2:8.2" OK $tserr unsetenv_var MODULES_ADVANCED_VERSION_SPEC -set tserr {tag/8.0 } +set tserr {tag/8.0 } testouterr_cmd sh "list -o tag" OK $tserr testouterr_cmd sh {refresh} OK {} diff --git a/testsuite/modules.50-cmds/467-keep-loaded.exp b/testsuite/modules.50-cmds/467-keep-loaded.exp index 222331511..fef3abe6d 100644 --- a/testsuite/modules.50-cmds/467-keep-loaded.exp +++ b/testsuite/modules.50-cmds/467-keep-loaded.exp @@ -107,16 +107,16 @@ testouterr_cmd sh "unload --no-auto $mod" $ans {} setenv_var MODULES_TAG_ABBREV auto-loaded=aL:keep-loaded=kL -set tserr "foo/1.0 +set tserr "foo/1.0 Key: - =auto-loaded =keep-loaded " + =auto-loaded =keep-loaded" testouterr_cmd sh "avail -o tag:key foo/1.0" OK $tserr -set tserr "foo/1.0 $mod +set tserr "foo/1.0 $mod Key: - =auto-loaded =keep-loaded " + =auto-loaded =keep-loaded" testouterr_cmd sh "list -o tag:key" OK $tserr # diff --git a/testsuite/modules.50-cmds/530-module-list.exp b/testsuite/modules.50-cmds/530-module-list.exp index 3a31e4444..d7a7bb295 100644 --- a/testsuite/modules.50-cmds/530-module-list.exp +++ b/testsuite/modules.50-cmds/530-module-list.exp @@ -45,7 +45,7 @@ setenv_loaded_module [list foo/1.0] [list $mp/foo/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$modfile] lappend ans [list set LOADEDMODULES foo/1.0:$mod] -set tserr "$cur_loaded\n 1) foo/1.0 " +set tserr "$cur_loaded\n 1) foo/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_loaded_module [list foo/1.0 bar/1.0] [list $mp/foo/1.0 $mp/bar/1.0] @@ -53,7 +53,7 @@ setenv_loaded_module [list foo/1.0 bar/1.0] [list $mp/foo/1.0 $mp/bar/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/bar/1.0:$modfile] lappend ans [list set LOADEDMODULES foo/1.0:bar/1.0:$mod] -set tserr "$cur_loaded\n 1) foo/1.0 2) bar/1.0 " +set tserr "$cur_loaded\n 1) foo/1.0 2) bar/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_loaded_module [list foo/1.0 bar/1.0 $mod] [list $mp/foo/1.0 $mp/bar/1.0 $modfile] @@ -61,7 +61,7 @@ setenv_loaded_module [list foo/1.0 bar/1.0 $mod] [list $mp/foo/1.0 $mp/bar/1.0 $ set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/bar/1.0] lappend ans [list set LOADEDMODULES foo/1.0:bar/1.0] -set tserr "$cur_loaded\n 1) foo/1.0 2) bar/1.0 3) $mod " +set tserr "$cur_loaded\n 1) foo/1.0 2) bar/1.0 3) $mod" testouterr_cmd sh "unload $mod" $ans $tserr unsetenv_loaded_module @@ -80,7 +80,7 @@ setenv_loaded_module [list foo/1.0] [list $mp/foo/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$modfile] lappend ans [list set LOADEDMODULES foo/1.0:$mod] -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_loaded_module [list bar/1.0] [list $mp/bar/1.0] @@ -96,7 +96,7 @@ setenv_loaded_module [list foo/1.0 bar/1.0] [list $mp/foo/1.0 $mp/bar/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/bar/1.0:$modfile] lappend ans [list set LOADEDMODULES foo/1.0:bar/1.0:$mod] -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_loaded_module [list foo/1.0 bar/1.0 $mod] [list $mp/foo/1.0 $mp/bar/1.0 $modfile] @@ -104,7 +104,7 @@ setenv_loaded_module [list foo/1.0 bar/1.0 $mod] [list $mp/foo/1.0 $mp/bar/1.0 $ set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/bar/1.0] lappend ans [list set LOADEDMODULES foo/1.0:bar/1.0] -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh "unload $mod" $ans $tserr unsetenv_loaded_module @@ -124,7 +124,7 @@ setenv_loaded_module [list foo/1.0] [list $mp/foo/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$modfile] lappend ans [list set LOADEDMODULES foo/1.0:$mod] -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_loaded_module [list bar/1.0] [list $mp/bar/1.0] @@ -140,7 +140,7 @@ setenv_loaded_module [list foo/1.0 bar/1.0] [list $mp/foo/1.0 $mp/bar/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/bar/1.0:$modfile] lappend ans [list set LOADEDMODULES foo/1.0:bar/1.0:$mod] -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_loaded_module [list foo/1.0 bar/1.0 $mod] [list $mp/foo/1.0 $mp/bar/1.0 $modfile] @@ -148,7 +148,7 @@ setenv_loaded_module [list foo/1.0 bar/1.0 $mod] [list $mp/foo/1.0 $mp/bar/1.0 $ set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/bar/1.0] lappend ans [list set LOADEDMODULES foo/1.0:bar/1.0] -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh "unload $mod" $ans $tserr unsetenv_loaded_module @@ -168,7 +168,7 @@ setenv_loaded_module [list foo/1.0] [list $mp/foo/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$modfile] lappend ans [list set LOADEDMODULES foo/1.0:$mod] -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_loaded_module [list bar/1.0] [list $mp/bar/1.0] @@ -176,7 +176,7 @@ setenv_loaded_module [list bar/1.0] [list $mp/bar/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/bar/1.0:$modfile] lappend ans [list set LOADEDMODULES bar/1.0:$mod] -set tserr "$cur_matchingloaded\n 1) bar/1.0 " +set tserr "$cur_matchingloaded\n 1) bar/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_loaded_module [list foo/1.0 bar/1.0] [list $mp/foo/1.0 $mp/bar/1.0] @@ -184,7 +184,7 @@ setenv_loaded_module [list foo/1.0 bar/1.0] [list $mp/foo/1.0 $mp/bar/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/bar/1.0:$modfile] lappend ans [list set LOADEDMODULES foo/1.0:bar/1.0:$mod] -set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_loaded_module [list foo/1.0 bar/1.0 $mod] [list $mp/foo/1.0 $mp/bar/1.0 $modfile] @@ -192,7 +192,7 @@ setenv_loaded_module [list foo/1.0 bar/1.0 $mod] [list $mp/foo/1.0 $mp/bar/1.0 $ set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/bar/1.0] lappend ans [list set LOADEDMODULES foo/1.0:bar/1.0] -set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0" testouterr_cmd sh "unload $mod" $ans $tserr unsetenv_loaded_module @@ -212,7 +212,7 @@ setenv_loaded_module [list foo/1.0] [list $mp/foo/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$modfile] lappend ans [list set LOADEDMODULES foo/1.0:$mod] -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh "load $mod" $ans $tserr unsetenv_path_var __MODULES_LMALTNAME @@ -221,7 +221,7 @@ setenv_loaded_module [list bar/1.0] [list $mp/bar/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/bar/1.0:$modfile] lappend ans [list set LOADEDMODULES bar/1.0:$mod] -set tserr "$cur_matchingloaded\n 1) bar/1.0 " +set tserr "$cur_matchingloaded\n 1) bar/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_path_var __MODULES_LMALTNAME foo/1.0&al|alfoo @@ -230,7 +230,7 @@ setenv_loaded_module [list foo/1.0 bar/1.0] [list $mp/foo/1.0 $mp/bar/1.0] set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/bar/1.0:$modfile] lappend ans [list set LOADEDMODULES foo/1.0:bar/1.0:$mod] -set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0" testouterr_cmd sh "load $mod" $ans $tserr setenv_loaded_module [list foo/1.0 bar/1.0 $mod] [list $mp/foo/1.0 $mp/bar/1.0 $modfile] @@ -238,7 +238,7 @@ setenv_loaded_module [list foo/1.0 bar/1.0 $mod] [list $mp/foo/1.0 $mp/bar/1.0 $ set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/bar/1.0] lappend ans [list set LOADEDMODULES foo/1.0:bar/1.0] -set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0" testouterr_cmd sh "unload $mod" $ans $tserr unsetenv_path_var __MODULES_LMALTNAME diff --git a/testsuite/modules.50-cmds/570-modulepath-label.exp b/testsuite/modules.50-cmds/570-modulepath-label.exp index ea9d83718..d1e805dab 100644 --- a/testsuite/modules.50-cmds/570-modulepath-label.exp +++ b/testsuite/modules.50-cmds/570-modulepath-label.exp @@ -34,7 +34,7 @@ setenv_var MODULES_SEARCH_MATCH starts_with setenv_var TESTSUITE_MODULEPATH_LABEL rel1 set tserr "$modlin My label $modlin -label/1.0 " +label/1.0" testouterr_cmd_re sh {avail label} OK $tserr set tserr "$modlin My label $modlin @@ -69,7 +69,7 @@ testerr_cmd sh {search -j label} $tserr # different relative path setenv_var TESTSUITE_MODULEPATH_LABEL rel2 set tserr "$modlin My label $modlin -label/1.0 " +label/1.0" testouterr_cmd_re sh {avail label} OK $tserr setenv_var TESTSUITE_MODULEPATH_LABEL rel3 @@ -84,7 +84,7 @@ testouterr_cmd_re sh {avail label} OK $tserr # empty module path setenv_var TESTSUITE_MODULEPATH_LABEL empty1 set tserr "$modlin $modpathre.4 $modlin -label/1.0 " +label/1.0" testouterr_cmd_re sh {avail label} OK $tserr # erroneous call @@ -95,7 +95,7 @@ testouterr_cmd_re sh {avail label} OK $tserr # very long label setenv_var TESTSUITE_MODULEPATH_LABEL long1 set tserr "$modlin very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very long label $modlin -label/1.0 " +label/1.0" testouterr_cmd_re sh {avail label} OK $tserr @@ -103,17 +103,17 @@ testouterr_cmd_re sh {avail label} OK $tserr setenv_var TESTSUITE_MODULEPATH_LABEL otherpath1 setenv_path_var MODULEPATH $mp:$modpath.3 set tserr "$modlin $mpre $modlin -foo/1.0 +foo/1.0 $modlin Other label $modlin -foo/1.0 " +foo/1.0" testouterr_cmd_re sh {avail foo/1.0} OK $tserr setenv_path_var MODULEPATH $modpath.3:$mp set tserr "$modlin $modpathre.3 $modlin -foo/1.0 +foo/1.0 $modlin $mpre $modlin -foo/1.0 " +foo/1.0" testouterr_cmd_re sh {avail foo/1.0} OK $tserr setenv_path_var MODULEPATH $mp @@ -122,17 +122,17 @@ setenv_path_var MODULEPATH $mp setenv_var MODULERCFILE $env(TESTSUITEDIR)/etc/modulerc.label setenv_var TESTSUITE_MODULEPATH_LABEL rc1 set tserr "$modlin global/user modulerc $modlin -label/alias +label/alias $modlin My label $modlin -label/1.0 " +label/1.0" testouterr_cmd_re sh {avail -o modulepath:alias label} OK $tserr setenv_var TESTSUITE_MODULEPATH_LABEL rc2 set tserr "$modlin global/user modulerc $modlin -label/alias +label/alias $modlin $mpre $modlin -label/1.0 " +label/1.0" testouterr_cmd_re sh {avail -o modulepath:alias label} OK $tserr setenv_var TESTSUITE_MODULEPATH_LABEL rc3 testouterr_cmd_re sh {avail -o modulepath:alias label} OK $tserr @@ -142,7 +142,7 @@ setenv_var MODULERCFILE $ORIG_MODULERCFILE # duplicate definitions setenv_var TESTSUITE_MODULEPATH_LABEL dup1 set tserr "$modlin Other label $modlin -label/1.0 " +label/1.0" testouterr_cmd_re sh {avail label} OK $tserr setenv_var TESTSUITE_MODULEPATH_LABEL dup2 testouterr_cmd_re sh {avail label} OK $tserr @@ -152,17 +152,17 @@ testouterr_cmd_re sh {avail label} OK $tserr setenv_var MODULERCFILE $env(TESTSUITEDIR)/etc/modulerc.label setenv_var TESTSUITE_MODULEPATH_LABEL dup3 set tserr "$modlin Modulepath rc label $modlin -label/1.0 " +label/1.0" testouterr_cmd_re sh {avail label/1.0} OK $tserr setenv_var TESTSUITE_MODULEPATH_LABEL dup4 set tserr "$modlin Module rc label $modlin -label/1.0 " +label/1.0" testouterr_cmd_re sh {avail label/1.0} OK $tserr setenv_var TESTSUITE_MODULEPATH_LABEL dup5 testouterr_cmd_re sh {avail label/1.0} OK $tserr setenv_var MODULES_ADVANCED_VERSION_SPEC 1 set tserr "$modlin Modulefile label $modlin -label/1.0 " +label/1.0" testouterr_cmd_re sh {avail label/1.0 envvar:XTFOO} OK $tserr unsetenv_var MODULES_ADVANCED_VERSION_SPEC setenv_var MODULERCFILE $ORIG_MODULERCFILE diff --git a/testsuite/modules.51-scan/020-avail_output-variant.exp b/testsuite/modules.51-scan/020-avail_output-variant.exp index 99c89c7b6..fa013bb85 100644 --- a/testsuite/modules.51-scan/020-avail_output-variant.exp +++ b/testsuite/modules.51-scan/020-avail_output-variant.exp @@ -53,53 +53,53 @@ variant/8.0 'variant/w s'" testouterr_cmd sh {avail -t -o variant variant} OK $tserr -set tserr "advvers/1.0 keep/2.0 modbad/stashrm reset/2 -advvers2/1.0 key/1.0 modbad/stashshow source-sh/conda -advvers2/1.1 key/2.0 modbad/state source-sh/openfoam -advvers2/2.0 key/4.0 noglobeval/1.0 source-sh/spack -advvers2/2.2 lcompat/1.0 notreq/load sticky/1.0 -advvers2/2.8 lcompat/1.1 notreq/loadany sticky/2.0 -advvers2/2.10 lcompat/1.2 notreq/loadanymul sticky/3.0 -advvers2/3.7 lcompat/1.3 notreq/loaderr sticky/4.0 -advvers2/4.2 lcompat/1.4 notreq/loadmul stickysub/dir1/1.0 -advvers2/foo lcompat/1.5 notreq/loadsubm stickysub/dir1/2.0 -bar/1.0 lcompat/1.6 notreq/loadsubp stickysub/dir2/3.0 -bar/2.0 lcompat/1.7 notreq/loadunk stickysub/dir2/4.0 -baz/1.0 lcompat/1.8 notreq/mix tag/1.0 -baz/2.0 lcompat/1.9/1.9 notreq/prereq tag/2.0 -complete/1.0 lcompat/1.9/2.0 notreq/switch1 tag/4.0 -complete/1.1 lcompat/1.10 notreq/switch1err tag/5.0 -complete/1.2 lcompat/1.11 notreq/switch1unk tag/6.0 -complete/2.0 lcompat/2.0 notreq/switch2 tag/7.0 -flatlcompat lcompatdep/1.4 notreq/switchsubm tag/8.0 -foo/0.2 lcompatdep/2.0 notreq/switchsubp tag/9.0 -foo/0.err lint/1.0 notreq/tryload tryload/1.0 -foo/0.load lint/1.1 notreq/tryloadmul tryload/2.0 -foo/0.prereq lint/1.2 notreq/unload unsetenv/2.0 -foo/1.0 lint/1.3 notreq/unloaderr var=val -foo/2.0 lint/1.4 notreq/unloadmul variant/1.0{bar=val1,val2,val3:foo=val1} -impreq/load lint/2.0 notreq/use variant/2.0{foo=val1} -impreq/loaderr list/1.0 optional/1.0 variant/2.1/2/1 -impreq/loadmul list/2.0 optional/2.0 variant/3.0{bar=val1,val2} -impreq/loadsubm loadany/1.0 output/1.0 variant/4.0 -impreq/loadsubp loadany/2.0 path-cmd-opt/1.0 variant/5.0 -impreq/loadunk mfvar/1.0 path-cmd-opt/1.1 variant/5.1{foo=val1,val2,val3} -impreq/mix mfvar/2.0 path-cmd-opt/1.2 variant/6.0 -impreq/prereq mfvar/Modules/$install_release path-cmd-opt/1.3 variant/7.0{foo=val1,val2,val3} -impreq/switch1 mod-to-sh/1.0 path-cmd-opt/1.4 variant/7.1 -impreq/switch1err mod-to-sh/1.1 path-cmd-opt/1.5 variant/8.0 -impreq/switch1unk mod-to-sh/2.0 path-cmd-opt/2.0 'variant/w s' -impreq/switch2 modbad/cachebuild protect/1.0 versioncmp/1.0 -impreq/switchsubm modbad/cacheclear protect/2.0 vrreq1/1.0{foo=val1,val2,val3} -impreq/switchsubp modbad/lint puts/prestdout vrreq1/2.0{foo=val1,val2,val3} -impreq/unload modbad/mod-to-sh qux/1 'vrreq1/w s' -impreq/unloaderr modbad/refresh qux/2 vrreq2/1.0{bar=0,1,2:foo=val1,val2,val3} -impreq/unloadmul modbad/reset refresh/1.0 vrreq2/2.0{bar=0,1,2:foo=val1,val2,val3} -info/tags modbad/source refresh/2.0{foo=on,off} 'vrreq2/w s' -info/tags2 modbad/spider refresh/3.0 vrreq3/1.0{bar=0,1,2:foo=val1,val2,val3} -interp/0 modbad/stash refresh/4.0 vrreq3/2.0{bar=0,1,2:foo=val1,val2,val3} -interp/1 modbad/stashclear refresh/5.0 vrreq4/1.0{bar=0,1,2:foo=val1,val2,val3} -interp/2 modbad/stashlist refresh/6.0 vrreq4/2.0{bar=0,1,2:foo=val1,val2,val3} +set tserr "advvers/1.0 keep/2.0 modbad/stashrm reset/2 +advvers2/1.0 key/1.0 modbad/stashshow source-sh/conda +advvers2/1.1 key/2.0 modbad/state source-sh/openfoam +advvers2/2.0 key/4.0 noglobeval/1.0 source-sh/spack +advvers2/2.2 lcompat/1.0 notreq/load sticky/1.0 +advvers2/2.8 lcompat/1.1 notreq/loadany sticky/2.0 +advvers2/2.10 lcompat/1.2 notreq/loadanymul sticky/3.0 +advvers2/3.7 lcompat/1.3 notreq/loaderr sticky/4.0 +advvers2/4.2 lcompat/1.4 notreq/loadmul stickysub/dir1/1.0 +advvers2/foo lcompat/1.5 notreq/loadsubm stickysub/dir1/2.0 +bar/1.0 lcompat/1.6 notreq/loadsubp stickysub/dir2/3.0 +bar/2.0 lcompat/1.7 notreq/loadunk stickysub/dir2/4.0 +baz/1.0 lcompat/1.8 notreq/mix tag/1.0 +baz/2.0 lcompat/1.9/1.9 notreq/prereq tag/2.0 +complete/1.0 lcompat/1.9/2.0 notreq/switch1 tag/4.0 +complete/1.1 lcompat/1.10 notreq/switch1err tag/5.0 +complete/1.2 lcompat/1.11 notreq/switch1unk tag/6.0 +complete/2.0 lcompat/2.0 notreq/switch2 tag/7.0 +flatlcompat lcompatdep/1.4 notreq/switchsubm tag/8.0 +foo/0.2 lcompatdep/2.0 notreq/switchsubp tag/9.0 +foo/0.err lint/1.0 notreq/tryload tryload/1.0 +foo/0.load lint/1.1 notreq/tryloadmul tryload/2.0 +foo/0.prereq lint/1.2 notreq/unload unsetenv/2.0 +foo/1.0 lint/1.3 notreq/unloaderr var=val +foo/2.0 lint/1.4 notreq/unloadmul variant/1.0{bar=val1,val2,val3:foo=val1} +impreq/load lint/2.0 notreq/use variant/2.0{foo=val1} +impreq/loaderr list/1.0 optional/1.0 variant/2.1/2/1 +impreq/loadmul list/2.0 optional/2.0 variant/3.0{bar=val1,val2} +impreq/loadsubm loadany/1.0 output/1.0 variant/4.0 +impreq/loadsubp loadany/2.0 path-cmd-opt/1.0 variant/5.0 +impreq/loadunk mfvar/1.0 path-cmd-opt/1.1 variant/5.1{foo=val1,val2,val3} +impreq/mix mfvar/2.0 path-cmd-opt/1.2 variant/6.0 +impreq/prereq mfvar/Modules/$install_release path-cmd-opt/1.3 variant/7.0{foo=val1,val2,val3} +impreq/switch1 mod-to-sh/1.0 path-cmd-opt/1.4 variant/7.1 +impreq/switch1err mod-to-sh/1.1 path-cmd-opt/1.5 variant/8.0 +impreq/switch1unk mod-to-sh/2.0 path-cmd-opt/2.0 'variant/w s' +impreq/switch2 modbad/cachebuild protect/1.0 versioncmp/1.0 +impreq/switchsubm modbad/cacheclear protect/2.0 vrreq1/1.0{foo=val1,val2,val3} +impreq/switchsubp modbad/lint puts/prestdout vrreq1/2.0{foo=val1,val2,val3} +impreq/unload modbad/mod-to-sh qux/1 'vrreq1/w s' +impreq/unloaderr modbad/refresh qux/2 vrreq2/1.0{bar=0,1,2:foo=val1,val2,val3} +impreq/unloadmul modbad/reset refresh/1.0 vrreq2/2.0{bar=0,1,2:foo=val1,val2,val3} +info/tags modbad/source refresh/2.0{foo=on,off} 'vrreq2/w s' +info/tags2 modbad/spider refresh/3.0 vrreq3/1.0{bar=0,1,2:foo=val1,val2,val3} +interp/0 modbad/stash refresh/4.0 vrreq3/2.0{bar=0,1,2:foo=val1,val2,val3} +interp/1 modbad/stashclear refresh/5.0 vrreq4/1.0{bar=0,1,2:foo=val1,val2,val3} +interp/2 modbad/stashlist refresh/6.0 vrreq4/2.0{bar=0,1,2:foo=val1,val2,val3} keep/1.0 modbad/stashpop reset/1 " testouterr_cmd sh {avail -w 120 -o variant} OK $tserr @@ -458,8 +458,8 @@ testouterr_cmd sh {avail -t variant1} OK $tserr setenv_var TESTSUITE_AVAIL specialchar1 -set tserr "variant1/1.0{foo=v:l,*} variant1/2.0{bar=v l,v l e,v:l:foo=*} -variant1/1.1{foo=v:l,*} variant1/2.1{bar=v l,v l e,v:l:foo=*} " +set tserr "variant1/1.0{foo=v:l,*} variant1/2.0{bar=v l,v l e,v:l:foo=*} +variant1/1.1{foo=v:l,*} variant1/2.1{bar=v l,v l e,v:l:foo=*}" testouterr_cmd sh {avail -w 120 variant1} OK $tserr set tserr "variant1/1.0{foo=v:l,*} diff --git a/testsuite/modules.51-scan/021-avail_output-variant-sgr.exp b/testsuite/modules.51-scan/021-avail_output-variant-sgr.exp index 38dba38d2..ee47c2b41 100644 --- a/testsuite/modules.51-scan/021-avail_output-variant-sgr.exp +++ b/testsuite/modules.51-scan/021-avail_output-variant-sgr.exp @@ -46,47 +46,46 @@ setenv_var TESTSUITE_VARIANT 13 # correct column count (with default variant value, with keys) set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 -[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] '[sgr 1]variant[sgr 22]/w s' +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 +[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] '[sgr 1]variant[sgr 22]/w s' Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -w 120 variant} OK $tserr # correct column count (with module loaded and default variant value, with keys) setenv_var __MODULES_LMVARIANT variant/1.0&bar|val3|0|1&foo|val1|0|1 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]val3[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 -[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] '[sgr 1]variant[sgr 22]/w s' +[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]val3[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 +[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] '[sgr 1]variant[sgr 22]/w s' Key: -[sgr {90;47}]loaded[sgr 0] [sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -w 120 variant} OK $tserr # correct column count (with module loaded and default variant value, no color, with keys) set tserr "$modlin $mpre $modlin -variant/1.0{bar=val1,val2,val3:foo=val1} variant/4.0 variant/7.0{foo=val1,val2,val3} -variant/2.0{foo=val1} variant/5.0 variant/7.1 -variant/2.1/2/1 variant/5.1{foo=val1,val2,val3} variant/8.0 -variant/3.0{bar=val1,val2} variant/6.0 'variant/w s' +variant/1.0{bar=val1,val2,val3:foo=val1} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 +variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 +variant/2.1/2/1 variant/5.0 variant/7.0{foo=val1,val2,val3} 'variant/w s' Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail -w 120 variant} OK $tserr # correct column count (with module not loaded and default variant value, no color, with keys) unsetenv_var __MODULES_LMVARIANT unsetenv_loaded_module set tserr "$modlin $mpre $modlin -variant/1.0{bar=val1,val2,val3:foo=val1} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 -variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 -variant/2.1/2/1 variant/5.0 variant/7.0{foo=val1,val2,val3} 'variant/w s' +variant/1.0{bar=val1,val2,val3:foo=val1} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 +variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 +variant/2.1/2/1 variant/5.0 variant/7.0{foo=val1,val2,val3} 'variant/w s' Key: -{variant=value} " +{variant=value}" testouterr_cmd_re sh {avail -w 120 variant} OK $tserr @@ -95,45 +94,45 @@ testouterr_cmd_re sh {avail -w 120 variant} OK $tserr setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant # module not loaded, variant with 1 value, no default, sgr enabled, no key -set tserr "[sgr 1]variant/2.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr 1]variant/2.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/2.0} OK $tserr # module not loaded, variant with 1 value, no default, no sgr, no key -set tserr "variant/2.0{foo=val1} " +set tserr "variant/2.0{foo=val1}" testouterr_cmd_re sh {avail variant/2.0} OK $tserr # module not loaded, variant with 1 value other with N value, 1 default, sgr enabled, with key setenv_var TESTSUITE_VARIANT 13 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module not loaded, variant with 1 value other with N value, 1 default, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} +set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} Key: -{variant=value} " +{variant=value}" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module not loaded, variant with 1 value, 1 default but different than value, sgr enabled, no key setenv_var TESTSUITE_VARIANT 25 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val2[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module not loaded, variant with 1 value, 1 default but different than value, no sgr, no key -set tserr "variant/1.0{foo=val2} " +set tserr "variant/1.0{foo=val2}" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module not loaded, variant with N value, no default, sgr enabled, no key -set tserr "[sgr 1]variant/5.1[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr 1]variant/5.1[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/5.1} OK $tserr # module not loaded, variant with N value, 1 default but different than value, sgr enabled, no key setenv_var TESTSUITE_VARIANT 21 -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module not loaded, variant with N value, 1 default but different than value, sgr enabled, no key, terse mode set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -t variant/1.0} OK $tserr # module not loaded, variant with N value, 1 default but different than value, no sgr, no key -set tserr "variant/1.0{foo=val2,val3} " +set tserr "variant/1.0{foo=val2,val3}" testouterr_cmd_re sh {avail variant/1.0} OK $tserr @@ -142,50 +141,50 @@ testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, variant with 1 value, no default, sgr enabled, no key setenv_loaded_module [list variant/2.0] [list $mp/variant/2.0] setenv_var __MODULES_LMVARIANT variant/2.0&foo|val1|0|0 -set tserr "[sgr {90;47;1}]variant/2.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/2.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/2.0} OK $tserr # module loaded, variant with 1 value, no default, no sgr, no key -set tserr "variant/2.0{foo=val1} " +set tserr "variant/2.0{foo=val1} " testouterr_cmd_re sh {avail variant/2.0} OK $tserr # module loaded, variant with 1 value other with N values, 1 default not loaded, sgr enabled, with key setenv_var TESTSUITE_VARIANT 13 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&bar|val1|0|0&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, variant with 1 value other with N values, 1 default not loaded, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} +set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, variant with 1 value other with N values, 1 default loaded, sgr enabled, no key setenv_var __MODULES_LMVARIANT variant/1.0&bar|val2|0|1&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, variant with 1 value other with N values, 1 default loaded, no sgr, no key -set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} " +set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, variant with 1 value, 1 default but different than value, sgr enabled, no key setenv_var TESTSUITE_VARIANT 25 setenv_var __MODULES_LMVARIANT variant/1.0&foo|val2|0|0 -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val2[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val2[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, variant with 1 value, 1 default but different than value, sgr enabled, no key, terse mode set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val2[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -t variant/1.0} OK $tserr # module loaded, variant with 1 value, 1 default but different than value, no sgr, no key -set tserr "variant/1.0{foo=val2} " +set tserr "variant/1.0{foo=val2} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, variant with N value, no default, no sgr, no key setenv_loaded_module [list variant/5.1] [list $mp/variant/5.1] setenv_var __MODULES_LMVARIANT variant/5.1&foo|val1|0|0 -set tserr "[sgr {90;47;1}]variant/5.1[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/5.1[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/5.1} OK $tserr # module loaded, variant with N value, 1 default loaded, different loaded tag abbrev, sgr enabled, with key setenv_var TESTSUITE_VARIANT 13 @@ -194,31 +193,31 @@ setenv_var __MODULES_LMVARIANT variant/1.0&bar|val2|0|1&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant setenv_var MODULES_TAG_ABBREV {loaded=foo} setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109:foo=92;47" -set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {92;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {92;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, variant with N value, 1 default loaded, different loaded tag abbrev, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} +set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, variant with N value, 1 default loaded, render on loaded tag, sgr enabled, with key unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" setenv_var MODULES_TAG_COLOR_NAME L -set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {90;47}]L[sgr 0][sgr 2]>[sgr 22] +set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {90;47}]L[sgr 0][sgr 2]>[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, variant with N value, 1 default loaded, render on loaded tag, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} +set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr @@ -228,58 +227,58 @@ testouterr_cmd_re sh {avail variant/1.0} OK $tserr setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant setenv_loaded_module [list variant/2.0] [list $mp/variant/2.0] [list variant/2.0] setenv_var __MODULES_LMVARIANT variant/2.0&foo|val1|0|0 -set tserr "[sgr {100;1}]variant/2.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/2.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/2.0} OK $tserr # module auto-loaded, variant with 1 value, no default, no sgr, no key -set tserr "variant/2.0{foo=val1} " +set tserr "variant/2.0{foo=val1} " testouterr_cmd_re sh {avail variant/2.0} OK $tserr # module auto-loaded, variant with 1 value other with N values, 1 default not loaded, sgr enabled, with key setenv_var TESTSUITE_VARIANT 13 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] [list variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&bar|val1|0|0&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr {100}]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr {100}]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # no tag sgr setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:key:variant -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, variant with 1 value other with N values, 1 default not loaded, no sgr, with key setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} +set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} Key: -{variant=value} =auto-loaded " +{variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, variant with 1 value other with N values, 1 default loaded, sgr enabled, no key setenv_var __MODULES_LMVARIANT variant/1.0&bar|val2|0|1&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, variant with 1 value other with N values, 1 default loaded, sgr enabled, no key, terse mode set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always --terse variant/1.0} OK $tserr # module auto-loaded, variant with 1 value other with N values, 1 default loaded, no sgr, no key -set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} " +set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, variant with 1 value, 1 default but different than value, sgr enabled, no key setenv_var TESTSUITE_VARIANT 25 setenv_var __MODULES_LMVARIANT variant/1.0&foo|val2|0|0 -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val2[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val2[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, variant with 1 value, 1 default but different than value, no sgr, no key -set tserr "variant/1.0{foo=val2} " +set tserr "variant/1.0{foo=val2} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, variant with N value, no default, no sgr, no key setenv_loaded_module [list variant/5.1] [list $mp/variant/5.1] [list variant/5.1] setenv_var __MODULES_LMVARIANT variant/5.1&foo|val1|0|0 -set tserr "[sgr {100;1}]variant/5.1[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/5.1[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/5.1} OK $tserr # module auto-loaded, variant with N value, 1 default loaded, different loaded tag abbrev, sgr enabled, with key setenv_var TESTSUITE_VARIANT 13 @@ -288,31 +287,31 @@ setenv_var __MODULES_LMVARIANT variant/1.0&bar|val2|0|1&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant setenv_var MODULES_TAG_ABBREV {auto-loaded=foo} setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109:foo=92;47" -set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {92;47}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {92;47}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, variant with N value, 1 default loaded, different loaded tag abbrev, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} +set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} Key: -{variant=value} =auto-loaded " +{variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, variant with N value, 1 default loaded, render on loaded tag, sgr enabled, with key unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" setenv_var MODULES_TAG_COLOR_NAME aL -set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {100}]aL[sgr 0][sgr 2]>[sgr 22] +set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {100}]aL[sgr 0][sgr 2]>[sgr 22] Key: -[sgr {100}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22] " +[sgr {100}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, variant with N value, 1 default loaded, render on loaded tag, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} +set tserr "variant/1.0{bar=val1,val2,val3:foo=val1} Key: -{variant=value} =auto-loaded " +{variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr unsetenv_loaded_module @@ -330,58 +329,58 @@ setenv_var TESTSUITE_VARIANT 13 # correct column count (with default variant value, with keys) set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 -[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] '[sgr 1]variant[sgr 22]/w s' +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 +[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] '[sgr 1]variant[sgr 22]/w s' Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -w 120 variant} OK $tserr # correct column count (with module loaded and default variant value, with keys) setenv_var __MODULES_LMVARIANT variant/1.0&bar|val3|0|1&foo|val1|0|1 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]val3[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 -[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] '[sgr 1]variant[sgr 22]/w s' +[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]val3[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 +[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] '[sgr 1]variant[sgr 22]/w s' Key: -[sgr {90;47}]loaded[sgr 0] [sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -w 120 variant} OK $tserr # no tag sgr setenv_var MODULES_AVAIL_OUTPUT modulepath:alias:dirwsym:sym:key:variant set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 -[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] '[sgr 1]variant[sgr 22]/w s' +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 +[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] '[sgr 1]variant[sgr 22]/w s' Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -w 120 variant} OK $tserr # correct column count (with module loaded and default variant value, no color, with keys) setenv_var MODULES_AVAIL_OUTPUT modulepath:alias:dirwsym:sym:tag:key:variant set tserr "$modlin $mpre $modlin -variant/1.0{bar=val1,val2,val3:%val1} variant/3.0{bar=val1,val2} variant/5.1{%val1,val2,val3} variant/7.1 -variant/2.0{%val1} variant/4.0 variant/6.0 variant/8.0 -variant/2.1/2/1 variant/5.0 variant/7.0{%val1,val2,val3} 'variant/w s' +variant/1.0{bar=val1,val2,val3:%val1} variant/3.0{bar=val1,val2} variant/5.1{%val1,val2,val3} variant/7.1 +variant/2.0{%val1} variant/4.0 variant/6.0 variant/8.0 +variant/2.1/2/1 variant/5.0 variant/7.0{%val1,val2,val3} 'variant/w s' Key: -{%value}={foo=value} {variant=value} =loaded " +{%value}={foo=value} {variant=value} =loaded" testouterr_cmd_re sh {avail -w 120 variant} OK $tserr # correct column count (with module not loaded and default variant value, no color, with keys) unsetenv_var __MODULES_LMVARIANT unsetenv_loaded_module set tserr "$modlin $mpre $modlin -variant/1.0{bar=val1,val2,val3:%val1} variant/3.0{bar=val1,val2} variant/5.1{%val1,val2,val3} variant/7.1 -variant/2.0{%val1} variant/4.0 variant/6.0 variant/8.0 -variant/2.1/2/1 variant/5.0 variant/7.0{%val1,val2,val3} 'variant/w s' +variant/1.0{bar=val1,val2,val3:%val1} variant/3.0{bar=val1,val2} variant/5.1{%val1,val2,val3} variant/7.1 +variant/2.0{%val1} variant/4.0 variant/6.0 variant/8.0 +variant/2.1/2/1 variant/5.0 variant/7.0{%val1,val2,val3} 'variant/w s' Key: -{%value}={foo=value} {variant=value} " +{%value}={foo=value} {variant=value}" testouterr_cmd_re sh {avail -w 120 variant} OK $tserr @@ -390,45 +389,45 @@ testouterr_cmd_re sh {avail -w 120 variant} OK $tserr setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant # module not loaded, variant with 1 value, no default, sgr enabled, no key -set tserr "[sgr 1]variant/2.0[sgr 22][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr 1]variant/2.0[sgr 22][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/2.0} OK $tserr # module not loaded, variant with 1 value, no default, no sgr, no key -set tserr "variant/2.0{%val1} " +set tserr "variant/2.0{%val1}" testouterr_cmd_re sh {avail variant/2.0} OK $tserr # module not loaded, variant with 1 value other with N value, 1 default, sgr enabled, with key setenv_var TESTSUITE_VARIANT 13 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module not loaded, variant with 1 value other with N value, 1 default, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:%val1} +set tserr "variant/1.0{bar=val1,val2,val3:%val1} Key: -{%value}={foo=value} {variant=value} " +{%value}={foo=value} {variant=value}" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module not loaded, variant with 1 value, 1 default but different than value, sgr enabled, no key setenv_var TESTSUITE_VARIANT 25 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val2[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module not loaded, variant with 1 value, 1 default but different than value, no sgr, no key -set tserr "variant/1.0{%val2} " +set tserr "variant/1.0{%val2}" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module not loaded, variant with N value, no default, sgr enabled, no key -set tserr "[sgr 1]variant/5.1[sgr 22][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr 1]variant/5.1[sgr 22][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/5.1} OK $tserr # module not loaded, variant with N value, 1 default but different than value, sgr enabled, no key setenv_var TESTSUITE_VARIANT 21 -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module not loaded, variant with N value, 1 default but different than value, sgr enabled, no key set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --terse --color=always variant/1.0} OK $tserr # module not loaded, variant with N value, 1 default but different than value, no sgr, no key -set tserr "variant/1.0{%val2,val3} " +set tserr "variant/1.0{%val2,val3}" testouterr_cmd_re sh {avail variant/1.0} OK $tserr @@ -437,50 +436,50 @@ testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, variant with 1 value, no default, sgr enabled, no key setenv_loaded_module [list variant/2.0] [list $mp/variant/2.0] setenv_var __MODULES_LMVARIANT variant/2.0&foo|val1|0|0 -set tserr "[sgr {90;47;1}]variant/2.0[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/2.0[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/2.0} OK $tserr # module loaded, variant with 1 value, no default, no sgr, no key -set tserr "variant/2.0{%val1} " +set tserr "variant/2.0{%val1} " testouterr_cmd_re sh {avail variant/2.0} OK $tserr # module loaded, variant with 1 value other with N values, 1 default not loaded, sgr enabled, with key setenv_var TESTSUITE_VARIANT 13 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&bar|val1|0|0&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, variant with 1 value other with N values, 1 default not loaded, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:%val1} +set tserr "variant/1.0{bar=val1,val2,val3:%val1} Key: -{%value}={foo=value} {variant=value} =loaded " +{%value}={foo=value} {variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, variant with 1 value other with N values, 1 default loaded, sgr enabled, no key setenv_var __MODULES_LMVARIANT variant/1.0&bar|val2|0|1&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, variant with 1 value other with N values, 1 default loaded, sgr enabled, no key, terse mode set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail -t --color=always variant/1.0} OK $tserr # module loaded, variant with 1 value other with N values, 1 default loaded, no sgr, no key -set tserr "variant/1.0{bar=val1,val2,val3:%val1} " +set tserr "variant/1.0{bar=val1,val2,val3:%val1} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, variant with 1 value, 1 default but different than value, sgr enabled, no key setenv_var TESTSUITE_VARIANT 25 setenv_var __MODULES_LMVARIANT variant/1.0&foo|val2|0|0 -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {90;47}]val2[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {90;47}]val2[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, variant with 1 value, 1 default but different than value, no sgr, no key -set tserr "variant/1.0{%val2} " +set tserr "variant/1.0{%val2} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, variant with N value, no default, no sgr, no key setenv_loaded_module [list variant/5.1] [list $mp/variant/5.1] setenv_var __MODULES_LMVARIANT variant/5.1&foo|val1|0|0 -set tserr "[sgr {90;47;1}]variant/5.1[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/5.1[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/5.1} OK $tserr # module loaded, variant with N value, 1 default loaded, different loaded tag abbrev, sgr enabled, with key setenv_var TESTSUITE_VARIANT 13 @@ -489,31 +488,31 @@ setenv_var __MODULES_LMVARIANT variant/1.0&bar|val2|0|1&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant setenv_var MODULES_TAG_ABBREV {loaded=foo} setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109:foo=92;47" -set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {92;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {92;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, variant with N value, 1 default loaded, different loaded tag abbrev, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:%val1} +set tserr "variant/1.0{bar=val1,val2,val3:%val1} Key: -{%value}={foo=value} {variant=value} =loaded " +{%value}={foo=value} {variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, variant with N value, 1 default loaded, render on loaded tag, sgr enabled, with key unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" setenv_var MODULES_TAG_COLOR_NAME L -set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {90;47}]L[sgr 0][sgr 2]>[sgr 22] +set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {90;47}]L[sgr 0][sgr 2]>[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, variant with N value, 1 default loaded, render on loaded tag, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:%val1} +set tserr "variant/1.0{bar=val1,val2,val3:%val1} Key: -{%value}={foo=value} {variant=value} =loaded " +{%value}={foo=value} {variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr @@ -523,50 +522,50 @@ testouterr_cmd_re sh {avail variant/1.0} OK $tserr setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant setenv_loaded_module [list variant/2.0] [list $mp/variant/2.0] [list variant/2.0] setenv_var __MODULES_LMVARIANT variant/2.0&foo|val1|0|0 -set tserr "[sgr {100;1}]variant/2.0[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/2.0[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/2.0} OK $tserr # module auto-loaded, variant with 1 value, no default, no sgr, no key -set tserr "variant/2.0{%val1} " +set tserr "variant/2.0{%val1} " testouterr_cmd_re sh {avail variant/2.0} OK $tserr # module auto-loaded, variant with 1 value other with N values, 1 default not loaded, sgr enabled, with key setenv_var TESTSUITE_VARIANT 13 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] [list variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&bar|val1|0|0&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr {100}]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr {100}]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, variant with 1 value other with N values, 1 default not loaded, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:%val1} +set tserr "variant/1.0{bar=val1,val2,val3:%val1} Key: -{%value}={foo=value} {variant=value} =auto-loaded " +{%value}={foo=value} {variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, variant with 1 value other with N values, 1 default loaded, sgr enabled, no key setenv_var __MODULES_LMVARIANT variant/1.0&bar|val2|0|1&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, variant with 1 value other with N values, 1 default loaded, sgr enabled, no key, terse mode set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail -t --color=always variant/1.0} OK $tserr # module auto-loaded, variant with 1 value other with N values, 1 default loaded, no sgr, no key -set tserr "variant/1.0{bar=val1,val2,val3:%val1} " +set tserr "variant/1.0{bar=val1,val2,val3:%val1} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, variant with 1 value, 1 default but different than value, sgr enabled, no key setenv_var TESTSUITE_VARIANT 25 setenv_var __MODULES_LMVARIANT variant/1.0&foo|val2|0|0 -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {100}]val2[sgr 0][sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {100}]val2[sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, variant with 1 value, 1 default but different than value, no sgr, no key -set tserr "variant/1.0{%val2} " +set tserr "variant/1.0{%val2} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, variant with N value, no default, no sgr, no key setenv_loaded_module [list variant/5.1] [list $mp/variant/5.1] [list variant/5.1] setenv_var __MODULES_LMVARIANT variant/5.1&foo|val1|0|0 -set tserr "[sgr {100;1}]variant/5.1[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/5.1[sgr 0][sgr 2]{[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/5.1} OK $tserr # module auto-loaded, variant with N value, 1 default loaded, different loaded tag abbrev, sgr enabled, with key setenv_var TESTSUITE_VARIANT 13 @@ -575,30 +574,30 @@ setenv_var __MODULES_LMVARIANT variant/1.0&bar|val2|0|1&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant setenv_var MODULES_TAG_ABBREV {auto-loaded=foo} setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109:foo=92;47" -set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {92;47}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {92;47}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, variant with N value, 1 default loaded, different loaded tag abbrev, no sgr, with key -set tserr "variant/1.0{bar=val1,val2,val3:%val1} +set tserr "variant/1.0{bar=val1,val2,val3:%val1} Key: -{%value}={foo=value} {variant=value} =auto-loaded " +{%value}={foo=value} {variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, variant with N value, 1 default loaded, render on loaded tag, sgr enabled, no key unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" setenv_var MODULES_TAG_COLOR_NAME aL setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {100}]aL[sgr 0][sgr 2]>[sgr 22] " +set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]%[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {100}]aL[sgr 0][sgr 2]>[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, variant with N value, 1 default loaded, render on loaded tag, no sgr, with key setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "variant/1.0{bar=val1,val2,val3:%val1} +set tserr "variant/1.0{bar=val1,val2,val3:%val1} Key: -{%value}={foo=value} {variant=value} =auto-loaded " +{%value}={foo=value} {variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr unsetenv_loaded_module @@ -616,58 +615,58 @@ setenv_var TESTSUITE_VARIANT bool24 # correct column count (with default variant value, with keys) set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 -[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0 '[sgr 1]variant[sgr 22]/w s' +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 +[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0 '[sgr 1]variant[sgr 22]/w s' Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -w 120 variant} OK $tserr # correct column count (with module loaded and default variant value, with keys) setenv_var __MODULES_LMVARIANT variant/1.0&bar|0|1|1&foo|1|1|1 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 -[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0 '[sgr 1]variant[sgr 22]/w s' +[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 +[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0 '[sgr 1]variant[sgr 22]/w s' Key: -[sgr {90;47}]loaded[sgr 0] [sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -w 120 variant} OK $tserr # no tag sgr setenv_var MODULES_AVAIL_OUTPUT modulepath:alias:dirwsym:sym:key:variant set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 -[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0 '[sgr 1]variant[sgr 22]/w s' +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 +[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0 '[sgr 1]variant[sgr 22]/w s' Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -w 120 variant} OK $tserr # correct column count (with module loaded and default variant value, no color, with keys) setenv_var MODULES_AVAIL_OUTPUT modulepath:alias:dirwsym:sym:tag:key:variant set tserr "$modlin $mpre $modlin -variant/1.0{bar=on,off:foo=on,off} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 -variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 -variant/2.1/2/1 variant/5.0 variant/7.0 'variant/w s' +variant/1.0{bar=on,off:foo=on,off} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 +variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 +variant/2.1/2/1 variant/5.0 variant/7.0 'variant/w s' Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail -w 120 variant} OK $tserr # correct column count (with module not loaded and default variant value, no color, with keys) unsetenv_var __MODULES_LMVARIANT unsetenv_loaded_module set tserr "$modlin $mpre $modlin -variant/1.0{bar=on,off:foo=on,off} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 -variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 -variant/2.1/2/1 variant/5.0 variant/7.0 'variant/w s' +variant/1.0{bar=on,off:foo=on,off} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 +variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 +variant/2.1/2/1 variant/5.0 variant/7.0 'variant/w s' Key: -{variant=value} " +{variant=value}" testouterr_cmd_re sh {avail -w 120 variant} OK $tserr @@ -677,27 +676,27 @@ setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant # module not loaded, boolean variant, no default, sgr enabled, no key setenv_var TESTSUITE_VARIANT bool23 -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module not loaded, boolean variant, no default, sgr enabled, no key, terse mode set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always --terse variant/1.0} OK $tserr # module not loaded, boolean variant, no default, no sgr, no key -set tserr "variant/1.0{bar=on,off:foo=on,off} " +set tserr "variant/1.0{bar=on,off:foo=on,off}" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module not loaded, boolean variant, 1 default, sgr enabled, with key setenv_var TESTSUITE_VARIANT bool24 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module not loaded, boolean variant, 1 default, no sgr, with key -set tserr "variant/1.0{bar=on,off:foo=on,off} +set tserr "variant/1.0{bar=on,off:foo=on,off} Key: -{variant=value} " +{variant=value}" testouterr_cmd_re sh {avail variant/1.0} OK $tserr @@ -708,67 +707,67 @@ setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant setenv_var TESTSUITE_VARIANT bool23 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&bar|0|1|0&foo|1|1|0 -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, boolean variant, no default, sgr enabled, no key, terse mode set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always --terse variant/1.0} OK $tserr # module loaded, boolean variant, no default, no sgr, no key -set tserr "variant/1.0{bar=on,off:foo=on,off} " +set tserr "variant/1.0{bar=on,off:foo=on,off} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, boolean variant, 1 default not loaded, sgr enabled, with key setenv_var TESTSUITE_VARIANT bool24 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&bar|1|1|0&foo|0|1|0 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]off[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]off[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, boolean variant, 1 default not loaded, no sgr, with key -set tserr "variant/1.0{bar=on,off:foo=on,off} +set tserr "variant/1.0{bar=on,off:foo=on,off} Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, sgr enabled, no key setenv_var __MODULES_LMVARIANT variant/1.0&bar|0|1|1&foo|1|1|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, no sgr, no key -set tserr "variant/1.0{bar=on,off:foo=on,off} " +set tserr "variant/1.0{bar=on,off:foo=on,off} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, different loaded tag abbrev, sgr enabled, with key setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant setenv_var MODULES_TAG_ABBREV {loaded=foo} setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109:foo=92;47" -set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {92;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {92;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, different loaded tag abbrev, no sgr, with key -set tserr "variant/1.0{bar=on,off:foo=on,off} +set tserr "variant/1.0{bar=on,off:foo=on,off} Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, render on loaded tag, sgr enabled, with key unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" setenv_var MODULES_TAG_COLOR_NAME L -set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {90;47}]L[sgr 0][sgr 2]>[sgr 22] +set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {90;47}]L[sgr 0][sgr 2]>[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, render on loaded tag, no sgr, with key -set tserr "variant/1.0{bar=on,off:foo=on,off} +set tserr "variant/1.0{bar=on,off:foo=on,off} Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr @@ -779,67 +778,67 @@ setenv_var TESTSUITE_VARIANT bool23 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] [list variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&bar|0|1|0&foo|1|1|0 -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {100}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {100}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, boolean variant, no default, sgr enabled, no key, terse mode set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {100}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always --terse variant/1.0} OK $tserr # module auto-loaded, boolean variant, no default, no sgr, no key -set tserr "variant/1.0{bar=on,off:foo=on,off} " +set tserr "variant/1.0{bar=on,off:foo=on,off} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default not loaded, sgr enabled, with key setenv_var TESTSUITE_VARIANT bool24 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] [list variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&bar|1|1|0&foo|0|1|0 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {100}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {100}]off[sgr 0][sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93][sgr {100}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {100}]off[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr {100}]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr {100}]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default not loaded, no sgr, with key -set tserr "variant/1.0{bar=on,off:foo=on,off} +set tserr "variant/1.0{bar=on,off:foo=on,off} Key: -{variant=value} =auto-loaded " +{variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, sgr enabled, no key setenv_var __MODULES_LMVARIANT variant/1.0&bar|0|1|1&foo|1|1|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, no sgr, no key -set tserr "variant/1.0{bar=on,off:foo=on,off} " +set tserr "variant/1.0{bar=on,off:foo=on,off} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, different loaded tag abbrev, sgr enabled, with key setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant setenv_var MODULES_TAG_ABBREV {auto-loaded=foo} setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109:foo=92;47" -set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;92;47}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {92;47}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {92;47}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, different loaded tag abbrev, no sgr, with key -set tserr "variant/1.0{bar=on,off:foo=on,off} +set tserr "variant/1.0{bar=on,off:foo=on,off} Key: -{variant=value} =auto-loaded " +{variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, render on loaded tag, sgr enabled, with key unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" setenv_var MODULES_TAG_COLOR_NAME aL -set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {100}]aL[sgr 0][sgr 2]>[sgr 22] +set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {100}]aL[sgr 0][sgr 2]>[sgr 22] Key: -[sgr {100}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22] " +[sgr {100}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, render on loaded tag, no sgr, with key -set tserr "variant/1.0{bar=on,off:foo=on,off} +set tserr "variant/1.0{bar=on,off:foo=on,off} Key: -{variant=value} =auto-loaded " +{variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr unsetenv_loaded_module @@ -856,46 +855,46 @@ setenv_var TESTSUITE_VARIANT free1 # correct column count (with default variant value, with keys) set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 -[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0 '[sgr 1]variant[sgr 22]/w s' +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 +[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0 '[sgr 1]variant[sgr 22]/w s' Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -w 120 variant} OK $tserr # correct column count (with module loaded and default variant value, with keys) setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 -[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0 '[sgr 1]variant[sgr 22]/w s' +[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/3.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/7.1 +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] [sgr 1]variant[sgr 22]/4.0 [sgr 1]variant[sgr 22]/6.0 [sgr 1]variant[sgr 22]/8.0 +[sgr 1]variant[sgr 22]/2.1/2/1 [sgr 1]variant[sgr 22]/5.0 [sgr 1]variant[sgr 22]/7.0 '[sgr 1]variant[sgr 22]/w s' Key: -[sgr {90;47}]loaded[sgr 0] [sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr {1;94}]modulepath[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always -w 120 variant} OK $tserr # correct column count (with module loaded and default variant value, no color, with keys) set tserr "$modlin $mpre $modlin -variant/1.0{foo=val1,\\*} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 -variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 -variant/2.1/2/1 variant/5.0 variant/7.0 'variant/w s' +variant/1.0{foo=val1,\\*} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 +variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 +variant/2.1/2/1 variant/5.0 variant/7.0 'variant/w s' Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail -w 120 variant} OK $tserr # correct column count (with module not loaded and default variant value, no color, with keys) unsetenv_var __MODULES_LMVARIANT unsetenv_loaded_module set tserr "$modlin $mpre $modlin -variant/1.0{foo=val1,\\*} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 -variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 -variant/2.1/2/1 variant/5.0 variant/7.0 'variant/w s' +variant/1.0{foo=val1,\\*} variant/3.0{bar=val1,val2} variant/5.1{foo=val1,val2,val3} variant/7.1 +variant/2.0{foo=val1} variant/4.0 variant/6.0 variant/8.0 +variant/2.1/2/1 variant/5.0 variant/7.0 'variant/w s' Key: -{variant=value} " +{variant=value}" testouterr_cmd_re sh {avail -w 120 variant} OK $tserr @@ -905,27 +904,27 @@ setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant # module not loaded, boolean variant, no default, sgr enabled, no key setenv_var TESTSUITE_VARIANT free3 -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module not loaded, boolean variant, no default, sgr enabled, no key, terse mode set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always --terse variant/1.0} OK $tserr # module not loaded, boolean variant, no default, no sgr, no key -set tserr "variant/1.0{foo=\\*} " +set tserr "variant/1.0{foo=\\*}" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module not loaded, boolean variant, 1 default, sgr enabled, with key setenv_var TESTSUITE_VARIANT free1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr 1]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module not loaded, boolean variant, 1 default, no sgr, with key -set tserr "variant/1.0{foo=val1,\\*} +set tserr "variant/1.0{foo=val1,\\*} Key: -{variant=value} " +{variant=value}" testouterr_cmd_re sh {avail variant/1.0} OK $tserr @@ -936,67 +935,67 @@ setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant setenv_var TESTSUITE_VARIANT free3 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|0 -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, boolean variant, no default, sgr enabled, no key, terse mode set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always --terse variant/1.0} OK $tserr # module loaded, boolean variant, no default, no sgr, no key -set tserr "variant/1.0{foo=val1,\\*} " +set tserr "variant/1.0{foo=val1,\\*} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, boolean variant, 1 default not loaded, sgr enabled, with key setenv_var TESTSUITE_VARIANT free1 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&foo|val2|0|0 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {90;47}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, boolean variant, 1 default not loaded, no sgr, with key -set tserr "variant/1.0{foo=val2,val1,\\*} +set tserr "variant/1.0{foo=val2,val1,\\*} Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, sgr enabled, no key setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {90;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, no sgr, no key -set tserr "variant/1.0{foo=val1,\\*} " +set tserr "variant/1.0{foo=val1,\\*} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, different loaded tag abbrev, sgr enabled, with key setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant setenv_var MODULES_TAG_ABBREV {loaded=foo} setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109:foo=92;47" -set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {92;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {92;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, different loaded tag abbrev, no sgr, with key -set tserr "variant/1.0{foo=val1,\\*} +set tserr "variant/1.0{foo=val1,\\*} Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, render on loaded tag, sgr enabled, with key unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" setenv_var MODULES_TAG_COLOR_NAME L -set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {90;47}]L[sgr 0][sgr 2]>[sgr 22] +set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;90;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {90;47}]L[sgr 0][sgr 2]>[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module loaded, boolean variant, 1 default loaded, render on loaded tag, no sgr, with key -set tserr "variant/1.0{foo=val1,\\*} +set tserr "variant/1.0{foo=val1,\\*} Key: -{variant=value} =loaded " +{variant=value} =loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr @@ -1007,67 +1006,67 @@ setenv_var TESTSUITE_VARIANT free3 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] [list variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|0 -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, boolean variant, no default, sgr enabled, no key, terse mode set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always --terse variant/1.0} OK $tserr # module auto-loaded, boolean variant, no default, no sgr, no key -set tserr "variant/1.0{foo=val1,\\*} " +set tserr "variant/1.0{foo=val1,\\*} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default not loaded, sgr enabled, with key setenv_var TESTSUITE_VARIANT free1 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] [list variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&foo|val2|0|0 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {100}]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr {100}]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr {100}]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default not loaded, no sgr, with key -set tserr "variant/1.0{foo=val2,val1,\\*} +set tserr "variant/1.0{foo=val2,val1,\\*} Key: -{variant=value} =auto-loaded " +{variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, sgr enabled, no key setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1 setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:variant -set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] " +set tserr "[sgr {100;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, no sgr, no key -set tserr "variant/1.0{foo=val1,\\*} " +set tserr "variant/1.0{foo=val1,\\*} " testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, different loaded tag abbrev, sgr enabled, with key setenv_var MODULES_AVAIL_OUTPUT alias:dirwsym:sym:tag:key:variant setenv_var MODULES_TAG_ABBREV {auto-loaded=foo} setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109:foo=92;47" -set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] +set tserr "[sgr {92;47;1}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;92;47}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {92;47}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {92;47}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, different loaded tag abbrev, no sgr, with key -set tserr "variant/1.0{foo=val1,\\*} +set tserr "variant/1.0{foo=val1,\\*} Key: -{variant=value} =auto-loaded " +{variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, render on loaded tag, sgr enabled, with key unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" setenv_var MODULES_TAG_COLOR_NAME aL -set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {100}]aL[sgr 0][sgr 2]>[sgr 22] +set tserr "[sgr {1}]variant/1.0[sgr 22][sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr {4;100}]val1[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]\\*[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22][sgr {100}]aL[sgr 0][sgr 2]>[sgr 22] Key: -[sgr {100}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22] " +[sgr {100}]auto-loaded[sgr 0] [sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]<[sgr 22]module-tag[sgr 2]>[sgr 22]" testouterr_cmd_re sh {avail --color=always variant/1.0} OK $tserr # module auto-loaded, boolean variant, 1 default loaded, render on loaded tag, no sgr, with key -set tserr "variant/1.0{foo=val1,\\*} +set tserr "variant/1.0{foo=val1,\\*} Key: -{variant=value} =auto-loaded " +{variant=value} =auto-loaded" testouterr_cmd_re sh {avail variant/1.0} OK $tserr unsetenv_loaded_module @@ -1083,39 +1082,39 @@ setenv_var MODULES_AVAIL_OUTPUT modulepath:alias:dirwsym:sym:tag:key:variant setenv_var TESTSUITE_VARIANT 13 set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1} OK $tserr # no hi sgr key defined setenv_var MODULES_COLORS "db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -variant/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] -variant/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] -variant/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] -variant/7.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +variant/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] +variant/2.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2]}[sgr 22] +variant/5.1[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +variant/7.0[sgr 2]{[sgr 22][sgr 93]foo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1} OK $tserr # no va sgr key defined setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22]bar=val1[sgr 2],[sgr 22][sgr 4]val2[sgr 0][sgr 2],[sgr 22]val3[sgr 2]:[sgr 22][sgr 1]foo[sgr 22]=[sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 1]foo[sgr 22]=[sgr 1]val1[sgr 22][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 1]foo[sgr 22]=[sgr 1]val1[sgr 22][sgr 2],[sgr 22]val2[sgr 2],[sgr 22]val3[sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 1]foo[sgr 22]=[sgr 1]val1[sgr 22][sgr 2],[sgr 22]val2[sgr 2],[sgr 22]val3[sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22]bar=val1[sgr 2],[sgr 22][sgr 4]val2[sgr 0][sgr 2],[sgr 22]val3[sgr 2]:[sgr 22][sgr 1]foo[sgr 22]=[sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 1]foo[sgr 22]=[sgr 1]val1[sgr 22][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 1]foo[sgr 22]=[sgr 1]val1[sgr 22][sgr 2],[sgr 22]val2[sgr 2],[sgr 22]val3[sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 1]foo[sgr 22]=[sgr 1]val1[sgr 22][sgr 2],[sgr 22]val2[sgr 2],[sgr 22]val3[sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22]variant=value[sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22]variant=value[sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1} OK $tserr @@ -1123,29 +1122,29 @@ testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1} OK $tserr setenv_var TESTSUITE_VARIANT highlight1 setenv_var MODULES_COLORS "hi=1:db=2:tr=2:se=2:er=91:wa=93:me=95:in=94:mp=1;94:di=94:al=96:va=93:sy=95:de=4:cm=92:aL=100:L=90;47:H=2:F=41:nF=43:S=46:sS=44:kL=30;48;5;109" set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]fooo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]fooo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1} OK $tserr set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1 fooo=val2} OK $tserr # no module name and version specification, only variant specified set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -variant/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +variant/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always foo=val1 fooo=val2} OK $tserr @@ -1153,11 +1152,11 @@ testouterr_cmd_re sh {avail -w 40 --color=always foo=val1 fooo=val2} OK $tserr setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1&fooo|val2|0|1&ofoo|val3|0|0 set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr {4;90;47}][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]val3[sgr 0][sgr 0][sgr 2]}[sgr 22] +[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr {4;90;47}][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}]val3[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1 fooo=val2} OK $tserr unsetenv_loaded_module unsetenv_var __MODULES_LMVARIANT @@ -1168,39 +1167,41 @@ setenv_var TESTSUITE_VARIANT 13 setenv_var MODULES_VARIANT_SHORTCUT foo=% set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/7.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1} OK $tserr testouterr_cmd_re sh {avail -w 40 --color=always variant %val1} OK $tserr setenv_var TESTSUITE_VARIANT highlight1 setenv_var MODULES_VARIANT_SHORTCUT foo=%:fooo=& set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]&[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] -[sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]&[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/2.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/5.1[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 1]val1[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93]val2[sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] -[sgr 4]default-version[sgr 0] -[sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] -[sgr 2]{[sgr 22][sgr 93]&value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]fooo=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] +[sgr 4]default-version[sgr 0] +[sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 2]{[sgr 22][sgr 93]&value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]fooo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1} OK $tserr set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]&[sgr 22][sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]&[sgr 22][sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] -[sgr 4]default-version[sgr 0] -[sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] -[sgr 2]{[sgr 22][sgr 93]&value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]fooo=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] +[sgr 4]default-version[sgr 0] +[sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 2]{[sgr 22][sgr 93]&value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]fooo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail -w 40 --color=always variant %val1 fooo=val2} OK $tserr testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1 &val2} OK $tserr @@ -1208,22 +1209,22 @@ testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1 &val2} OK $tse setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] [list variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1&fooo|val2|0|1&ofoo|val3|0|0 set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr {100;1}]variant[sgr {0;100}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr {4;100}][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]&[sgr 22][sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {100}]val3[sgr 0][sgr 0][sgr 2]}[sgr 22] +[sgr {100;1}]variant[sgr {0;100}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr {4;100}][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]&[sgr 22][sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {100}]val3[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]&value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]fooo=value[sgr 0][sgr 2]}[sgr 22] -[sgr 100]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]&value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]fooo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 100]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " testouterr_cmd_re sh {avail -w 40 --color=always variant %val1 &val2} OK $tserr # no module name and version specification, only variant specified set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr {100}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr {4;100}][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]&[sgr 22][sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {100}]val3[sgr 0][sgr 0][sgr 2]}[sgr 22] +[sgr {100}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr {4;100}][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]&[sgr 22][sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;100}][sgr 1]val2[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {100}]val3[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]&value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]fooo=value[sgr 0][sgr 2]}[sgr 22] -[sgr 100]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]&value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]fooo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 100]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " testouterr_cmd_re sh {avail -w 40 --color=always %val1 &val2} OK $tserr unsetenv_loaded_module @@ -1235,63 +1236,63 @@ unsetenv_var MODULES_VARIANT_SHORTCUT setenv_var TESTSUITE_VARIANT bool24 set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]on[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93]bar=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]on[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant +foo} OK $tserr testouterr_cmd_re sh {avail -w 40 --color=always variant foo=on} OK $tserr set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]bar[sgr 22]=[sgr 0][sgr 93][sgr 1]on[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 1]off[sgr 22][sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]bar[sgr 22]=[sgr 0][sgr 93][sgr 1]on[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 1]off[sgr 22][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant foo=off +bar} OK $tserr testouterr_cmd_re sh {avail -w 40 --color=always variant foo=n bar=y} OK $tserr testouterr_cmd_re sh {avail -w 40 --color=always variant foo=false bar=true} OK $tserr set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]bar[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]bar[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]foo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant -bar} OK $tserr set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]bar[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 1]off[sgr 22][sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]bar[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 1]off[sgr 22][sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant -bar -foo} OK $tserr setenv_var TESTSUITE_VARIANT highlight2 set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]on[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93]fooo=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]on[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93]fooo=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant +foo} OK $tserr set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]on[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93][sgr 1]on[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4][sgr 1]on[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93][sgr 1]on[sgr 22][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant +foo fooo=on} OK $tserr set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 1]off[sgr 22][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 1]off[sgr 22][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant foo=off -fooo} OK $tserr @@ -1299,20 +1300,20 @@ testouterr_cmd_re sh {avail -w 40 --color=always variant foo=off -fooo} OK $tser setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&foo|0|1|0&fooo|0|1|1&ofoo|1|1|1 set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr {4;90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +[sgr {90;47;1}]variant[sgr {0;90;47}]/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr {4;90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail -w 40 --color=always variant foo=off -fooo} OK $tserr # no module name and version specification, only variant specified set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr {90;47}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr {4;90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +[sgr {90;47}]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr {90;47}][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr {4;90;47}][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr {4;90;47}]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {90;47}]loaded[sgr 0] [sgr 4]default-version[sgr 0] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {avail -w 40 --color=always foo=off -fooo} OK $tserr unsetenv_loaded_module @@ -1322,20 +1323,20 @@ unsetenv_var __MODULES_LMVARIANT setenv_var MODULES_VARIANT_SHORTCUT foo=% set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 4][sgr 1]on[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93]fooo=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 4][sgr 1]on[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93]fooo=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]off[sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " testouterr_cmd_re sh {avail -w 40 --color=always variant +foo} OK $tserr testouterr_cmd_re sh {avail -w 40 --color=always variant foo=true} OK $tserr set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 4][sgr 1]on[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]%[sgr 22][sgr 0][sgr 93][sgr 4][sgr 1]on[sgr 22][sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]on[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4][sgr 1]off[sgr 22][sgr 0][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93][sgr 4]on[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]off[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 93]foo=value[sgr 0][sgr 2]}[sgr 22] +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] " testouterr_cmd_re sh {avail -w 40 --color=always variant %on -fooo} OK $tserr unsetenv_var MODULES_VARIANT_SHORTCUT @@ -1344,19 +1345,19 @@ unsetenv_var MODULES_VARIANT_SHORTCUT # special variant value and free variant value setenv_var TESTSUITE_VARIANT highlight3 set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93]\\\*[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]v\\\*l2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 1]v.l3[sgr 22][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +[sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93]\\\*[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]v\\\*l2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 1]v.l3[sgr 22][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always variant foo=val1 fooo=v.l3} OK $tserr # no module name and version specification, only variant specified set tserr "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin -variant/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93]\\\*[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]v\\\*l2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 1]v.l3[sgr 22][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] +variant/1.0[sgr 2]{[sgr 22][sgr 93][sgr 1]foo[sgr 22]=[sgr 0][sgr 93]\\\*[sgr 0][sgr 2]:[sgr 22][sgr 93][sgr 1]fooo[sgr 22]=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]v\\\*l2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93][sgr 1]v.l3[sgr 22][sgr 0][sgr 2]:[sgr 22][sgr 93]ofoo=[sgr 0][sgr 93]val1[sgr 0][sgr 2],[sgr 22][sgr 93][sgr 4]val2[sgr 0][sgr 0][sgr 2],[sgr 22][sgr 93]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] +[sgr {1;94}]modulepath[sgr 0] [sgr 2]{[sgr 22][sgr 93]variant=value[sgr 0][sgr 2]}[sgr 22] [sgr 4]default-version[sgr 0] " testouterr_cmd_re sh {avail -w 40 --color=always foo=val1 fooo=v.l3} OK $tserr diff --git a/testsuite/modules.61-coll/020-savelist.exp b/testsuite/modules.61-coll/020-savelist.exp index 28382a8b2..10a7ff153 100644 --- a/testsuite/modules.61-coll/020-savelist.exp +++ b/testsuite/modules.61-coll/020-savelist.exp @@ -26,11 +26,11 @@ set header_coll [msg_named_coll] set header_target_coll [msg_named_coll 0 $colltarget] set header_target_coll_re [escre $header_target_coll] set coll_list "$coll1\n$coll2\n$coll3\n$coll4f\n$coll6f\n$colld\ninfocmd\ninfocmdexp" -set coll_list_idx " 1) $coll1 3) $coll3 5) $coll6f 7) infocmd \n 2) $coll2 4) $coll4f 6) $colld 8) infocmdexp " +set coll_list_idx " 1) $coll1 3) $coll3 5) $coll6f 7) infocmd \n 2) $coll2 4) $coll4f 6) $colld 8) infocmdexp" set lprops "\\s+\[0-9\/]{10} \[0-9:]{8}" set coll_list_long "$coll1$lprops\n$coll2$lprops\n$coll3$lprops\n$coll4f$lprops\n$coll6f$lprops\n$colld$lprops\ninfocmd$lprops\ninfocmdexp$lprops" set coll_target_list "$coll4\n$coll6" -set coll_target_list_idx " 1) $coll4 2) $coll6 " +set coll_target_list_idx " 1) $coll4 2) $coll6" set coll_target_list_long "$coll4$lprops\n$coll6$lprops" diff --git a/testsuite/modules.61-coll/021-savelist-search.exp b/testsuite/modules.61-coll/021-savelist-search.exp index 73b5339b1..0d471ae4c 100644 --- a/testsuite/modules.61-coll/021-savelist-search.exp +++ b/testsuite/modules.61-coll/021-savelist-search.exp @@ -29,13 +29,13 @@ testouterr_cmd sh {savelist foo} OK $tserr # set HOME to location containing collections setenv_var HOME $homewithcoll -set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp " +set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp" testouterr_cmd sh {savelist infocmd} OK $tserr set tserr [msg_no_named_coll 1] testouterr_cmd sh {savelist bar} OK $tserr -set tserr "[msg_named_coll 1]\n 1) coll1 2) infocmdexp " +set tserr "[msg_named_coll 1]\n 1) coll1 2) infocmdexp" testouterr_cmd sh {savelist infocmde coll1} OK $tserr testouterr_cmd sh {savelist infocmde bar coll1} OK $tserr @@ -45,7 +45,7 @@ skip_if_quick_mode # search match & icase tests setenv_var MODULES_SEARCH_MATCH starts_with -set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp " +set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp" testouterr_cmd sh {savelist inf} OK $tserr testouterr_cmd sh {savelist -S info} OK $tserr @@ -67,7 +67,7 @@ testouterr_cmd sh {savelist -i cMd} OK $tserr setenv_var MODULES_SEARCH_MATCH contains -set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp " +set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp" testouterr_cmd sh {savelist info} OK $tserr testouterr_cmd sh {savelist -i info} OK $tserr testouterr_cmd sh {savelist ocm} OK $tserr @@ -80,35 +80,35 @@ testouterr_cmd sh {savelist --starts-with -i cMd} OK $tserr unsetenv_var MODULES_SEARCH_MATCH # --all tests -set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp " +set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp" testouterr_cmd sh {savelist -a info} OK $tserr setenv_var MODULES_COLLECTION_TARGET target set tserr "No matching named collection (for target \"target\")." testouterr_cmd sh {savelist info} OK $tserr set tserr "[msg_named_coll] - 1) $coll1 3) $coll3 5) $coll6f 7) infocmd - 2) $coll2 4) $coll4f 6) $colld 8) infocmdexp " + 1) $coll1 3) $coll3 5) $coll6f 7) infocmd + 2) $coll2 4) $coll4f 6) $colld 8) infocmdexp" testouterr_cmd sh {savelist -w 80 --all} OK $tserr -set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp " +set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp" testouterr_cmd sh {savelist -a info} OK $tserr unsetenv_var MODULES_COLLECTION_TARGET # glob match -set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp " +set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp" testouterr_cmd sh {savelist -S *cmd} OK $tserr testouterr_cmd sh {savelist -S ?nfo} OK $tserr testouterr_cmd sh {savelist -i -S i?fO} OK $tserr testouterr_cmd sh {savelist -C ocm?} OK $tserr set tserr "[msg_named_coll 1] - 1) $coll1 3) $coll3 5) $coll6f 7) infocmd - 2) $coll2 4) $coll4f 6) $colld 8) infocmdexp " + 1) $coll1 3) $coll3 5) $coll6f 7) infocmd + 2) $coll2 4) $coll4f 6) $colld 8) infocmdexp" testouterr_cmd sh {savelist -w 80 *} OK $tserr testouterr_cmd sh {savelist -w 80 ?} OK $tserr # ml -set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp " +set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp" testouterr_cmd sh {ml savelist info} OK $tserr if {$install_icase eq {search}} { testouterr_cmd sh {ml savelist INFO} OK $tserr @@ -122,10 +122,10 @@ set tserr [msg_no_named_coll 1] testouterr_cmd sh {ml savelist foo} OK $tserr setenv_var MODULES_COLLECTION_TARGET target set tserr "[msg_named_coll] - 1) $coll1 3) $coll3 5) $coll6f 7) infocmd - 2) $coll2 4) $coll4f 6) $colld 8) infocmdexp " + 1) $coll1 3) $coll3 5) $coll6f 7) infocmd + 2) $coll2 4) $coll4f 6) $colld 8) infocmdexp" testouterr_cmd sh {ml savelist -w 80 --all} OK $tserr -set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp " +set tserr "[msg_named_coll 1]\n 1) infocmd 2) infocmdexp" testouterr_cmd sh {ml savelist -a info} OK $tserr unsetenv_var MODULES_COLLECTION_TARGET diff --git a/testsuite/modules.70-maint/040-list.exp b/testsuite/modules.70-maint/040-list.exp index feead1a54..ce1ea0b41 100644 --- a/testsuite/modules.70-maint/040-list.exp +++ b/testsuite/modules.70-maint/040-list.exp @@ -30,7 +30,7 @@ set header $cur_loaded # set ts_csh "$header\n$module" -set ts_csh_num "$header\n 1) $module " +set ts_csh_num "$header\n 1) $module" # # Set up the environment pointing to the single module file being load @@ -90,7 +90,7 @@ testouterr_cmd "csh" "-t list" "OK" "$ts_csh" setenv_loaded_module loc_rcv1/1.1 $modpath/loc_rcv1/.base setenv_var __MODULES_LMALTNAME loc_rcv1/1.1&loc_rcv1/foo -testouterr_cmd sh list OK "$cur_loaded\n 1) loc_rcv1/1.1(foo) \n\nKey:\n(symbolic-version) " +testouterr_cmd sh list OK "$cur_loaded\n 1) loc_rcv1/1.1(foo)\n\nKey:\n(symbolic-version)" unsetenv_var __MODULES_LMALTNAME @@ -130,15 +130,15 @@ if {![info exists term_cols]} { send_user "\tskipping terminal width-specific tests, cannot set width\n" } else { -testouterr_cmd sh list OK "$header\n 1) $module " +testouterr_cmd sh list OK "$header\n 1) $module" # test with slightly bigger width exec stty cols 17 -testouterr_cmd sh list OK "$header\n 1) $module " +testouterr_cmd sh list OK "$header\n 1) $module" # test with slightly smaller width exec stty cols 15 -testouterr_cmd sh list OK "$header\n 1) $module " +testouterr_cmd sh list OK "$header\n 1) $module" # restore terminal width exec stty cols $term_cols @@ -158,50 +158,58 @@ foreach mod $loaded_mod_list { setenv_loaded_module $loaded_mod_list $loaded_file_list set tserr "$cur_loaded - 1) bzip2/1.0.8-gcc-13.1.1-rfmtfef 45) py-python-dateutil/2.8.2-gcc-13.1.1-lemasmo 89) py-send2trash/1.8.0-gcc-13.1.1-o77zxa4 133) glx/1.4-gcc-13.1.1-pelrczr - 2) libmd/1.0.4-gcc-13.1.1-wlbjwvc 46) libsodium/1.0.18-gcc-13.1.1-64q2mkx 90) py-terminado/0.15.0-gcc-13.1.1-zu7aefo 134) pixman/0.42.2-gcc-13.1.1-rm72uqr - 3) libbsd/0.11.7-gcc-13.1.1-3vw6p4u 47) libzmq/4.3.4-gcc-13.1.1-jmvpxdy 91) py-notebook/6.4.12-gcc-13.1.1-i3dzkfr 135) cairo/1.16.0-gcc-13.1.1-u23zqfk - 4) expat/2.5.0-gcc-13.1.1-hx3rbqf 48) py-pycparser/2.21-gcc-13.1.1-kdlsxfq 92) py-sip/4.19.21-gcc-13.1.1-4ly4jkl 136) gobject-introspection/1.72.1-gcc-13.1.1-4bj2g2m - 5) ncurses/6.4-gcc-13.1.1-mwwshua 49) py-cffi/1.15.1-gcc-13.1.1-hn4n72t 93) assimp/5.2.5-gcc-13.1.1-bgn5aaq 137) icu4c/67.1-gcc-13.1.1-runwlkl - 6) readline/8.2-gcc-13.1.1-2gng7tj 50) py-greenlet/2.0.2-gcc-13.1.1-wr2hlvf 94) double-conversion/3.2.1-gcc-13.1.1-k44rqt5 138) harfbuzz/7.3.0-gcc-13.1.1-dnyj32k - 7) gdbm/1.23-gcc-13.1.1-ws52ulr 51) py-gevent/1.5.0-gcc-13.1.1-wqurm3w 95) font-util/1.4.0-gcc-13.1.1-xs62ukh 139) libjpeg-turbo/2.1.5-gcc-13.1.1-cidcwta - 8) libiconv/1.17-gcc-13.1.1-buqvpnc 52) py-pyzmq/25.0.2-gcc-13.1.1-fboajce 96) libpng/1.6.39-gcc-13.1.1-s7qt3h4 140) libtiff/4.5.0-gcc-13.1.1-pdsybow - 9) xz/5.4.1-gcc-13.1.1-7iagy3z 53) py-tornado/6.2-gcc-13.1.1-4dqlzjj 97) freetype/2.11.1-gcc-13.1.1-c5mcund 141) lcms/2.13.1-gcc-13.1.1-bixpayp - 10) zlib/1.2.13-gcc-13.1.1-yawi3li 54) py-jupyter-client/8.1.0-gcc-13.1.1-3uqtcfu 98) fontconfig/2.14.2-gcc-13.1.1-stcnirz 142) libmng/2.0.3-gcc-13.1.1-hmvk4un - 11) libxml2/2.10.3-gcc-13.1.1-mkrze3k 55) py-nest-asyncio/1.5.6-gcc-13.1.1-sill5t7 99) pkgconf/1.9.5-gcc-13.1.1-bstyanj 143) util-macros/1.19.3-gcc-13.1.1-so2ifer - 12) pigz/2.7-gcc-13.1.1-zzxrt3w 56) py-packaging/23.0-gcc-13.1.1-yw5iqll 100) elfutils/0.189-gcc-13.1.1-hoawipr 144) xkbdata/1.0.1-gcc-13.1.1-jrvfge7 - 13) zstd/1.5.5-gcc-13.1.1-vijq3k5 57) py-psutil/5.9.4-gcc-13.1.1-uolflt3 101) pcre2/10.42-gcc-13.1.1-euchpp4 145) libxkbcommon/1.4.0-gcc-13.1.1-fmd3id2 - 14) tar/1.34-gcc-13.1.1-tlxxh5z 58) py-ipykernel/6.22.0-gcc-13.1.1-nrs3fjt 102) berkeley-db/18.1.40-gcc-13.1.1-lu5ld3m 146) xcb-util/0.4.1-gcc-13.1.1-q6m6m3e - 15) gettext/0.21.1-gcc-13.1.1-hxbj7z6 59) py-jupyterlab-widgets/3.0.3-gcc-13.1.1-z5ebuqm 103) perl/5.36.0-gcc-13.1.1-bm3a4ef 147) xcb-util-image/0.4.1-gcc-13.1.1-356vzc2 - 16) libffi/3.3-gcc-13.1.1-km5fnab 60) py-widgetsnbextension/4.0.3-gcc-13.1.1-pujfw5h 104) glib/2.76.1-gcc-13.1.1-72snmjl 148) xcb-util-keysyms/0.4.1-gcc-13.1.1-jfm2mpe - 17) libxcrypt/4.4.33-gcc-13.1.1-6bni3md 61) py-ipywidgets/8.0.2-gcc-13.1.1-nl6ddfo 105) glproto/1.4.17-gcc-13.1.1-zowvdkj 149) xcb-util-renderutil/0.3.10-gcc-13.1.1-lzkerzt - 18) openssl/1.1.1t-gcc-13.1.1-5dbnq5f 62) py-jupyter-console/6.4.4-gcc-13.1.1-s5356pg 106) libunwind/1.6.2-gcc-13.1.1-eyzaoqj 150) xcb-util-wm/0.4.2-gcc-13.1.1-f2tozd5 - 19) sqlite/3.40.1-gcc-13.1.1-xfie7mz 63) py-soupsieve/2.3.2.post1-gcc-13.1.1-vofrd5z 107) inputproto/2.3.2-gcc-13.1.1-4vc7odx 151) qt/5.15.9-gcc-13.1.1-g4kio4v - 20) util-linux-uuid/2.38.1-gcc-13.1.1-tm27vnw 64) py-beautifulsoup4/4.11.1-gcc-13.1.1-2t7w76n 108) kbproto/1.0.7-gcc-13.1.1-rlqfbfj 152) py-pyqt5/5.13.1-gcc-13.1.1-ok35m3b - 21) python/3.10.10-gcc-13.1.1-m6so4xi 65) py-webencodings/0.5.1-gcc-13.1.1-ax7loza 109) libpthread-stubs/0.4-gcc-13.1.1-2mkjar4 153) py-qtpy/1.11.2-gcc-13.1.1-p2yra55 - 22) py-traitlets/5.9.0-gcc-13.1.1-s2cqdw5 66) py-bleach/5.0.1-gcc-13.1.1-hysrgll 110) xproto/7.0.31-gcc-13.1.1-knjrnpi 154) py-qtconsole/5.2.0-gcc-13.1.1-ekrftgg - 23) py-comm/0.1.3-gcc-13.1.1-osleaxc 67) py-defusedxml/0.7.1-gcc-13.1.1-4gwhjj4 111) libxau/1.0.8-gcc-13.1.1-gsxameq 155) py-jupyter/1.0.0-gcc-13.1.1-rhcbxvx - 24) py-debugpy/1.6.6-gcc-13.1.1-6cfq7f4 68) py-markupsafe/2.1.1-gcc-13.1.1-5ywrrt2 112) libxdmcp/1.1.4-gcc-13.1.1-zumdwqf - 25) py-backcall/0.2.0-gcc-13.1.1-2npgyqq 69) py-jinja2/3.1.2-gcc-13.1.1-s4ti7wu 113) xcb-proto/1.15.2-gcc-13.1.1-5yjb433 - 26) py-decorator/5.1.1-gcc-13.1.1-a22mcmu 70) py-jupyterlab-pygments/0.2.2-gcc-13.1.1-4yclus3 114) libxcb/1.14-gcc-13.1.1-o6ws53x - 27) py-parso/0.8.3-gcc-13.1.1-afbk3zx 71) libgpg-error/1.47-gcc-13.1.1-pugtw6b 115) xextproto/7.3.0-gcc-13.1.1-mlydc5m - 28) py-setuptools/67.6.0-gcc-13.1.1-h64mhap 72) libgcrypt/1.10.2-gcc-13.1.1-2bgxyks 116) xtrans/1.4.0-gcc-13.1.1-uymm7fb - 29) py-jedi/0.18.1-gcc-13.1.1-oqcewms 73) libxslt/1.1.33-gcc-13.1.1-qbhsycz 117) libx11/1.8.4-gcc-13.1.1-32woeto - 30) py-matplotlib-inline/0.1.6-gcc-13.1.1-znyvri3 74) py-lxml/4.9.1-gcc-13.1.1-53vasmi 118) libxext/1.3.3-gcc-13.1.1-l53ow7r - 31) py-ptyprocess/0.7.0-gcc-13.1.1-mfuu3qf 75) py-mistune/2.0.4-gcc-13.1.1-frmt2pz 119) libice/1.0.9-gcc-13.1.1-xtesrco - 32) py-pexpect/4.8.0-gcc-13.1.1-tt2lrts 76) py-fastjsonschema/2.16.3-gcc-13.1.1-l5tn6ts 120) libsm/1.2.3-gcc-13.1.1-rbamduj - 33) py-pickleshare/0.7.5-gcc-13.1.1-fvroijj 77) py-attrs/22.2.0-gcc-13.1.1-cv3dmjk 121) libxt/1.1.5-gcc-13.1.1-zxuq4cg - 34) py-wcwidth/0.2.5-gcc-13.1.1-n6sqsus 78) py-pyrsistent/0.19.3-gcc-13.1.1-4djvk4z 122) binutils/2.40-gcc-13.1.1-oouonwp - 35) py-prompt-toolkit/3.0.31-gcc-13.1.1-hgqriq5 79) py-jsonschema/4.17.3-gcc-13.1.1-utgwib6 123) libpciaccess/0.17-gcc-13.1.1-mdgqh4i - 36) py-pygments/2.13.0-gcc-13.1.1-on5ro7f 80) py-nbformat/5.8.0-gcc-13.1.1-7lttupb 124) hwloc/2.9.1-gcc-13.1.1-wj2soi7 - 37) py-six/1.16.0-gcc-13.1.1-d3dopor 81) py-nbclient/0.7.2-gcc-13.1.1-ickwa2h 125) libedit/3.1-20210216-gcc-13.1.1-4ygsvv6 - 38) py-asttokens/2.0.8-gcc-13.1.1-tkxvwf4 82) py-pandocfilters/1.5.0-gcc-13.1.1-w4z722e 126) llvm/14.0.6-gcc-13.1.1-d4qlss2 - 39) py-executing/1.1.0-gcc-13.1.1-4fwjrct 83) py-tinycss2/1.1.1-gcc-13.1.1-bkongt6 127) renderproto/0.11.1-gcc-13.1.1-n74iax3 - 40) py-pure-eval/0.2.2-gcc-13.1.1-svkighk 84) py-nbconvert/7.0.0-gcc-13.1.1-dkdyupr 128) libxrender/0.9.10-gcc-13.1.1-vrzvhv2 - 41) py-stack-data/0.5.0-gcc-13.1.1-ruzubdq 85) py-argon2-cffi-bindings/21.2.0-gcc-13.1.1-annnlwn 129) randrproto/1.5.0-gcc-13.1.1-gbywtld - 42) py-ipython/8.11.0-gcc-13.1.1-ja6lo45 86) py-argon2-cffi/21.3.0-gcc-13.1.1-stwhl4s 130) libxrandr/1.5.3-gcc-13.1.1-hoc7acf - 43) py-platformdirs/3.5.0-gcc-13.1.1-vtyr2zh 87) py-ipython-genutils/0.2.0-gcc-13.1.1-mdlog55 131) xrandr/1.5.0-gcc-13.1.1-3x6g7jz - 44) py-jupyter-core/5.3.0-gcc-13.1.1-eqpun7s 88) py-prometheus-client/0.14.1-gcc-13.1.1-tbri6ex 132) mesa/22.1.6-gcc-13.1.1-iky2s65 " + 1) bzip2/1.0.8-gcc-13.1.1-rfmtfef 53) py-tornado/6.2-gcc-13.1.1-4dqlzjj 105) glproto/1.4.17-gcc-13.1.1-zowvdkj + 2) libmd/1.0.4-gcc-13.1.1-wlbjwvc 54) py-jupyter-client/8.1.0-gcc-13.1.1-3uqtcfu 106) libunwind/1.6.2-gcc-13.1.1-eyzaoqj + 3) libbsd/0.11.7-gcc-13.1.1-3vw6p4u 55) py-nest-asyncio/1.5.6-gcc-13.1.1-sill5t7 107) inputproto/2.3.2-gcc-13.1.1-4vc7odx + 4) expat/2.5.0-gcc-13.1.1-hx3rbqf 56) py-packaging/23.0-gcc-13.1.1-yw5iqll 108) kbproto/1.0.7-gcc-13.1.1-rlqfbfj + 5) ncurses/6.4-gcc-13.1.1-mwwshua 57) py-psutil/5.9.4-gcc-13.1.1-uolflt3 109) libpthread-stubs/0.4-gcc-13.1.1-2mkjar4 + 6) readline/8.2-gcc-13.1.1-2gng7tj 58) py-ipykernel/6.22.0-gcc-13.1.1-nrs3fjt 110) xproto/7.0.31-gcc-13.1.1-knjrnpi + 7) gdbm/1.23-gcc-13.1.1-ws52ulr 59) py-jupyterlab-widgets/3.0.3-gcc-13.1.1-z5ebuqm 111) libxau/1.0.8-gcc-13.1.1-gsxameq + 8) libiconv/1.17-gcc-13.1.1-buqvpnc 60) py-widgetsnbextension/4.0.3-gcc-13.1.1-pujfw5h 112) libxdmcp/1.1.4-gcc-13.1.1-zumdwqf + 9) xz/5.4.1-gcc-13.1.1-7iagy3z 61) py-ipywidgets/8.0.2-gcc-13.1.1-nl6ddfo 113) xcb-proto/1.15.2-gcc-13.1.1-5yjb433 + 10) zlib/1.2.13-gcc-13.1.1-yawi3li 62) py-jupyter-console/6.4.4-gcc-13.1.1-s5356pg 114) libxcb/1.14-gcc-13.1.1-o6ws53x + 11) libxml2/2.10.3-gcc-13.1.1-mkrze3k 63) py-soupsieve/2.3.2.post1-gcc-13.1.1-vofrd5z 115) xextproto/7.3.0-gcc-13.1.1-mlydc5m + 12) pigz/2.7-gcc-13.1.1-zzxrt3w 64) py-beautifulsoup4/4.11.1-gcc-13.1.1-2t7w76n 116) xtrans/1.4.0-gcc-13.1.1-uymm7fb + 13) zstd/1.5.5-gcc-13.1.1-vijq3k5 65) py-webencodings/0.5.1-gcc-13.1.1-ax7loza 117) libx11/1.8.4-gcc-13.1.1-32woeto + 14) tar/1.34-gcc-13.1.1-tlxxh5z 66) py-bleach/5.0.1-gcc-13.1.1-hysrgll 118) libxext/1.3.3-gcc-13.1.1-l53ow7r + 15) gettext/0.21.1-gcc-13.1.1-hxbj7z6 67) py-defusedxml/0.7.1-gcc-13.1.1-4gwhjj4 119) libice/1.0.9-gcc-13.1.1-xtesrco + 16) libffi/3.3-gcc-13.1.1-km5fnab 68) py-markupsafe/2.1.1-gcc-13.1.1-5ywrrt2 120) libsm/1.2.3-gcc-13.1.1-rbamduj + 17) libxcrypt/4.4.33-gcc-13.1.1-6bni3md 69) py-jinja2/3.1.2-gcc-13.1.1-s4ti7wu 121) libxt/1.1.5-gcc-13.1.1-zxuq4cg + 18) openssl/1.1.1t-gcc-13.1.1-5dbnq5f 70) py-jupyterlab-pygments/0.2.2-gcc-13.1.1-4yclus3 122) binutils/2.40-gcc-13.1.1-oouonwp + 19) sqlite/3.40.1-gcc-13.1.1-xfie7mz 71) libgpg-error/1.47-gcc-13.1.1-pugtw6b 123) libpciaccess/0.17-gcc-13.1.1-mdgqh4i + 20) util-linux-uuid/2.38.1-gcc-13.1.1-tm27vnw 72) libgcrypt/1.10.2-gcc-13.1.1-2bgxyks 124) hwloc/2.9.1-gcc-13.1.1-wj2soi7 + 21) python/3.10.10-gcc-13.1.1-m6so4xi 73) libxslt/1.1.33-gcc-13.1.1-qbhsycz 125) libedit/3.1-20210216-gcc-13.1.1-4ygsvv6 + 22) py-traitlets/5.9.0-gcc-13.1.1-s2cqdw5 74) py-lxml/4.9.1-gcc-13.1.1-53vasmi 126) llvm/14.0.6-gcc-13.1.1-d4qlss2 + 23) py-comm/0.1.3-gcc-13.1.1-osleaxc 75) py-mistune/2.0.4-gcc-13.1.1-frmt2pz 127) renderproto/0.11.1-gcc-13.1.1-n74iax3 + 24) py-debugpy/1.6.6-gcc-13.1.1-6cfq7f4 76) py-fastjsonschema/2.16.3-gcc-13.1.1-l5tn6ts 128) libxrender/0.9.10-gcc-13.1.1-vrzvhv2 + 25) py-backcall/0.2.0-gcc-13.1.1-2npgyqq 77) py-attrs/22.2.0-gcc-13.1.1-cv3dmjk 129) randrproto/1.5.0-gcc-13.1.1-gbywtld + 26) py-decorator/5.1.1-gcc-13.1.1-a22mcmu 78) py-pyrsistent/0.19.3-gcc-13.1.1-4djvk4z 130) libxrandr/1.5.3-gcc-13.1.1-hoc7acf + 27) py-parso/0.8.3-gcc-13.1.1-afbk3zx 79) py-jsonschema/4.17.3-gcc-13.1.1-utgwib6 131) xrandr/1.5.0-gcc-13.1.1-3x6g7jz + 28) py-setuptools/67.6.0-gcc-13.1.1-h64mhap 80) py-nbformat/5.8.0-gcc-13.1.1-7lttupb 132) mesa/22.1.6-gcc-13.1.1-iky2s65 + 29) py-jedi/0.18.1-gcc-13.1.1-oqcewms 81) py-nbclient/0.7.2-gcc-13.1.1-ickwa2h 133) glx/1.4-gcc-13.1.1-pelrczr + 30) py-matplotlib-inline/0.1.6-gcc-13.1.1-znyvri3 82) py-pandocfilters/1.5.0-gcc-13.1.1-w4z722e 134) pixman/0.42.2-gcc-13.1.1-rm72uqr + 31) py-ptyprocess/0.7.0-gcc-13.1.1-mfuu3qf 83) py-tinycss2/1.1.1-gcc-13.1.1-bkongt6 135) cairo/1.16.0-gcc-13.1.1-u23zqfk + 32) py-pexpect/4.8.0-gcc-13.1.1-tt2lrts 84) py-nbconvert/7.0.0-gcc-13.1.1-dkdyupr 136) gobject-introspection/1.72.1-gcc-13.1.1-4bj2g2m + 33) py-pickleshare/0.7.5-gcc-13.1.1-fvroijj 85) py-argon2-cffi-bindings/21.2.0-gcc-13.1.1-annnlwn 137) icu4c/67.1-gcc-13.1.1-runwlkl + 34) py-wcwidth/0.2.5-gcc-13.1.1-n6sqsus 86) py-argon2-cffi/21.3.0-gcc-13.1.1-stwhl4s 138) harfbuzz/7.3.0-gcc-13.1.1-dnyj32k + 35) py-prompt-toolkit/3.0.31-gcc-13.1.1-hgqriq5 87) py-ipython-genutils/0.2.0-gcc-13.1.1-mdlog55 139) libjpeg-turbo/2.1.5-gcc-13.1.1-cidcwta + 36) py-pygments/2.13.0-gcc-13.1.1-on5ro7f 88) py-prometheus-client/0.14.1-gcc-13.1.1-tbri6ex 140) libtiff/4.5.0-gcc-13.1.1-pdsybow + 37) py-six/1.16.0-gcc-13.1.1-d3dopor 89) py-send2trash/1.8.0-gcc-13.1.1-o77zxa4 141) lcms/2.13.1-gcc-13.1.1-bixpayp + 38) py-asttokens/2.0.8-gcc-13.1.1-tkxvwf4 90) py-terminado/0.15.0-gcc-13.1.1-zu7aefo 142) libmng/2.0.3-gcc-13.1.1-hmvk4un + 39) py-executing/1.1.0-gcc-13.1.1-4fwjrct 91) py-notebook/6.4.12-gcc-13.1.1-i3dzkfr 143) util-macros/1.19.3-gcc-13.1.1-so2ifer + 40) py-pure-eval/0.2.2-gcc-13.1.1-svkighk 92) py-sip/4.19.21-gcc-13.1.1-4ly4jkl 144) xkbdata/1.0.1-gcc-13.1.1-jrvfge7 + 41) py-stack-data/0.5.0-gcc-13.1.1-ruzubdq 93) assimp/5.2.5-gcc-13.1.1-bgn5aaq 145) libxkbcommon/1.4.0-gcc-13.1.1-fmd3id2 + 42) py-ipython/8.11.0-gcc-13.1.1-ja6lo45 94) double-conversion/3.2.1-gcc-13.1.1-k44rqt5 146) xcb-util/0.4.1-gcc-13.1.1-q6m6m3e + 43) py-platformdirs/3.5.0-gcc-13.1.1-vtyr2zh 95) font-util/1.4.0-gcc-13.1.1-xs62ukh 147) xcb-util-image/0.4.1-gcc-13.1.1-356vzc2 + 44) py-jupyter-core/5.3.0-gcc-13.1.1-eqpun7s 96) libpng/1.6.39-gcc-13.1.1-s7qt3h4 148) xcb-util-keysyms/0.4.1-gcc-13.1.1-jfm2mpe + 45) py-python-dateutil/2.8.2-gcc-13.1.1-lemasmo 97) freetype/2.11.1-gcc-13.1.1-c5mcund 149) xcb-util-renderutil/0.3.10-gcc-13.1.1-lzkerzt + 46) libsodium/1.0.18-gcc-13.1.1-64q2mkx 98) fontconfig/2.14.2-gcc-13.1.1-stcnirz 150) xcb-util-wm/0.4.2-gcc-13.1.1-f2tozd5 + 47) libzmq/4.3.4-gcc-13.1.1-jmvpxdy 99) pkgconf/1.9.5-gcc-13.1.1-bstyanj 151) qt/5.15.9-gcc-13.1.1-g4kio4v + 48) py-pycparser/2.21-gcc-13.1.1-kdlsxfq 100) elfutils/0.189-gcc-13.1.1-hoawipr 152) py-pyqt5/5.13.1-gcc-13.1.1-ok35m3b + 49) py-cffi/1.15.1-gcc-13.1.1-hn4n72t 101) pcre2/10.42-gcc-13.1.1-euchpp4 153) py-qtpy/1.11.2-gcc-13.1.1-p2yra55 + 50) py-greenlet/2.0.2-gcc-13.1.1-wr2hlvf 102) berkeley-db/18.1.40-gcc-13.1.1-lu5ld3m 154) py-qtconsole/5.2.0-gcc-13.1.1-ekrftgg + 51) py-gevent/1.5.0-gcc-13.1.1-wqurm3w 103) perl/5.36.0-gcc-13.1.1-bm3a4ef 155) py-jupyter/1.0.0-gcc-13.1.1-rhcbxvx + 52) py-pyzmq/25.0.2-gcc-13.1.1-fboajce 104) glib/2.76.1-gcc-13.1.1-72snmjl " testouterr_cmd sh {list -w 211} OK $tserr diff --git a/testsuite/modules.70-maint/274-adv_version_spec-autosym.exp b/testsuite/modules.70-maint/274-adv_version_spec-autosym.exp index 6320bd427..3099d237a 100644 --- a/testsuite/modules.70-maint/274-adv_version_spec-autosym.exp +++ b/testsuite/modules.70-maint/274-adv_version_spec-autosym.exp @@ -40,7 +40,7 @@ set mpre [regsub -all "\(\[.+?\]\)" $mp {\\\1}] # setup specific environment setenv_path_var MODULEPATH $mp -set key_sym "\n\nKey:\n(symbolic-version) " +set key_sym "\n\nKey:\n(symbolic-version)" # test auto symbols enablement (when implicit_default and advanced_version_spec # is enabled and no module version already exists) @@ -172,7 +172,7 @@ testouterr_cmd sh {is-loaded autosym1/default} OK {} testouterr_cmd sh {is-loaded autosym1@latest} OK {} testouterr_cmd sh {load autosym1/default} OK {} testouterr_cmd sh {load autosym1@latest} OK {} -testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym1/1(default) 2) autosym1/2 $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym1/1(default) 2) autosym1/2$key_sym" unsetenv_loaded_module unsetenv_var __MODULES_LMALTNAME @@ -194,7 +194,7 @@ testouterr_cmd sh {is-loaded autosym2/default} OK {} testouterr_cmd sh {is-loaded autosym2@latest} OK {} testouterr_cmd sh {load autosym2/default} OK {} testouterr_cmd sh {load autosym2@latest} OK {} -testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym2/1 2) autosym2/2(bar:latest) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym2/1 2) autosym2/2(bar:latest)$key_sym" unsetenv_loaded_module unsetenv_var __MODULES_LMALTNAME @@ -220,7 +220,7 @@ testouterr_cmd sh {is-loaded autosym3/default} OK {} testouterr_cmd sh {is-loaded autosym3@latest} OK {} testouterr_cmd sh {load autosym3/default} OK {} testouterr_cmd sh {load autosym3@latest} OK {} -testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym3/1(default) 2) autosym3/2(latest) $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym3/1(default) 2) autosym3/2(latest)$key_sym" unsetenv_loaded_module unsetenv_var __MODULES_LMALTNAME @@ -245,7 +245,7 @@ testouterr_cmd sh {is-loaded autosym4/default} OK {} testouterr_cmd sh {is-loaded autosym4@latest} OK {} testouterr_cmd sh {load autosym4/default} OK {} testouterr_cmd sh {load autosym4@latest} OK {} -testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym4/1 2) autosym4/2 " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym4/1 2) autosym4/2" unsetenv_loaded_module unsetenv_var __MODULES_LMALTNAME @@ -267,7 +267,7 @@ testouterr_cmd sh {is-loaded autosym5/default} OK {} testouterr_cmd sh {is-loaded autosym5@latest} OK {} testouterr_cmd sh {load autosym5/default} OK {} testouterr_cmd sh {load autosym5@latest} OK {} -testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym5/default " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym5/default" unsetenv_loaded_module unsetenv_var __MODULES_LMALTNAME @@ -292,7 +292,7 @@ testouterr_cmd sh {is-loaded autosym6/default} OK {} testouterr_cmd sh {is-loaded autosym6@latest} OK {} testouterr_cmd sh {load autosym6/default} OK {} testouterr_cmd sh {load autosym6@latest} OK {} -testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym6/1(zzz) 2) autosym6/latest $key_sym" +testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym6/1(zzz) 2) autosym6/latest$key_sym" unsetenv_loaded_module unsetenv_var __MODULES_LMALTNAME @@ -381,7 +381,7 @@ testouterr_cmd sh {load autosym7/default} OK {} testouterr_cmd sh {load autosym7@latest} OK {} testouterr_cmd sh {load autosym7/dir2/default} OK {} testouterr_cmd sh {load autosym7/dir2@latest} OK {} -testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym7/dir2/2 " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym7/dir2/2" unsetenv_loaded_module unsetenv_var __MODULES_LMALTNAME @@ -492,7 +492,7 @@ testouterr_cmd sh {is-loaded autosym8/default} OK {} testouterr_cmd sh {is-loaded autosym8/latest} OK {} testouterr_cmd sh {load autosym8/latest} OK {} testouterr_cmd sh {load autosym8} OK {} -testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym8/2 " +testouterr_cmd sh {list} OK "$cur_loaded\n 1) autosym8/2" testouterr_cmd sh {avail -t autosym8/latest} OK {} testouterr_cmd sh {avail -t autosym8/default} OK {} # test requirement resolution once auto symbol is disabled diff --git a/testsuite/modules.70-maint/280-ml.exp b/testsuite/modules.70-maint/280-ml.exp index f1a83a2a5..724cdf2b0 100644 --- a/testsuite/modules.70-maint/280-ml.exp +++ b/testsuite/modules.70-maint/280-ml.exp @@ -38,7 +38,7 @@ set mpre [regsub -all "\(\[.+?\]\)" $mp {\\\1}] # setup specific environment setenv_path_var MODULEPATH $mp -set key_sym "\n\nKey:\n(symbolic-version) " +set key_sym "\n\nKey:\n(symbolic-version)" # call sub-cmd if first arg is a known sub-cmd testouterr_cmd sh {ml path extdfl} [list [list text $mp/extdfl/1.3.1]] {} @@ -70,7 +70,7 @@ testouterr_cmd sh {ml extdfl} $ans {} # basic tests over a loaded module setenv_loaded_module [list extdfl/1.3.1] [list $mp/extdfl/1.3.1] setenv_var __MODULES_LMALTNAME extdfl/1.3.1&extdfl/default&extdfl -testouterr_cmd sh {ml} OK "$cur_loaded\n 1) extdfl/1.3.1(default) $key_sym" +testouterr_cmd sh {ml} OK "$cur_loaded\n 1) extdfl/1.3.1(default)$key_sym" testouterr_cmd sh {ml extdfl} OK {} set ans [list] lappend ans [list unset __MODULES_LMALTNAME] diff --git a/testsuite/modules.70-maint/320-tags.exp b/testsuite/modules.70-maint/320-tags.exp index 7bba29549..7307ca7ea 100644 --- a/testsuite/modules.70-maint/320-tags.exp +++ b/testsuite/modules.70-maint/320-tags.exp @@ -109,10 +109,10 @@ testouterr_cmd sh {unload tag/4.0} $ans {} setenv_loaded_module [list tag/4.0 tag/2.0 tag/5.0] [list $mp/tag/4.0 $mp/tag/1.0 $mp/tag/5.0] setenv_var __MODULES_LMTAG tag/4.0&nearly-forbidden&othertag:tag/2.0&forbidden:tag/5.0&hidden-loaded testouterr_cmd sh {list} OK "$cur_loaded - 1) tag/4.0 2) tag/2.0 + 1) tag/4.0 2) tag/2.0 Key: - =nearly-forbidden =forbidden " + =nearly-forbidden =forbidden" # terse mode just output modulename and header testouterr_cmd sh {list -t} OK "$cur_loaded @@ -134,10 +134,10 @@ skip_if_quick_mode # display hidden entries testouterr_cmd sh {list -a} OK "$cur_loaded - 1) tag/4.0 2) tag/2.0 3) tag/5.0 + 1) tag/4.0 2) tag/2.0 3) tag/5.0 Key: - =hidden-loaded =nearly-forbidden =forbidden " + =hidden-loaded =nearly-forbidden =forbidden" set tserr "{\"tag/4.0\": { \"name\": \"tag/4.0\", \"type\": \"modulefile\", \"variants\": {}, \"symbols\": \[\], \"tags\": \[ \"nearly-forbidden\", \"othertag\" \], \"pathname\": \"$mp/tag/4.0\", \"via\": \"\"}, \"tag/2.0\": { \"name\": \"tag/2.0\", \"type\": \"modulefile\", \"variants\": {}, \"symbols\": \[\], \"tags\": \[ \"forbidden\" \], \"pathname\": \"$mp/tag/1.0\", \"via\": \"\"}, @@ -177,10 +177,10 @@ setenv_loaded_module [list foo/2.0 impreq/load impreq/prereq] [list $mp/foo/2.0 setenv_var __MODULES_LMPREREQ impreq/load&foo:impreq/prereq&impreq/load testouterr_cmd sh {list} OK "$cur_loaded - 1) foo/2.0 2) impreq/load 3) impreq/prereq + 1) foo/2.0 2) impreq/load 3) impreq/prereq Key: - =auto-loaded " + =auto-loaded" set tserr "{\"foo/2.0\": { \"name\": \"foo/2.0\", \"type\": \"modulefile\", \"variants\": {}, \"symbols\": \[\], \"tags\": \[ \"auto-loaded\" \], \"pathname\": \"$mp/foo/2.0\", \"via\": \"\"}, \"impreq/load\": { \"name\": \"impreq/load\", \"type\": \"modulefile\", \"variants\": {}, \"symbols\": \[\], \"tags\": \[ \"auto-loaded\" \], \"pathname\": \"$mp/impreq/load\", \"via\": \"\"}, @@ -188,10 +188,10 @@ set tserr "{\"foo/2.0\": { \"name\": \"foo/2.0\", \"type\": \"modulefile\", \"va testouterr_cmd sh {list -j} OK $tserr set tserr "$modlin $mpre $modlin -foo/2.0 +foo/2.0 Key: - =auto-loaded " + =auto-loaded" testouterr_cmd_re sh {avail foo/2.0} OK $tserr set tserr "$modlin $mpre $modlin @@ -199,10 +199,10 @@ impreq/load .*" testouterr_cmd_re sh {avail impreq/load} OK $tserr set tserr "$modlin $mpre $modlin -impreq/prereq +impreq/prereq Key: - =loaded " + =loaded" testouterr_cmd_re sh {avail impreq/prereq} OK $tserr # set an additional tag @@ -218,10 +218,10 @@ if {![info exists term_cols]} { } else { testouterr_cmd sh {list} OK "$cur_loaded - 1) foo/2.0 2) impreq/load 3) impreq/prereq + 1) foo/2.0 2) impreq/load 3) impreq/prereq Key: - =auto-loaded " + =auto-loaded" # restore terminal width exec stty cols $term_cols @@ -234,10 +234,10 @@ set tserr "{\"foo/2.0\": { \"name\": \"foo/2.0\", \"type\": \"modulefile\", \"va testouterr_cmd sh {list -j} OK $tserr set tserr "$modlin $mpre $modlin -foo/2.0 +foo/2.0 Key: - =auto-loaded " + =auto-loaded" testouterr_cmd_re sh {avail foo/2.0} OK $tserr unsetenv_loaded_module diff --git a/testsuite/modules.70-maint/321-tag_abbrev.exp b/testsuite/modules.70-maint/321-tag_abbrev.exp index 0d69448b9..89196d29f 100644 --- a/testsuite/modules.70-maint/321-tag_abbrev.exp +++ b/testsuite/modules.70-maint/321-tag_abbrev.exp @@ -62,10 +62,10 @@ tag/5.0 " testouterr_cmd sh {avail -t tag/5.0} OK $tserr testouterr_cmd sh {list} OK "$cur_loaded - 1) tag/5.0 + 1) tag/5.0 Key: - =foo " + =foo" # abbrev set for loaded tag, abbrev set on an icase tag @@ -76,10 +76,10 @@ tag/5.0 " testouterr_cmd sh {avail -t tag/5.0} OK $tserr testouterr_cmd sh {list} OK "$cur_loaded - 1) tag/5.0 + 1) tag/5.0 Key: - =foo =BaR " + =foo =BaR" # abbrev disabled for custom and loaded tag @@ -90,10 +90,10 @@ tag/5.0 " testouterr_cmd sh {avail -t tag/5.0} OK $tserr testouterr_cmd sh {list} OK "$cur_loaded - 1) tag/5.0 + 1) tag/5.0 Key: - =BaR " + =BaR" # all abbrev disabled @@ -104,7 +104,7 @@ tag/5.0" testouterr_cmd sh {avail -t tag/5.0} OK $tserr testouterr_cmd sh {list} OK "$cur_loaded - 1) tag/5.0 " + 1) tag/5.0" # all abbrev disabled with MODULES_TAG_ABBREV defined empty @@ -115,10 +115,10 @@ tag/5.0 " testouterr_cmd sh {avail -t tag/5.0} OK $tserr testouterr_cmd sh {list} OK "$cur_loaded - 1) tag/5.0 + 1) tag/5.0 Key: - " +" # abbrev including space character @@ -129,10 +129,10 @@ tag/5.0 < l:f o:r >" testouterr_cmd sh {avail -t tag/5.0} OK $tserr testouterr_cmd sh {list} OK "$cur_loaded - 1) tag/5.0 + 1) tag/5.0 Key: - =foo =BaR " + =foo =BaR" # badly set MODULES_TAG_ABBREV @@ -147,10 +147,10 @@ setenv_loaded_module [list tag/5.0] [list $mp/tag/5.0] setenv_var __MODULES_LMTAG tag/5.0&foo&BaR testouterr_cmd sh {list} OK "$warn_msgs: Ignore invalid value set in MODULES_TAG_ABBREV (foo:loaded=L) $cur_loaded - 1) tag/5.0 + 1) tag/5.0 Key: - " +" # badly set MODULES_TAG_ABBREV (2) @@ -165,10 +165,10 @@ setenv_loaded_module [list tag/5.0] [list $mp/tag/5.0] setenv_var __MODULES_LMTAG tag/5.0&foo&BaR testouterr_cmd sh {list} OK "$warn_msgs: Ignore invalid value set in MODULES_TAG_ABBREV (:loaded=L) $cur_loaded - 1) tag/5.0 + 1) tag/5.0 Key: - " +" # check excepted siteconfig file is installed @@ -179,26 +179,26 @@ setenv_var TESTSUITE_ENABLE_SITECONFIG_BADTAGABBREVDFLVALUE 1 unsetenv_var MODULES_TAG_ABBREV testouterr_cmd sh {list} OK "$warn_msgs: Ignore invalid default value for 'tag_abbrev' config (loaded) $cur_loaded - 1) tag/5.0 + 1) tag/5.0 Key: - " +" setenv_var MODULES_TAG_ABBREV {loaded=L} testouterr_cmd sh {list} OK "$cur_loaded - 1) tag/5.0 + 1) tag/5.0 Key: - " +" setenv_var MODULES_TAG_ABBREV {:loaded=L} testouterr_cmd sh {list} OK "$warn_msgs: Ignore invalid value set in MODULES_TAG_ABBREV (:loaded=L) $warn_msgs: Ignore invalid default value for 'tag_abbrev' config (loaded) $cur_loaded - 1) tag/5.0 + 1) tag/5.0 Key: - " +" unsetenv_var TESTSUITE_ENABLE_SITECONFIG_BADTAGABBREVDFLVALUE diff --git a/testsuite/modules.70-maint/322-tag-sgr.exp b/testsuite/modules.70-maint/322-tag-sgr.exp index e4482d389..de39e667c 100644 --- a/testsuite/modules.70-maint/322-tag-sgr.exp +++ b/testsuite/modules.70-maint/322-tag-sgr.exp @@ -49,41 +49,41 @@ setenv_var MODULES_TAG_ABBREV auto-loaded=aL:foo=O setenv_var MODULES_COLORS {aL=100} testerr_cmd_re sh {list} "$cur_loaded - 1\\) [sgr 100]tag/5.0[sgr 0] + 1\\) [sgr 100]tag/5.0[sgr 0] Key: -[sgr 100]auto-loaded[sgr 0] =foo " +[sgr 100]auto-loaded[sgr 0] =foo" skip_if_quick_mode setenv_var MODULES_COLORS {auto-loaded=100} testerr_cmd_re sh {list} "$cur_loaded - 1\\) tag/5.0 + 1\\) tag/5.0 Key: - =auto-loaded =foo " + =auto-loaded =foo" setenv_var MODULES_TAG_ABBREV foo=O testerr_cmd_re sh {list} "$cur_loaded - 1\\) [sgr 100]tag/5.0[sgr 0] + 1\\) [sgr 100]tag/5.0[sgr 0] Key: -[sgr 100]auto-loaded[sgr 0] =foo " +[sgr 100]auto-loaded[sgr 0] =foo" setenv_var MODULES_TAG_ABBREV auto-loaded=aL:foo=O setenv_var MODULES_COLORS {aL=100:O=102} testerr_cmd_re sh {list} "$cur_loaded - 1\\) [sgr 100]tag[sgr {0;102}]/5.0[sgr 0] + 1\\) [sgr 100]tag[sgr {0;102}]/5.0[sgr 0] Key: -[sgr 100]auto-loaded[sgr 0] [sgr 102]foo[sgr 0] " +[sgr 100]auto-loaded[sgr 0] [sgr 102]foo[sgr 0] " setenv_var MODULES_COLORS {aL=100:O=102:BaR=103} testerr_cmd_re sh {list} "$cur_loaded - 1\\) [sgr 100]ta[sgr {0;103}]g/[sgr {0;102}]5.0[sgr 0] + 1\\) [sgr 100]ta[sgr {0;103}]g/[sgr {0;102}]5.0[sgr 0] Key: -[sgr 103]BaR[sgr 0] [sgr 100]auto-loaded[sgr 0] [sgr 102]foo[sgr 0] " +[sgr 103]BaR[sgr 0] [sgr 100]auto-loaded[sgr 0] [sgr 102]foo[sgr 0]" # @@ -286,10 +286,10 @@ setenv_var __MODULES_LMTAG tag/5.0&hidden-loaded setenv_var MODULES_TAG_ABBREV hidden-loaded=H setenv_var MODULES_COLORS {aL=100:al=96:de=4:H=2} testouterr_cmd_re sh {list -a} OK "$cur_loaded - 1\\\) [sgr 2]tag/5.0[sgr 0] + 1\\\) [sgr 2]tag/5.0[sgr 0] Key: -[sgr 2]hidden-loaded[sgr 22] " +[sgr 2]hidden-loaded[sgr 22]" unsetenv_loaded_module unsetenv_var __MODULES_LMTAG @@ -299,10 +299,10 @@ setenv_var __MODULES_LMTAG warn/1&warning setenv_var MODULES_TAG_ABBREV warning=W setenv_var MODULES_COLORS {aL=100:al=96:de=4:W=30;43} testouterr_cmd_re sh {list} OK "$cur_loaded - 1\\\) [sgr {30;43}]warn/1[sgr 0] + 1\\\) [sgr {30;43}]warn/1[sgr 0] Key: -[sgr {30;43}]warning[sgr 0] " +[sgr {30;43}]warning[sgr 0]" unsetenv_loaded_module unsetenv_var __MODULES_LMTAG @@ -313,18 +313,18 @@ setenv_var __MODULES_LMTAG {variant/w s&auto-loaded} setenv_var MODULES_TAG_ABBREV auto-loaded=aL setenv_var MODULES_COLORS {aL=100:al=96:de=4:H=2} testouterr_cmd_re sh {list} OK "$cur_loaded - 1\\\) '[sgr 100]variant/w s[sgr 0]' + 1\\\) '[sgr 100]variant/w s[sgr 0]' Key: -[sgr 100]auto-loaded[sgr 0] " +[sgr 100]auto-loaded[sgr 0]" testouterr_cmd_re sh {avail -w 60 variant} OK "$modlin $mpre $modlin -variant/1.0 variant/3.0 variant/5.1 variant/7.1 -variant/2.0 variant/4.0 variant/6.0 variant/8.0 -variant/2.1/2/1 variant/5.0 variant/7.0 '[sgr 100]variant/w s[sgr 0]' +variant/1.0 variant/3.0 variant/5.1 variant/7.1 +variant/2.0 variant/4.0 variant/6.0 variant/8.0 +variant/2.1/2/1 variant/5.0 variant/7.0 '[sgr 100]variant/w s[sgr 0]' Key: -[sgr 100]auto-loaded[sgr 0] " +[sgr 100]auto-loaded[sgr 0]" unsetenv_loaded_module unsetenv_var __MODULES_LMTAG diff --git a/testsuite/modules.70-maint/340-output-key.exp b/testsuite/modules.70-maint/340-output-key.exp index 729c9aa04..86f41f60e 100644 --- a/testsuite/modules.70-maint/340-output-key.exp +++ b/testsuite/modules.70-maint/340-output-key.exp @@ -47,23 +47,23 @@ setenv_var MODULES_AVAIL_INDEPTH 1 # basic test with one element to report in key setenv_var MODULES_COLORS "mp=1;94" -testerr_cmd_re sh {avail --color=always key/4.0} "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin\nkey/4.0 \n\nKey:\n[sgr {1;94}]modulepath[sgr 0] " +testerr_cmd_re sh {avail --color=always key/4.0} "$modlin [sgr {1;94}]$mpre[sgr 0] $modlin\nkey/4.0\n\nKey:\n[sgr {1;94}]modulepath[sgr 0]" unsetenv_var MODULES_COLORS # one type to report in key, but no color defined for it, so no key to output setenv_var MODULES_COLORS "" -testerr_cmd_re sh {avail --color=always key/4.0} "$modlin $mpre $modlin\nkey/4.0 " +testerr_cmd_re sh {avail --color=always key/4.0} "$modlin $mpre $modlin\nkey/4.0" unsetenv_var MODULES_COLORS # no key if no element to report in it -testerr_cmd_re sh {avail key/4.0} "$modlin $mpre $modlin\nkey/4.0 " +testerr_cmd_re sh {avail key/4.0} "$modlin $mpre $modlin\nkey/4.0" # check mention of symbol or tag when color is not configured or disabled set tserr "$modlin $mpre $modlin -key/2.0\\(foosym\\) +key/2.0\\(foosym\\) Key: -\\(symbolic-version\\) =sticky " +\\(symbolic-version\\) =sticky" testerr_cmd_re sh {avail key/2.0} $tserr setenv_var MODULES_COLORS "F=45" testerr_cmd_re sh {avail --color=always key/2.0} $tserr @@ -72,16 +72,16 @@ unsetenv_var MODULES_COLORS # check output of alias setenv_var MODULES_COLORS "al=94" testerr_cmd_re sh {avail --color=always key/3.0} "$modlin $mpre $modlin -[sgr 94]key/3.0[sgr 0] +[sgr 94]key/3.0[sgr 0] Key: -[sgr 94]module-alias[sgr 0] " +[sgr 94]module-alias[sgr 0]" setenv_var MODULES_COLORS "" set tserr "$modlin $mpre $modlin -key/3.0\\(@\\) +key/3.0\\(@\\) Key: -\\(@\\)=module-alias " +\\(@\\)=module-alias" testerr_cmd_re sh {avail --color=always key/3.0} $tserr unsetenv_var MODULES_COLORS testerr_cmd_re sh {avail key/3.0} $tserr @@ -89,38 +89,38 @@ testerr_cmd_re sh {avail key/3.0} $tserr # default symbol setenv_var MODULES_COLORS "de=4:sy=95" testerr_cmd_re sh {avail --color=always key/1.0} "$modlin $mpre $modlin -[sgr 4]key/1.0[sgr 0] +[sgr 4]key/1.0[sgr 0] Key: -[sgr 4]default-version[sgr 0] " +[sgr 4]default-version[sgr 0] " setenv_var MODULES_COLORS "sy=95" testerr_cmd_re sh {avail --color=always key/1.0} "$modlin $mpre $modlin -key/1.0\\([sgr 95]default[sgr 0]\\) +key/1.0\\([sgr 95]default[sgr 0]\\) Key: -\\([sgr 95]symbolic-version[sgr 0]\\) " +\\([sgr 95]symbolic-version[sgr 0]\\) " setenv_var MODULES_COLORS "" testerr_cmd_re sh {avail --color=always key/1.0} "$modlin $mpre $modlin -key/1.0\\(default\\) +key/1.0\\(default\\) Key: -\\(symbolic-version\\) " +\\(symbolic-version\\) " unsetenv_var MODULES_COLORS # hidden module tag setenv_var MODULES_COLORS "H=2" setenv_var MODULES_TAG_ABBREV hidden=H:hidden-loaded=H testerr_cmd_re sh {avail --color=always key/5.0} "$modlin $mpre $modlin -[sgr 2]key/5.0[sgr 0] +[sgr 2]key/5.0[sgr 0] Key: -[sgr 2]hidden[sgr 22] " +[sgr 2]hidden[sgr 22]" setenv_var MODULES_COLORS "" testerr_cmd_re sh {avail --color=always key/5.0} "$modlin $mpre $modlin -key/5.0 +key/5.0 Key: - =hidden " + =hidden" unsetenv_var MODULES_COLORS unsetenv_var MODULES_TAG_ABBREV @@ -128,24 +128,24 @@ unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "de=4:sy=95:fT=46" setenv_var MODULES_TAG_ABBREV footag=fT testerr_cmd_re sh {avail --color=always key/1.0} "$modlin $mpre $modlin -[sgr {4;46}]key/1.0[sgr 0] +[sgr {4;46}]key/1.0[sgr 0] Key: -[sgr 4]default-version[sgr 0] [sgr 46]footag[sgr 0] " +[sgr 4]default-version[sgr 0] [sgr 46]footag[sgr 0]" setenv_var MODULES_TAG_COLOR_NAME fT testerr_cmd_re sh {avail --color=always key/1.0} "$modlin $mpre $modlin -[sgr 4]key/1.0[sgr 0] <[sgr 46]fT[sgr 0]> +[sgr 4]key/1.0[sgr 0] <[sgr 46]fT[sgr 0]> Key: -[sgr 4]default-version[sgr 0] [sgr 46]footag[sgr 0] " +[sgr 4]default-version[sgr 0] [sgr 46]footag[sgr 0] " unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "de=4:footag=46" setenv_var MODULES_TAG_COLOR_NAME footag testerr_cmd_re sh {avail --color=always key/1.0} "$modlin $mpre $modlin -[sgr 4]key/1.0[sgr 0] <[sgr 46]footag[sgr 0]> +[sgr 4]key/1.0[sgr 0] <[sgr 46]footag[sgr 0]> Key: -[sgr 46]footag[sgr 0] [sgr 4]default-version[sgr 0] " +[sgr 46]footag[sgr 0] [sgr 4]default-version[sgr 0] " unsetenv_var MODULES_COLORS unsetenv_var MODULES_TAG_COLOR_NAME @@ -167,18 +167,18 @@ testerr_cmd sh {list -j} $tserr # basic test with element in key to report setenv_var MODULES_COLORS "se=2:sy=95:S=46" testerr_cmd_re sh {list --color=always} "$cur_loaded - 1\\) [sgr 46]key/2.0[sgr 0][sgr 2]\\([sgr 22][sgr 95]foosym[sgr 0][sgr 2]\\)[sgr 22] + 1\\) [sgr 46]key/2.0[sgr 0][sgr 2]\\([sgr 22][sgr 95]foosym[sgr 0][sgr 2]\\)[sgr 22] Key: -[sgr 2]\\([sgr 22][sgr 95]symbolic-version[sgr 0][sgr 2]\\)[sgr 22] [sgr 46]sticky[sgr 0] " +[sgr 2]\\([sgr 22][sgr 95]symbolic-version[sgr 0][sgr 2]\\)[sgr 22] [sgr 46]sticky[sgr 0]" unsetenv_var MODULES_COLORS # check mention of symbol or tag when color is not configured or disabled set tserr "$cur_loaded - 1) key/2.0(foosym) + 1) key/2.0(foosym) Key: -(symbolic-version) =sticky " +(symbolic-version) =sticky" testerr_cmd sh {list} $tserr setenv_var MODULES_COLORS "F=45" testerr_cmd sh {list --color=always} $tserr @@ -187,7 +187,7 @@ unsetenv_var MODULES_COLORS # no key if no element to report in it unsetenv_var __MODULES_LMTAG unsetenv_var __MODULES_LMALTNAME -testerr_cmd sh {list} "$cur_loaded\n 1) key/2.0 " +testerr_cmd sh {list} "$cur_loaded\n 1) key/2.0" # test default symbol setenv_loaded_module [list key/1.0] [list $mp/key/1.0] @@ -195,22 +195,22 @@ setenv_var __MODULES_LMTAG key/1.0&footag setenv_var __MODULES_LMALTNAME key/1.0&key/default&key setenv_var MODULES_COLORS "de=4:sy=95" testerr_cmd_re sh {list --color=always} "$cur_loaded - 1\\) [sgr 4]key/1.0[sgr 0] + 1\\) [sgr 4]key/1.0[sgr 0] Key: -[sgr 4]default-version[sgr 0] " +[sgr 4]default-version[sgr 0] " setenv_var MODULES_COLORS "sy=95" testerr_cmd_re sh {list --color=always} "$cur_loaded - 1\\) key/1.0\\([sgr 95]default[sgr 0]\\) + 1\\) key/1.0\\([sgr 95]default[sgr 0]\\) Key: -\\([sgr 95]symbolic-version[sgr 0]\\) " +\\([sgr 95]symbolic-version[sgr 0]\\) " setenv_var MODULES_COLORS "" testerr_cmd sh {list --color=always} "$cur_loaded - 1) key/1.0(default) + 1) key/1.0(default) Key: -(symbolic-version) " +(symbolic-version) " unsetenv_var MODULES_COLORS # hidden-loaded module tag @@ -220,16 +220,16 @@ unsetenv_var __MODULES_LMALTNAME setenv_var MODULES_COLORS "H=2" setenv_var MODULES_TAG_ABBREV hidden-loaded=H:hidden=H testerr_cmd_re sh {list -a --color=always} "$cur_loaded - 1\\) [sgr 2]key/5.0[sgr 0] + 1\\) [sgr 2]key/5.0[sgr 0] Key: -[sgr 2]hidden-loaded[sgr 22] " +[sgr 2]hidden-loaded[sgr 22]" setenv_var MODULES_COLORS "" testerr_cmd_re sh {list -o +hidden --color=always} "$cur_loaded - 1\\) key/5.0 + 1\\) key/5.0 Key: - =hidden-loaded " + =hidden-loaded" unsetenv_var MODULES_COLORS unsetenv_var MODULES_TAG_ABBREV @@ -240,24 +240,24 @@ setenv_var __MODULES_LMALTNAME key/1.0&key/default&key setenv_var MODULES_COLORS "de=4:sy=95:fT=46" setenv_var MODULES_TAG_ABBREV footag=fT testerr_cmd_re sh {list --color=always} "$cur_loaded - 1\\) [sgr {4;46}]key/1.0[sgr 0] + 1\\) [sgr {4;46}]key/1.0[sgr 0] Key: -[sgr 4]default-version[sgr 0] [sgr 46]footag[sgr 0] " +[sgr 4]default-version[sgr 0] [sgr 46]footag[sgr 0]" setenv_var MODULES_TAG_COLOR_NAME fT testerr_cmd_re sh {list --color=always} "$cur_loaded - 1\\) [sgr 4]key/1.0[sgr 0] <[sgr 46]fT[sgr 0]> + 1\\) [sgr 4]key/1.0[sgr 0] <[sgr 46]fT[sgr 0]> Key: -[sgr 4]default-version[sgr 0] [sgr 46]footag[sgr 0] " +[sgr 4]default-version[sgr 0] [sgr 46]footag[sgr 0] " unsetenv_var MODULES_TAG_ABBREV setenv_var MODULES_COLORS "de=4:footag=46" setenv_var MODULES_TAG_COLOR_NAME footag testerr_cmd_re sh {list --color=always} "$cur_loaded - 1\\) [sgr 4]key/1.0[sgr 0] <[sgr 46]footag[sgr 0]> + 1\\) [sgr 4]key/1.0[sgr 0] <[sgr 46]footag[sgr 0]> Key: -[sgr 46]footag[sgr 0] [sgr 4]default-version[sgr 0] " +[sgr 46]footag[sgr 0] [sgr 4]default-version[sgr 0] " unsetenv_var MODULES_COLORS unsetenv_var MODULES_TAG_COLOR_NAME diff --git a/testsuite/modules.70-maint/350-term_width.exp b/testsuite/modules.70-maint/350-term_width.exp index 4cec5fb09..ef190c22d 100644 --- a/testsuite/modules.70-maint/350-term_width.exp +++ b/testsuite/modules.70-maint/350-term_width.exp @@ -65,178 +65,185 @@ proc ts_avail_header {w} { # Set the output for different width set width_0 "[ts_avail_header 169] -loc_rc1/1.0(foo) loc_rc3/2.0(cur:stable) loc_rc5/1.0 loc_rc6/bar(@) loc_rc8/0.9(@) loc_rcv1/1.2(default:new) loc_rcv2/2.0 +loc_rc1/1.0(foo) loc_rc3/2.0(cur:stable) loc_rc5/1.0 loc_rc6/bar(@) loc_rc8/0.9(@) loc_rcv1/1.2(default:new) loc_rcv2/2.0 loc_rc1/2.0 loc_rc3/3.0(chk:exp:new:test) loc_rc5/2.0 loc_rc7/0.9 loc_rc8/1.0 loc_rcv1/2.0 loc_rc2/1.0(bar:blah:foo) loc_rc4/1.0 loc_rc6/0.9 loc_rc7/1(@) loc_rc010/2.0 loc_rcv1/bar(@) loc_rc2/2.0 loc_rc4/2.0(default) loc_rc6/1(@) loc_rc7/1.2 loc_rcv1/1(@) loc_rcv2/1.2 loc_rc3/1.0(default) loc_rc4/3.0 loc_rc6/1.2(default:new) loc_rc7/bar(@) loc_rcv1/1.1 loc_rcv2/1.5 Key: -(@)=module-alias (symbolic-version) " +(@)=module-alias (symbolic-version)" set width_1 "[ts_avail_header 1] -loc_rc1/1.0(foo) -loc_rc1/2.0 -loc_rc2/1.0(bar:blah:foo) -loc_rc2/2.0 -loc_rc3/1.0(default) -loc_rc3/2.0(cur:stable) -loc_rc3/3.0(chk:exp:new:test) -loc_rc4/1.0 -loc_rc4/2.0(default) -loc_rc4/3.0 -loc_rc5/1.0 -loc_rc5/2.0 -loc_rc6/0.9 -loc_rc6/1(@) -loc_rc6/1.2(default:new) -loc_rc6/bar(@) -loc_rc7/0.9 -loc_rc7/1(@) -loc_rc7/1.2 -loc_rc7/bar(@) -loc_rc8/0.9(@) -loc_rc8/1.0 -loc_rc010/2.0 -loc_rcv1/1(@) -loc_rcv1/1.1 -loc_rcv1/1.2(default:new) -loc_rcv1/2.0 -loc_rcv1/bar(@) -loc_rcv2/1.2 -loc_rcv2/1.5 -loc_rcv2/2.0 +loc_rc1/1.0(foo) +loc_rc1/2.0 +loc_rc2/1.0(bar:blah:foo) +loc_rc2/2.0 +loc_rc3/1.0(default) +loc_rc3/2.0(cur:stable) +loc_rc3/3.0(chk:exp:new:test) +loc_rc4/1.0 +loc_rc4/2.0(default) +loc_rc4/3.0 +loc_rc5/1.0 +loc_rc5/2.0 +loc_rc6/0.9 +loc_rc6/1(@) +loc_rc6/1.2(default:new) +loc_rc6/bar(@) +loc_rc7/0.9 +loc_rc7/1(@) +loc_rc7/1.2 +loc_rc7/bar(@) +loc_rc8/0.9(@) +loc_rc8/1.0 +loc_rc010/2.0 +loc_rcv1/1(@) +loc_rcv1/1.1 +loc_rcv1/1.2(default:new) +loc_rcv1/2.0 +loc_rcv1/bar(@) +loc_rcv2/1.2 +loc_rcv2/1.5 +loc_rcv2/2.0 Key: -(@)=module-alias -(symbolic-version) " +(@)=module-alias +(symbolic-version)" set width_30 "[ts_avail_header 30] -loc_rc1/1.0(foo) -loc_rc1/2.0 -loc_rc2/1.0(bar:blah:foo) -loc_rc2/2.0 -loc_rc3/1.0(default) -loc_rc3/2.0(cur:stable) -loc_rc3/3.0(chk:exp:new:test) -loc_rc4/1.0 -loc_rc4/2.0(default) -loc_rc4/3.0 -loc_rc5/1.0 -loc_rc5/2.0 -loc_rc6/0.9 -loc_rc6/1(@) -loc_rc6/1.2(default:new) -loc_rc6/bar(@) -loc_rc7/0.9 -loc_rc7/1(@) -loc_rc7/1.2 -loc_rc7/bar(@) -loc_rc8/0.9(@) -loc_rc8/1.0 -loc_rc010/2.0 -loc_rcv1/1(@) -loc_rcv1/1.1 -loc_rcv1/1.2(default:new) -loc_rcv1/2.0 -loc_rcv1/bar(@) -loc_rcv2/1.2 -loc_rcv2/1.5 -loc_rcv2/2.0 +loc_rc1/1.0(foo) +loc_rc1/2.0 +loc_rc2/1.0(bar:blah:foo) +loc_rc2/2.0 +loc_rc3/1.0(default) +loc_rc3/2.0(cur:stable) +loc_rc3/3.0(chk:exp:new:test) +loc_rc4/1.0 +loc_rc4/2.0(default) +loc_rc4/3.0 +loc_rc5/1.0 +loc_rc5/2.0 +loc_rc6/0.9 +loc_rc6/1(@) +loc_rc6/1.2(default:new) +loc_rc6/bar(@) +loc_rc7/0.9 +loc_rc7/1(@) +loc_rc7/1.2 +loc_rc7/bar(@) +loc_rc8/0.9(@) +loc_rc8/1.0 +loc_rc010/2.0 +loc_rcv1/1(@) +loc_rcv1/1.1 +loc_rcv1/1.2(default:new) +loc_rcv1/2.0 +loc_rcv1/bar(@) +loc_rcv2/1.2 +loc_rcv2/1.5 +loc_rcv2/2.0 Key: -(@)=module-alias -(symbolic-version) " +(@)=module-alias (symbolic-version)" set width_50 "[ts_avail_header 50] -loc_rc1/1.0(foo) loc_rcv1/2.0 -loc_rc1/2.0 loc_rcv1/bar(@) -loc_rc2/1.0(bar:blah:foo) loc_rcv2/1.2 -loc_rc2/2.0 loc_rcv2/1.5 -loc_rc3/1.0(default) loc_rcv2/2.0 -loc_rc3/2.0(cur:stable) -loc_rc3/3.0(chk:exp:new:test) -loc_rc4/1.0 -loc_rc4/2.0(default) -loc_rc4/3.0 -loc_rc5/1.0 -loc_rc5/2.0 -loc_rc6/0.9 -loc_rc6/1(@) -loc_rc6/1.2(default:new) -loc_rc6/bar(@) -loc_rc7/0.9 -loc_rc7/1(@) -loc_rc7/1.2 -loc_rc7/bar(@) -loc_rc8/0.9(@) -loc_rc8/1.0 -loc_rc010/2.0 -loc_rcv1/1(@) -loc_rcv1/1.1 -loc_rcv1/1.2(default:new) +loc_rc1/1.0(foo) +loc_rc1/2.0 +loc_rc2/1.0(bar:blah:foo) +loc_rc2/2.0 +loc_rc3/1.0(default) +loc_rc3/2.0(cur:stable) +loc_rc3/3.0(chk:exp:new:test) +loc_rc4/1.0 +loc_rc4/2.0(default) +loc_rc4/3.0 +loc_rc5/1.0 +loc_rc5/2.0 +loc_rc6/0.9 +loc_rc6/1(@) +loc_rc6/1.2(default:new) +loc_rc6/bar(@) +loc_rc7/0.9 +loc_rc7/1(@) +loc_rc7/1.2 +loc_rc7/bar(@) +loc_rc8/0.9(@) +loc_rc8/1.0 +loc_rc010/2.0 +loc_rcv1/1(@) +loc_rcv1/1.1 +loc_rcv1/1.2(default:new) +loc_rcv1/2.0 +loc_rcv1/bar(@) +loc_rcv2/1.2 +loc_rcv2/1.5 +loc_rcv2/2.0 Key: -(@)=module-alias (symbolic-version) " +(@)=module-alias (symbolic-version)" set width_60 "[ts_avail_header 60] -loc_rc1/1.0(foo) loc_rc7/0.9 -loc_rc1/2.0 loc_rc7/1(@) -loc_rc2/1.0(bar:blah:foo) loc_rc7/1.2 -loc_rc2/2.0 loc_rc7/bar(@) -loc_rc3/1.0(default) loc_rc8/0.9(@) -loc_rc3/2.0(cur:stable) loc_rc8/1.0 -loc_rc3/3.0(chk:exp:new:test) loc_rc010/2.0 -loc_rc4/1.0 loc_rcv1/1(@) -loc_rc4/2.0(default) loc_rcv1/1.1 -loc_rc4/3.0 loc_rcv1/1.2(default:new) -loc_rc5/1.0 loc_rcv1/2.0 -loc_rc5/2.0 loc_rcv1/bar(@) -loc_rc6/0.9 loc_rcv2/1.2 -loc_rc6/1(@) loc_rcv2/1.5 -loc_rc6/1.2(default:new) loc_rcv2/2.0 +loc_rc1/1.0(foo) loc_rc7/0.9 +loc_rc1/2.0 loc_rc7/1(@) +loc_rc2/1.0(bar:blah:foo) loc_rc7/1.2 +loc_rc2/2.0 loc_rc7/bar(@) +loc_rc3/1.0(default) loc_rc8/0.9(@) +loc_rc3/2.0(cur:stable) loc_rc8/1.0 +loc_rc3/3.0(chk:exp:new:test) loc_rc010/2.0 +loc_rc4/1.0 loc_rcv1/1(@) +loc_rc4/2.0(default) loc_rcv1/1.1 +loc_rc4/3.0 loc_rcv1/1.2(default:new) +loc_rc5/1.0 loc_rcv1/2.0 +loc_rc5/2.0 loc_rcv1/bar(@) +loc_rc6/0.9 loc_rcv2/1.2 +loc_rc6/1(@) loc_rcv2/1.5 +loc_rc6/1.2(default:new) loc_rcv2/2.0 loc_rc6/bar(@) Key: -(@)=module-alias (symbolic-version) " +(@)=module-alias (symbolic-version)" set width_80 "[ts_avail_header 80] -loc_rc1/1.0(foo) loc_rc6/1(@) loc_rcv1/2.0 -loc_rc1/2.0 loc_rc6/1.2(default:new) loc_rcv1/bar(@) -loc_rc2/1.0(bar:blah:foo) loc_rc6/bar(@) loc_rcv2/1.2 -loc_rc2/2.0 loc_rc7/0.9 loc_rcv2/1.5 -loc_rc3/1.0(default) loc_rc7/1(@) loc_rcv2/2.0 -loc_rc3/2.0(cur:stable) loc_rc7/1.2 -loc_rc3/3.0(chk:exp:new:test) loc_rc7/bar(@) -loc_rc4/1.0 loc_rc8/0.9(@) -loc_rc4/2.0(default) loc_rc8/1.0 -loc_rc4/3.0 loc_rc010/2.0 -loc_rc5/1.0 loc_rcv1/1(@) -loc_rc5/2.0 loc_rcv1/1.1 -loc_rc6/0.9 loc_rcv1/1.2(default:new) +loc_rc1/1.0(foo) loc_rc7/0.9 +loc_rc1/2.0 loc_rc7/1(@) +loc_rc2/1.0(bar:blah:foo) loc_rc7/1.2 +loc_rc2/2.0 loc_rc7/bar(@) +loc_rc3/1.0(default) loc_rc8/0.9(@) +loc_rc3/2.0(cur:stable) loc_rc8/1.0 +loc_rc3/3.0(chk:exp:new:test) loc_rc010/2.0 +loc_rc4/1.0 loc_rcv1/1(@) +loc_rc4/2.0(default) loc_rcv1/1.1 +loc_rc4/3.0 loc_rcv1/1.2(default:new) +loc_rc5/1.0 loc_rcv1/2.0 +loc_rc5/2.0 loc_rcv1/bar(@) +loc_rc6/0.9 loc_rcv2/1.2 +loc_rc6/1(@) loc_rcv2/1.5 +loc_rc6/1.2(default:new) loc_rcv2/2.0 +loc_rc6/bar(@) Key: -(@)=module-alias (symbolic-version) " +(@)=module-alias (symbolic-version)" set width_100 "[ts_avail_header 100] -loc_rc1/1.0(foo) loc_rc4/2.0(default) loc_rc7/0.9 loc_rcv1/1.1 -loc_rc1/2.0 loc_rc4/3.0 loc_rc7/1(@) loc_rcv1/1.2(default:new) -loc_rc2/1.0(bar:blah:foo) loc_rc5/1.0 loc_rc7/1.2 loc_rcv1/2.0 -loc_rc2/2.0 loc_rc5/2.0 loc_rc7/bar(@) loc_rcv1/bar(@) -loc_rc3/1.0(default) loc_rc6/0.9 loc_rc8/0.9(@) loc_rcv2/1.2 -loc_rc3/2.0(cur:stable) loc_rc6/1(@) loc_rc8/1.0 loc_rcv2/1.5 -loc_rc3/3.0(chk:exp:new:test) loc_rc6/1.2(default:new) loc_rc010/2.0 loc_rcv2/2.0 +loc_rc1/1.0(foo) loc_rc4/2.0(default) loc_rc7/0.9 loc_rcv1/1.1 +loc_rc1/2.0 loc_rc4/3.0 loc_rc7/1(@) loc_rcv1/1.2(default:new) +loc_rc2/1.0(bar:blah:foo) loc_rc5/1.0 loc_rc7/1.2 loc_rcv1/2.0 +loc_rc2/2.0 loc_rc5/2.0 loc_rc7/bar(@) loc_rcv1/bar(@) +loc_rc3/1.0(default) loc_rc6/0.9 loc_rc8/0.9(@) loc_rcv2/1.2 +loc_rc3/2.0(cur:stable) loc_rc6/1(@) loc_rc8/1.0 loc_rcv2/1.5 +loc_rc3/3.0(chk:exp:new:test) loc_rc6/1.2(default:new) loc_rc010/2.0 loc_rcv2/2.0 loc_rc4/1.0 loc_rc6/bar(@) loc_rcv1/1(@) Key: -(@)=module-alias (symbolic-version) " +(@)=module-alias (symbolic-version)" set width_400 "[ts_avail_header 400] -loc_rc1/1.0(foo) loc_rc2/1.0(bar:blah:foo) loc_rc3/1.0(default) loc_rc3/3.0(chk:exp:new:test) loc_rc4/2.0(default) loc_rc5/1.0 loc_rc6/0.9 loc_rc6/1.2(default:new) loc_rc7/0.9 loc_rc7/1.2 loc_rc8/0.9(@) loc_rc010/2.0 loc_rcv1/1.1 loc_rcv1/2.0 loc_rcv2/1.2 loc_rcv2/2.0 +loc_rc1/1.0(foo) loc_rc2/1.0(bar:blah:foo) loc_rc3/1.0(default) loc_rc3/3.0(chk:exp:new:test) loc_rc4/2.0(default) loc_rc5/1.0 loc_rc6/0.9 loc_rc6/1.2(default:new) loc_rc7/0.9 loc_rc7/1.2 loc_rc8/0.9(@) loc_rc010/2.0 loc_rcv1/1.1 loc_rcv1/2.0 loc_rcv2/1.2 loc_rcv2/2.0 loc_rc1/2.0 loc_rc2/2.0 loc_rc3/2.0(cur:stable) loc_rc4/1.0 loc_rc4/3.0 loc_rc5/2.0 loc_rc6/1(@) loc_rc6/bar(@) loc_rc7/1(@) loc_rc7/bar(@) loc_rc8/1.0 loc_rcv1/1(@) loc_rcv1/1.2(default:new) loc_rcv1/bar(@) loc_rcv2/1.5 Key: -(@)=module-alias (symbolic-version) " +(@)=module-alias (symbolic-version)" @@ -346,14 +353,14 @@ testerr_cmd sh {avail loc_rc --width=1 -w 60} $width_60 # non-integer value set via MODULES_TERM_WIDTH should be silently ignored setenv_var MODULES_TERM_WIDTH "-80" testouterr_cmd sh {avail loc_rc} OK "[ts_avail_header 169] -loc_rc1/1.0(foo) loc_rc3/2.0(cur:stable) loc_rc5/1.0 loc_rc6/bar(@) loc_rc8/0.9(@) loc_rcv1/1.2(default:new) loc_rcv2/2.0 +loc_rc1/1.0(foo) loc_rc3/2.0(cur:stable) loc_rc5/1.0 loc_rc6/bar(@) loc_rc8/0.9(@) loc_rcv1/1.2(default:new) loc_rcv2/2.0 loc_rc1/2.0 loc_rc3/3.0(chk:exp:new:test) loc_rc5/2.0 loc_rc7/0.9 loc_rc8/1.0 loc_rcv1/2.0 loc_rc2/1.0(bar:blah:foo) loc_rc4/1.0 loc_rc6/0.9 loc_rc7/1(@) loc_rc010/2.0 loc_rcv1/bar(@) loc_rc2/2.0 loc_rc4/2.0(default) loc_rc6/1(@) loc_rc7/1.2 loc_rcv1/1(@) loc_rcv2/1.2 loc_rc3/1.0(default) loc_rc4/3.0 loc_rc6/1.2(default:new) loc_rc7/bar(@) loc_rcv1/1.1 loc_rcv2/1.5 Key: -(@)=module-alias (symbolic-version) " +(@)=module-alias (symbolic-version)" unsetenv_var MODULES_TERM_WIDTH @@ -368,39 +375,39 @@ setenv_var __MODULES_LMALTNAME loc_rc4/1.0&loc_rc4/default&loc_rc4 # Set the outputs for different width set width_0 "Currently Loaded Modulefiles: - 1) loc_rc1/2.0 2) loc_rc2/2.0 3) loc_rc4/1.0(default) 4) loc_rc4/3.0 5) loc_rc5/1.0 6) loc_rc5/2.0 7) loc_rc7/0.9 8) loc_rcv2/1.2 + 1) loc_rc1/2.0 2) loc_rc2/2.0 3) loc_rc4/1.0(default) 4) loc_rc4/3.0 5) loc_rc5/1.0 6) loc_rc5/2.0 7) loc_rc7/0.9 8) loc_rcv2/1.2 Key: -(symbolic-version) " +(symbolic-version)" set width_1 "Currently Loaded Modulefiles: - 1) loc_rc1/2.0 - 2) loc_rc2/2.0 - 3) loc_rc4/1.0(default) - 4) loc_rc4/3.0 - 5) loc_rc5/1.0 - 6) loc_rc5/2.0 - 7) loc_rc7/0.9 - 8) loc_rcv2/1.2 + 1) loc_rc1/2.0 + 2) loc_rc2/2.0 + 3) loc_rc4/1.0(default) + 4) loc_rc4/3.0 + 5) loc_rc5/1.0 + 6) loc_rc5/2.0 + 7) loc_rc7/0.9 + 8) loc_rcv2/1.2 Key: -(symbolic-version) " +(symbolic-version)" set width_50 "Currently Loaded Modulefiles: - 1) loc_rc1/2.0 5) loc_rc5/1.0 - 2) loc_rc2/2.0 6) loc_rc5/2.0 - 3) loc_rc4/1.0(default) 7) loc_rc7/0.9 - 4) loc_rc4/3.0 8) loc_rcv2/1.2 + 1) loc_rc1/2.0 5) loc_rc5/1.0 + 2) loc_rc2/2.0 6) loc_rc5/2.0 + 3) loc_rc4/1.0(default) 7) loc_rc7/0.9 + 4) loc_rc4/3.0 8) loc_rcv2/1.2 Key: -(symbolic-version) " +(symbolic-version)" set width_80 "Currently Loaded Modulefiles: - 1) loc_rc1/2.0 3) loc_rc4/1.0(default) 5) loc_rc5/1.0 7) loc_rc7/0.9 - 2) loc_rc2/2.0 4) loc_rc4/3.0 6) loc_rc5/2.0 8) loc_rcv2/1.2 + 1) loc_rc1/2.0 3) loc_rc4/1.0(default) 5) loc_rc5/1.0 7) loc_rc7/0.9 + 2) loc_rc2/2.0 4) loc_rc4/3.0 6) loc_rc5/2.0 8) loc_rcv2/1.2 Key: -(symbolic-version) " +(symbolic-version)" # Test of default configuration @@ -460,25 +467,25 @@ setenv_var HOME $ORIG_HOME/home setenv_var MODULES_TERM_WIDTH "80" testerr_cmd sh {savelist} "[msg_named_coll] - 1) coll1 3) coll3 5) coll6.target 7) infocmd - 2) coll2 4) coll4.target 6) default 8) infocmdexp " + 1) coll1 3) coll3 5) coll6.target 7) infocmd + 2) coll2 4) coll4.target 6) default 8) infocmdexp" unsetenv_var MODULES_TERM_WIDTH setenv_var MODULES_TERM_WIDTH "80" testerr_cmd sh {savelist --width=0} "[msg_named_coll] - 1) coll1 2) coll2 3) coll3 4) coll4.target 5) coll6.target 6) default 7) infocmd 8) infocmdexp " + 1) coll1 2) coll2 3) coll3 4) coll4.target 5) coll6.target 6) default 7) infocmd 8) infocmdexp" unsetenv_var MODULES_TERM_WIDTH testerr_cmd sh {savelist -w 1} "[msg_named_coll] - 1) coll1 - 2) coll2 - 3) coll3 - 4) coll4.target - 5) coll6.target - 6) default - 7) infocmd - 8) infocmdexp " + 1) coll1 + 2) coll2 + 3) coll3 + 4) coll4.target + 5) coll6.target + 6) default + 7) infocmd + 8) infocmdexp" setenv_var HOME $ORIG_HOME diff --git a/testsuite/modules.70-maint/360-avail_output.exp b/testsuite/modules.70-maint/360-avail_output.exp index 4769bf179..23493cd0b 100644 --- a/testsuite/modules.70-maint/360-avail_output.exp +++ b/testsuite/modules.70-maint/360-avail_output.exp @@ -44,7 +44,7 @@ setenv_var TESTSUITE_AVAIL_OUTPUT_FOO_SYM 1 # -o/--output options test # -set tserr_avail_foo "foo/1.0\\(bar\\) " +set tserr_avail_foo "foo/1.0\\(bar\\)" set tserr_avail_terse_foo "foo/1.0\\(bar\\)" testouterr_cmd_re sh {avail -o sym foo/1.0} OK $tserr_avail_foo @@ -180,7 +180,7 @@ unsetenv_var TESTSUITE_OUTPUT_INMODFILE setenv_var MODULES_AVAIL_OUTPUT modulepath setenv_var MODULES_AVAIL_TERSE_OUTPUT modulepath -testouterr_cmd_re sh {avail foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 " +testouterr_cmd_re sh {avail foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0" testouterr_cmd_re sh {avail -t foo/1.0} OK "$mpre:\nfoo/1.0" # no impact on -l/-j @@ -195,7 +195,7 @@ testouterr_cmd sh {avail -j foo/1.0} OK $tserr_avail_json setenv_var MODULES_AVAIL_OUTPUT foo setenv_var MODULES_AVAIL_TERSE_OUTPUT foo -testouterr_cmd_re sh {avail foo/1.0} OK "$modlin $mpre $modlin\n$tserr_avail_foo\n\nKey:\n\\(symbolic-version\\) " +testouterr_cmd_re sh {avail foo/1.0} OK "$modlin $mpre $modlin\n$tserr_avail_foo\n\nKey:\n\\(symbolic-version\\)" testouterr_cmd_re sh {avail -t foo/1.0} OK $mpre:\n$tserr_avail_terse_foo testouterr_cmd_re sh {avail -o sym foo/1.0} OK $tserr_avail_foo testouterr_cmd_re sh {avail -t --output=sym foo/1.0} OK $tserr_avail_terse_foo @@ -206,10 +206,10 @@ testouterr_cmd sh {avail -o foo foo/1.0} ERR $tserr_invalid_o_val # key test # -testouterr_cmd_re sh {avail -o modulepath:key:sym foo/1.0} OK "$modlin $mpre $modlin\n$tserr_avail_foo\n\nKey:\n\\(symbolic-version\\) " -testouterr_cmd_re sh {avail -t --output=modulepath:sym:key foo/1.0} OK "$mpre:\n$tserr_avail_terse_foo\n\nKey:\n\\(symbolic-version\\) " +testouterr_cmd_re sh {avail -o modulepath:key:sym foo/1.0} OK "$modlin $mpre $modlin\n$tserr_avail_foo\n\nKey:\n\\(symbolic-version\\)" +testouterr_cmd_re sh {avail -t --output=modulepath:sym:key foo/1.0} OK "$mpre:\n$tserr_avail_terse_foo\n\nKey:\n\\(symbolic-version\\)" setenv_var MODULES_AVAIL_OUTPUT modulepath:key:sym -testouterr_cmd_re sh {avail foo/1.0} OK "$modlin $mpre $modlin\n$tserr_avail_foo\n\nKey:\n\\(symbolic-version\\) " +testouterr_cmd_re sh {avail foo/1.0} OK "$modlin $mpre $modlin\n$tserr_avail_foo\n\nKey:\n\\(symbolic-version\\)" unsetenv_var MODULES_AVAIL_OUTPUT @@ -217,10 +217,10 @@ unsetenv_var MODULES_AVAIL_OUTPUT # sym test # -testouterr_cmd_re sh {avail -o modulepath:key foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 " +testouterr_cmd_re sh {avail -o modulepath:key foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0" testouterr_cmd_re sh {avail -t --output=modulepath:key foo/1.0} OK "$mpre:\nfoo/1.0" setenv_var MODULES_AVAIL_OUTPUT modulepath -testouterr_cmd_re sh {avail foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 " +testouterr_cmd_re sh {avail foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0" unsetenv_var MODULES_AVAIL_OUTPUT @@ -228,25 +228,25 @@ unsetenv_var MODULES_AVAIL_OUTPUT # indesym test # -set tserr_avail_foo "foo/1.0\\(bar\\) " -testouterr_cmd_re sh {avail -o modulepath:key:indesym foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 " -testouterr_cmd_re sh {avail -o modulepath:key:sym:indesym foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 " -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym foo} OK "$modlin $mpre $modlin\nfoo/0.2 foo/0.err foo/0.load foo/0.prereq foo/1.0 foo/2.0 foo/bar foo/sym " -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym foo/bar} OK "$modlin $mpre $modlin\nfoo/bar " -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym:sym foo/bar} OK "$modlin $mpre $modlin\nfoo/bar " +set tserr_avail_foo "foo/1.0\\(bar\\)" +testouterr_cmd_re sh {avail -o modulepath:key:indesym foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0" +testouterr_cmd_re sh {avail -o modulepath:key:sym:indesym foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0" +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym foo} OK "$modlin $mpre $modlin\nfoo/0.2 foo/0.err foo/0.load foo/0.prereq foo/1.0 foo/2.0 foo/bar foo/sym" +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym foo/bar} OK "$modlin $mpre $modlin\nfoo/bar" +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym:sym foo/bar} OK "$modlin $mpre $modlin\nfoo/bar" setenv_var MODULES_AVAIL_TERSE_OUTPUT key:indesym testouterr_cmd sh {avail -t foo/bar} OK "foo/bar" testouterr_cmd sh {avail -t foo/1.0} OK "foo/1.0" unsetenv_var MODULES_AVAIL_TERSE_OUTPUT setenv_path_var MODULEPATH $modpath.2 -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:dirwsym:indesym hide3/sub2} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 hide3/sub2/5.0 hide3/sub2/default hide3/sub2/new hide3/sub2/sym " -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym hide3/sub2} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 hide3/sub2/5.0 hide3/sub2/default hide3/sub2/new hide3/sub2/sym " -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:dirwsym:indesym hide3/sym} OK "$modlin $modpathre.2 $modlin\nhide3/sym " -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym hide3/sym} OK "$modlin $modpathre.2 $modlin\nhide3/sym " -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym hide3/sub2/default} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/default " -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym hide3/sub2/4.0} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 " -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:sym:indesym hide3/sub2/default} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/default " -testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym:sym hide3/sub2/4.0} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 " +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:dirwsym:indesym hide3/sub2} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 hide3/sub2/5.0 hide3/sub2/default hide3/sub2/new hide3/sub2/sym" +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym hide3/sub2} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 hide3/sub2/5.0 hide3/sub2/default hide3/sub2/new hide3/sub2/sym" +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:dirwsym:indesym hide3/sym} OK "$modlin $modpathre.2 $modlin\nhide3/sym" +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym hide3/sym} OK "$modlin $modpathre.2 $modlin\nhide3/sym" +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym hide3/sub2/default} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/default" +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym hide3/sub2/4.0} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0" +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:sym:indesym hide3/sub2/default} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/default" +testouterr_cmd_re sh {avail -w 120 -o modulepath:key:indesym:sym hide3/sub2/4.0} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0" setenv_var MODULES_AVAIL_TERSE_OUTPUT key:indesym:dirwsym testouterr_cmd sh {avail -t hide3/sym} OK "hide3/sym" testouterr_cmd sh {avail -t -o key:indesym hide3/sym} OK "hide3/sym" @@ -261,10 +261,10 @@ setenv_path_var MODULEPATH $mp # setenv_var TESTSUITE_AVAIL_OUTPUT_FOO_TAG 1 -testouterr_cmd_re sh {avail -o modulepath:key:tag foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 \n\nKey:\n " +testouterr_cmd_re sh {avail -o modulepath:key:tag foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 \n\nKey:\n" testouterr_cmd_re sh {avail -t --output=tag:modulepath foo/1.0} OK "$mpre:\nfoo/1.0 " setenv_var MODULES_AVAIL_OUTPUT modulepath:tag:sym:key -testouterr_cmd_re sh {avail foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0\\(bar\\) \n\nKey:\n\\(symbolic-version\\) " +testouterr_cmd_re sh {avail foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0\\(bar\\) \n\nKey:\n\\(symbolic-version\\) " unsetenv_var MODULES_AVAIL_OUTPUT unsetenv_var TESTSUITE_AVAIL_OUTPUT_FOO_TAG @@ -281,7 +281,7 @@ testouterr_cmd_re sh {avail -t --output=tag:modulepath hide2} OK "$mpre:\nhide2/ testouterr_cmd_re sh {avail -t --output=tag:modulepath hide2/1.1} OK {} testouterr_cmd_re sh {avail -o tag:modulepath hide2/1.1} OK {} setenv_var MODULES_AVAIL_OUTPUT modulepath:alias -testouterr_cmd_re sh {avail hide2} OK "$modlin $mpre $modlin\nhide2/1.0 hide2/1.1 hide2/1.5 " +testouterr_cmd_re sh {avail hide2} OK "$modlin $mpre $modlin\nhide2/1.0 hide2/1.1 hide2/1.5" unsetenv_var MODULES_AVAIL_OUTPUT setenv_var MODULES_AVAIL_TERSE_OUTPUT modulepath:alias testouterr_cmd_re sh {avail -t hide2} OK "$mpre:\nhide2/1.0\nhide2/1.1\nhide2/1.5" @@ -293,8 +293,8 @@ unsetenv_var MODULES_AVAIL_TERSE_OUTPUT # dirwsym test # -testouterr_cmd_re sh {avail -o modulepath hide3/sub2} OK "$modlin $mpre $modlin\nhide3/sub2/4.0 hide3/sub2/5.0 " -testouterr_cmd_re sh {avail --output=sym:modulepath hide3/sub2} OK "$modlin $mpre $modlin\nhide3/sub2/4.0\\(default:sym\\) hide3/sub2/5.0\\(new\\) " +testouterr_cmd_re sh {avail -o modulepath hide3/sub2} OK "$modlin $mpre $modlin\nhide3/sub2/4.0 hide3/sub2/5.0" +testouterr_cmd_re sh {avail --output=sym:modulepath hide3/sub2} OK "$modlin $mpre $modlin\nhide3/sub2/4.0\\(default:sym\\) hide3/sub2/5.0\\(new\\)" testouterr_cmd_re sh {avail -t -o modulepath:dirwsym hide3/sub2} OK "$mpre:\nhide3/sub2/\nhide3/sub2/4.0\nhide3/sub2/5.0" testouterr_cmd_re sh {avail -t --output=modulepath:sym:dirwsym hide3/sub2} OK "$mpre:\nhide3/sub2/\\(sym\\)\nhide3/sub2/4.0\\(default:sym\\)\nhide3/sub2/5.0\\(new\\)" setenv_var MODULES_AVAIL_TERSE_OUTPUT modulepath:dirwsym:sym @@ -316,13 +316,14 @@ if {![info exists term_cols]} { } elseif {[catch {exec stty cols $test_cols}] || [getTtyCols] ne $test_cols} { send_user "\tskipping terminal width-specific tests, cannot set width\n" } else { - testouterr_cmd sh {avail -o sym:tag} OK "cross/1.0 dcross/dir2/1.0(craft) lcross/1 lcross/11 vcross/4.0 -cross/3.0(bef) dvcross/4.0 lcross/2 loc_dv10/1.1 vcross/6.0 -cross/4.0 dvcross/dir1/1.0(bef) lcross/4 loc_dv10/1.2 -cross/6.0 dvcross/dir1/2.0 lcross/5 novercross -dcross/4.0 dvcross/dir2/1.0(craft) lcross/6 othcross/1.0(bef) -dcross/dir1/1.0(bef) fodcross/2.7.13 lcross/7 vcross/1.0 -dcross/dir1/2.0 fodcross/2.7.13/sub-13 lcross/10 vcross/3.0(bef) " + testouterr_cmd sh {avail -o sym:tag} OK "cross/1.0 dvcross/4.0 lcross/4 novercross +cross/3.0(bef) dvcross/dir1/1.0(bef) lcross/5 othcross/1.0(bef) +cross/4.0 dvcross/dir1/2.0 lcross/6 vcross/1.0 +cross/6.0 dvcross/dir2/1.0(craft) lcross/7 vcross/3.0(bef) +dcross/4.0 fodcross/2.7.13 lcross/10 vcross/4.0 +dcross/dir1/1.0(bef) fodcross/2.7.13/sub-13 lcross/11 vcross/6.0 +dcross/dir1/2.0 lcross/1 loc_dv10/1.1 +dcross/dir2/1.0(craft) lcross/2 loc_dv10/1.2 " testouterr_cmd sh {avail -t -o sym:tag} OK "cross/1.0 cross/3.0(bef) @@ -363,7 +364,7 @@ vcross/6.0" setenv_path_var MODULEPATH $modpath.2:$modpath.3 setenv_var MODULES_AVAIL_OUTPUT sym:tag setenv_var MODULES_AVAIL_TERSE_OUTPUT sym:tag -testouterr_cmd sh {avail foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err foo/0.load foo/0.prereq " +testouterr_cmd sh {avail foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err foo/0.load foo/0.prereq" testouterr_cmd sh {avail -t foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err @@ -371,7 +372,7 @@ foo/0.load foo/0.prereq" setenv_path_var MODULEPATH $modpath.3:$modpath.2 -testouterr_cmd sh {avail foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err foo/0.load foo/0.prereq " +testouterr_cmd sh {avail foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err foo/0.load foo/0.prereq" testouterr_cmd sh {avail -t foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err @@ -388,81 +389,81 @@ setenv_var TESTSUITE_SPIDER_MODPATH2 use_modpath3 setenv_path_var MODULEPATH $modpath.spider1 setenv_var MODULES_AVAIL_OUTPUT sym:tag:modulepath:via testouterr_cmd_re sh {avail mod} OK "$modlin $modpathre.spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2" # no modulepath label set, no using module loaded setenv_path_var MODULEPATH $modpath.spider2:$modpath.spider1 testouterr_cmd_re sh {avail mod} OK "$modlin $modpathre.spider2 $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2" # modulepath label set, no using module loaded setenv_var TESTSUITE_VIA modulepath_label1 testouterr_cmd_re sh {avail mod} OK "$modlin My label spider2 $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin My label spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2" # no modulepath label set, using module loaded unsetenv_var TESTSUITE_VIA setenv_loaded_module [list moda/1] [list $modpath.spider1/moda/1] setenv_var __MODULES_LMUSE moda/1&$modpath.spider2 testouterr_cmd_re sh {avail mod} OK "$modlin $modpathre.spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2" # no modulepath label set, using module loaded, used path was there before setenv_var __MODULES_SHARE_MODULEPATH $modpath.spider2:2 testouterr_cmd_re sh {avail mod} OK "$modlin $modpathre.spider2 $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2" unsetenv_var __MODULES_SHARE_MODULEPATH # modulepath label set, using module loaded setenv_var TESTSUITE_VIA modulepath_label1 testouterr_cmd_re sh {avail mod} OK "$modlin My label spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin My label spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2" # modulepath label set, using module loaded, used path was there before setenv_var __MODULES_SHARE_MODULEPATH $modpath.spider2:2 testouterr_cmd_re sh {avail mod} OK "$modlin My label spider2 $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin My label spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2" unsetenv_var __MODULES_SHARE_MODULEPATH # no modulepath label set, using module loaded, but added modulepath unused unsetenv_var TESTSUITE_VIA setenv_path_var MODULEPATH $modpath.spider1 testouterr_cmd_re sh {avail mod} OK "$modlin $modpathre.spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2" # modulepath label set, using module loaded, but added modulepath unused setenv_var TESTSUITE_VIA modulepath_label1 testouterr_cmd_re sh {avail mod} OK "$modlin My label spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2" # no modulepath label set, using module loaded, but primary modulepath unused unsetenv_var TESTSUITE_VIA setenv_path_var MODULEPATH $modpath.spider2 testouterr_cmd_re sh {avail mod} OK "$modlin $modpathre.spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 " +modb/1 modb/2" # modulepath label set, using module loaded, but primary modulepath unused setenv_var TESTSUITE_VIA modulepath_label1 testouterr_cmd_re sh {avail mod} OK "$modlin My label spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 " +modb/1 modb/2" # several loaded modules using same modulepath unsetenv_var TESTSUITE_VIA @@ -470,10 +471,10 @@ setenv_path_var MODULEPATH $modpath.spider2:$modpath.spider1 setenv_loaded_module [list moda/1 moda/2] [list $modpath.spider1/moda/1 $modpath.spider1/moda/2] setenv_var __MODULES_LMUSE moda/1&$modpath.spider2:moda/2&$modpath.spider2 set tserr "$modlin $modpathre.spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2 " testouterr_cmd_re sh {avail mod} OK $tserr setenv_var __MODULES_SHARE_MODULEPATH $modpath.spider2:2 @@ -481,10 +482,10 @@ testouterr_cmd_re sh {avail mod} OK $tserr setenv_var __MODULES_SHARE_MODULEPATH $modpath.spider2:3 set tserr "$modlin $modpathre.spider2 $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 " +moda/1 moda/2 " testouterr_cmd_re sh {avail mod} OK $tserr unsetenv_var __MODULES_SHARE_MODULEPATH @@ -510,7 +511,7 @@ unsetenv_var TESTSUITE_VIA setenv_loaded_module [list moda/1] [list $modpath.spider1/moda/1] setenv_var __MODULES_LMUSE moda/1&$modpath.spider2 setenv_var MODULES_AVAIL_OUTPUT sym:tag:via -testouterr_cmd sh {avail mod} OK "moda/1 moda/2 modb/1 modb/2 " +testouterr_cmd sh {avail mod} OK "moda/1 moda/2 modb/1 modb/2" # via not supported on terse output mode setenv_var MODULES_AVAIL_TERSE_OUTPUT sym:tag:modulepath:via @@ -530,10 +531,10 @@ setenv_loaded_module [list foo/0.2] [list $modpath.2/foo/0.2] setenv_var __MODULES_LMUSE foo/0.2&$modpath.3 setenv_path_var MODULEPATH $modpath.3:$modpath.2 testouterr_cmd_re sh {avail foo/0} OK "$modlin $modpathre.3 \\(via foo/0.2\\) $modlin -foo/0.2\\(sym\\) foo/0.err foo/0.load foo/0.prereq +foo/0.2\\(sym\\) foo/0.err foo/0.load foo/0.prereq $modlin $modpathre.2 $modlin -foo/0.1 foo/0.2\\(sym\\) " +foo/0.1 foo/0.2\\(sym\\) " # variable reference in modulepath @@ -545,23 +546,23 @@ setenv_var MODULEPATH $modpath.spider\$FOO_VAR_REF:$modpath.4 setenv_var FOO_VAR_REF 3 set tserr "$modlin $modpathre.spider3 \\(via modulepath/1\\) $modlin -modc/1 modc/2 +modc/1 modc/2 $modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 " +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2" testouterr_cmd_re sh {avail mod} OK $tserr setenv_var FOO_VAR_REF 2 set tserr "$modlin $modpathre.spider2 \\(via modulepath/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 " +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2" testouterr_cmd_re sh {avail mod} OK $tserr unsetenv_var FOO_VAR_REF set tserr "$modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 " +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2" testouterr_cmd_re sh {avail mod} OK $tserr @@ -570,17 +571,17 @@ setenv_var TESTSUITE_USE_MODULEPATH use_rel_path setenv_var __MODULES_LMUSE modulepath/1&$modpath.spider3 setenv_var MODULEPATH $modpath.spider3:$modpath.4 set tserr "$modlin $modpathre.spider3 \\(via modulepath/1\\) $modlin -modc/1 modc/2 +modc/1 modc/2 $modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 " +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2" testouterr_cmd_re sh {avail mod} OK $tserr setenv_var TESTSUITE_USE_MODULEPATH prepend_rel_path setenv_var __MODULES_LMUSE modulepath/1&../../../testsuite/modulefiles.spider3 setenv_var MODULEPATH ../../../testsuite/modulefiles.spider3:$modpath.4 set tserr "$modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 " +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2" testouterr_cmd_re sh {avail mod} OK $tserr @@ -614,11 +615,11 @@ setenv_var TESTSUITE_PROVIDE multiple setenv_var MODULES_AVAIL_OUTPUT sym:tag:alias setenv_var MODULES_AVAIL_TERSE_OUTPUT sym:tag:alias -testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0 } -testouterr_cmd sh {avail foo/1} OK {foo/1.0 } +testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0} +testouterr_cmd sh {avail foo/1} OK {foo/1.0} testouterr_cmd sh {avail quux} OK {} -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3} setenv_var MODULES_AVAIL_TERSE_OUTPUT sym:tag:alias @@ -634,7 +635,7 @@ setenv_var MODULES_AVAIL_OUTPUT sym:tag:alias:variant testouterr_cmd sh {avail -t foo} OK "foo/1.0\nfoo/2.0\nfoo/9.0" testouterr_cmd sh {avail -t foo/1} OK "foo/1.0" testouterr_cmd sh {avail -t quux} OK {} -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} testouterr_cmd sh {avail -t provide} OK "provide/1\nprovide/2\nprovide/3" # Extra Match Search enabled with extra specifier set, but it does not trigger provided-alias insertion @@ -643,16 +644,16 @@ setenv_var MODULES_AVAIL_OUTPUT sym:tag:alias testouterr_cmd sh {avail -t foo not:tag:loaded} OK "foo/1.0\nfoo/2.0\nfoo/9.0" testouterr_cmd sh {avail -t foo/1 not:tag:loaded} OK "foo/1.0" testouterr_cmd sh {avail -t quux not:tag:loaded} OK {} -testouterr_cmd sh {avail * not:tag:loaded} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail * not:tag:loaded} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} testouterr_cmd sh {avail -t provide not:tag:loaded} OK "provide/1\nprovide/2\nprovide/3" setenv_var MODULES_AVAIL_OUTPUT sym:tag:alias:provided-alias -testouterr_cmd sh {avail foo} OK {foo/1(@) foo/1.0 foo/2.0 foo/9.0 } -testouterr_cmd sh {avail foo/1} OK {foo/1(@) foo/1.0 } -testouterr_cmd sh {avail quux} OK {quux/1(@) } -testouterr_cmd sh {avail} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@) } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail foo} OK {foo/1(@) foo/1.0 foo/2.0 foo/9.0} +testouterr_cmd sh {avail foo/1} OK {foo/1(@) foo/1.0} +testouterr_cmd sh {avail quux} OK {quux/1(@)} +testouterr_cmd sh {avail} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@)} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3} setenv_var MODULES_AVAIL_TERSE_OUTPUT sym:tag:alias:provided-alias @@ -667,123 +668,123 @@ setenv_var MODULES_AVAIL_TERSE_OUTPUT sym:tag:alias:variant setenv_var TESTSUITE_PROVIDE duplicate_with_family setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_family setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var MODULES_AVAIL_OUTPUT sym:tag:alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var MODULES_AVAIL_OUTPUT sym:tag -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var TESTSUITE_PROVIDE duplicate_with_family3 setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {avail quux} OK {quux(@) } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {avail quux} OK {quux(@)} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_family2 setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {avail quux} OK {quux(@) } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {avail quux} OK {quux(@)} setenv_var MODULES_AVAIL_OUTPUT sym:tag:alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} testouterr_cmd sh {avail quux} OK {} setenv_var MODULES_AVAIL_OUTPUT sym:tag -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} testouterr_cmd sh {avail quux} OK {} setenv_var TESTSUITE_PROVIDE duplicate_with_alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_same_alias setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var MODULES_AVAIL_OUTPUT sym:tag -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var MODULES_AVAIL_OUTPUT sym:tag:alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail foo} OK {foo(@) foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail foo} OK {foo(@) foo/1.0 foo/2.0 foo/9.0} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_diff_alias setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var TESTSUITE_PROVIDE duplicate_with_alias3 -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {avail quux} OK {quux(@) } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {avail quux} OK {quux(@)} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_same_alias2 setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {avail quux} OK {quux(@) } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {avail quux} OK {quux(@)} setenv_var MODULES_AVAIL_OUTPUT sym:tag:alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {avail quux} OK {quux(@) } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {avail quux} OK {quux(@)} setenv_var MODULES_AVAIL_OUTPUT sym:tag -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} testouterr_cmd sh {avail quux} OK {} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_diff_alias2 setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {avail quux} OK {quux(@) } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {avail quux} OK {quux(@)} setenv_var TESTSUITE_PROVIDE duplicate_with_version setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 provide/foo(@) } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 provide/foo(@) } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 provide/foo(@)} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 provide/foo(@)} setenv_var MODULES_AVAIL_OUTPUT sym:tag -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_diff_version setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2(foo) provide/3 } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2(foo) provide/3 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2(foo) provide/3} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2(foo) provide/3} setenv_var MODULES_AVAIL_OUTPUT sym:tag -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2(foo) provide/3 } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2(foo) provide/3 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2(foo) provide/3} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2(foo) provide/3} setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias setenv_var TESTSUITE_PROVIDE multiple_and_forbidden -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail provide/1} OK {provide/1 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3} +testouterr_cmd sh {avail provide/1} OK {provide/1 } testouterr_cmd sh {avail unk} OK {} testouterr_cmd sh {avail quux/1} OK {} @@ -795,36 +796,36 @@ testouterr_cmd sh {avail quux/1 envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_alias_forbidden -testouterr_cmd sh {avail} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@) } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail provide/1} OK {provide/1 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@)} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3} +testouterr_cmd sh {avail provide/1} OK {provide/1} testouterr_cmd sh {avail unk} OK {} -testouterr_cmd sh {avail quux/1} OK {quux/1(@) } +testouterr_cmd sh {avail quux/1} OK {quux/1(@) } -testouterr_cmd sh {avail envvar:FOO} OK {provide/1 } -testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {avail envvar:FOO} OK {provide/1} +testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1} testouterr_cmd sh {avail unk envvar:FOO} OK {} testouterr_cmd sh {avail quux/1 envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_family_forbidden -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {avail provide/1} OK {provide/1 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } +testouterr_cmd sh {avail provide/1} OK {provide/1} testouterr_cmd sh {avail unk} OK {} -testouterr_cmd sh {avail quux} OK {quux(@) } +testouterr_cmd sh {avail quux} OK {quux(@) } -testouterr_cmd sh {avail envvar:FOO} OK {provide/1 } -testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {avail envvar:FOO} OK {provide/1} +testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1} testouterr_cmd sh {avail unk envvar:FOO} OK {} testouterr_cmd sh {avail quux envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_expired -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail provide/1} OK {provide/1 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3} +testouterr_cmd sh {avail provide/1} OK {provide/1 } testouterr_cmd sh {avail unk} OK {} testouterr_cmd sh {avail quux/1} OK {} @@ -836,38 +837,38 @@ testouterr_cmd sh {avail quux envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_alias_expired -testouterr_cmd sh {avail} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@) } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail provide/1} OK {provide/1 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@)} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3} +testouterr_cmd sh {avail provide/1} OK {provide/1} testouterr_cmd sh {avail unk} OK {} -testouterr_cmd sh {avail quux/1} OK {quux/1(@) } +testouterr_cmd sh {avail quux/1} OK {quux/1(@) } -testouterr_cmd sh {avail envvar:FOO} OK {provide/1 } -testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {avail envvar:FOO} OK {provide/1} +testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1} testouterr_cmd sh {avail unk envvar:FOO} OK {} testouterr_cmd sh {avail quux/1 envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_family_expired -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {avail provide/1} OK {provide/1 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } +testouterr_cmd sh {avail provide/1} OK {provide/1} testouterr_cmd sh {avail unk} OK {} -testouterr_cmd sh {avail quux} OK {quux(@) } +testouterr_cmd sh {avail quux} OK {quux(@) } -testouterr_cmd sh {avail envvar:FOO} OK {provide/1 } -testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {avail envvar:FOO} OK {provide/1} +testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1} testouterr_cmd sh {avail unk envvar:FOO} OK {} testouterr_cmd sh {avail quux envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_hidden -testouterr_cmd sh {avail} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/2 provide/3 quux/1(@) qux/1(@) } -testouterr_cmd sh {avail provide} OK {provide/2 provide/3 } -testouterr_cmd sh {avail provide/1} OK {provide/1 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/2 provide/3 quux/1(@) qux/1(@)} +testouterr_cmd sh {avail provide} OK {provide/2 provide/3} +testouterr_cmd sh {avail provide/1} OK {provide/1 } testouterr_cmd sh {avail unk} OK {} -testouterr_cmd sh {avail quux/1} OK {quux/1(@) } +testouterr_cmd sh {avail quux/1} OK {quux/1(@)} testouterr_cmd sh {avail envvar:FOO} OK {} testouterr_cmd sh {avail provide envvar:FOO} OK {} @@ -877,46 +878,46 @@ testouterr_cmd sh {avail quux envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_alias_hidden -testouterr_cmd sh {avail} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 qux/1(@) } -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail provide/1} OK {provide/1 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 qux/1(@)} +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3} +testouterr_cmd sh {avail provide/1} OK {provide/1} testouterr_cmd sh {avail unk} OK {} -testouterr_cmd sh {avail quux/1} OK {quux/1(@) } +testouterr_cmd sh {avail quux/1} OK {quux/1(@) } -testouterr_cmd sh {avail envvar:FOO} OK {provide/1 } -testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {avail envvar:FOO} OK {provide/1} +testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1} testouterr_cmd sh {avail unk envvar:FOO} OK {} testouterr_cmd sh {avail quux/1 envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_family_hidden -testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {avail provide/1} OK {provide/1 } +testouterr_cmd sh {avail} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {avail provide/1} OK {provide/1} testouterr_cmd sh {avail unk} OK {} -testouterr_cmd sh {avail quux} OK {quux(@) } +testouterr_cmd sh {avail quux} OK {quux(@) } -testouterr_cmd sh {avail envvar:FOO} OK {provide/1 } -testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {avail envvar:FOO} OK {provide/1} +testouterr_cmd sh {avail provide envvar:FOO} OK {provide/1} testouterr_cmd sh {avail unk envvar:FOO} OK {} testouterr_cmd sh {avail quux envvar:FOO} OK {} setenv_var MODULES_AVAIL_OUTPUT sym:tag:provided-alias setenv_var TESTSUITE_PROVIDE explicit_default -testouterr_cmd sh {avail provide} OK {provide/0(default:@) provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail provide} OK {provide/0(default:@) provide/1 provide/2 provide/3} setenv_var TESTSUITE_PROVIDE explicit_default_and_forbidden -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3} setenv_var TESTSUITE_PROVIDE explicit_default_and_alias_forbidden -testouterr_cmd sh {avail provide} OK {provide/0(default:@) provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail provide} OK {provide/0(default:@) provide/1 provide/2 provide/3} setenv_var TESTSUITE_PROVIDE explicit_default_and_hidden -testouterr_cmd sh {avail provide} OK {provide/0(default:@) provide/2 provide/3 } +testouterr_cmd sh {avail provide} OK {provide/0(default:@) provide/2 provide/3} setenv_var TESTSUITE_PROVIDE explicit_default_and_alias_hidden -testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3 } +testouterr_cmd sh {avail provide} OK {provide/1 provide/2 provide/3} file delete $mp/foo @@ -943,8 +944,8 @@ set mp $modpath.3 set mpre [regsub -all "\(\[.+?\]\)" $mp {\\\1}] setenv_path_var MODULEPATH $mp -testouterr_cmd sh {avail -o alias:sym foo@1:} OK "foo/2.0 " -set tserr "foo/1.0(bar) foo/2.0 " +testouterr_cmd sh {avail -o alias:sym foo@1:} OK "foo/2.0" +set tserr "foo/1.0(bar) foo/2.0" testouterr_cmd sh {avail -o alias:hidden:sym foo@1:} OK $tserr testouterr_cmd sh {avail --all -o alias:hidden:sym foo@1:} OK $tserr @@ -975,7 +976,7 @@ testouterr_cmd sh {avail -o +variant --terse variant/1.0} OK $mp:\nvariant/1.0{f testouterr_cmd sh {avail --output=+variant --terse variant/1.0} OK $mp:\nvariant/1.0{foo=val1} testouterr_cmd sh {avail -o -modulepath --terse variant/1.0} OK variant/1.0 testouterr_cmd sh {avail --output=-modulepath:sym:tag --terse foo/0.2} OK foo/0.2 -testouterr_cmd sh {avail --output=-modulepath:sym:tag foo/0.2} OK {foo/0.2 } +testouterr_cmd sh {avail --output=-modulepath:sym:tag foo/0.2} OK {foo/0.2} testouterr_cmd sh {avail --output=-sym: foo/0.2} ERR $tserr_invalid_output_val testouterr_cmd sh {avail --output=+foo: foo/0.2} ERR $tserr_invalid_output_val @@ -985,10 +986,10 @@ testouterr_cmd sh {ml avail --output=+foo: foo/0.2} ERR $tserr_invalid_output_va testouterr_cmd sh {ml avail -o -bar foo/0.2} ERR $tserr_invalid_o_val set tserr "$modlin $mpre $modlin -foo/0.2\\(sym\\) +foo/0.2\\(sym\\) Key: -\\(symbolic-version\\) " +\\(symbolic-version\\) " testouterr_cmd_re sh {avail -o +tag:sym foo/0.2} OK $tserr setenv_var MODULES_AVAIL_OUTPUT sym:tag @@ -996,7 +997,7 @@ setenv_var MODULES_AVAIL_TERSE_OUTPUT sym:tag testouterr_cmd sh {avail --output=+variant --terse variant/1.0} OK variant/1.0{foo=val1} testouterr_cmd sh {avail --output=+variant --terse foo/0.2} OK {foo/0.2(sym) } -testouterr_cmd sh {avail -o -modulepath:sym:tag foo/0.2} OK {foo/0.2 } +testouterr_cmd sh {avail -o -modulepath:sym:tag foo/0.2} OK {foo/0.2} # diff --git a/testsuite/modules.70-maint/361-list_output.exp b/testsuite/modules.70-maint/361-list_output.exp index 8c03e0570..9e78f9f27 100644 --- a/testsuite/modules.70-maint/361-list_output.exp +++ b/testsuite/modules.70-maint/361-list_output.exp @@ -43,7 +43,7 @@ setenv_var MODULES_AVAIL_INDEPTH 1 setenv_loaded_module [list foo/1.0] [list $mp/foo/1.0] setenv_var __MODULES_LMALTNAME foo/1.0&foo/bar -set tserr_list_foo "foo/1.0(bar) " +set tserr_list_foo "foo/1.0(bar)" set tserr_list_terse_foo "foo/1.0(bar)" testouterr_cmd sh {list -o sym} OK $tserr_list_foo @@ -89,7 +89,7 @@ testouterr_cmd sh {list --output=dirwsym:key} ERR $tserr_invalid_output_val set ans [list] lappend ans [list set _LMFILES_ $mp/foo/1.0:$mp/output/1.0] lappend ans [list set LOADEDMODULES foo/1.0:output/1.0] -set tserr_list_foo "foo/1.0\\(bar\\) " +set tserr_list_foo "foo/1.0\\(bar\\)" set tserr_list_terse_foo "foo/1.0\\(bar\\)" if {[cmpversion $tclsh_version 8.6] == -1} { @@ -145,7 +145,7 @@ unsetenv_var TESTSUITE_OUTPUT_INMODFILE setenv_var MODULES_LIST_OUTPUT header setenv_var MODULES_LIST_TERSE_OUTPUT header -testouterr_cmd_re sh {list} OK "$cur_loaded\nfoo/1.0 " +testouterr_cmd_re sh {list} OK "$cur_loaded\nfoo/1.0" testouterr_cmd sh {list -t} OK $cur_loaded\nfoo/1.0 # no impact on -l/-j @@ -158,7 +158,7 @@ testouterr_cmd sh {list -j} OK $tserr_list_json setenv_var MODULES_LIST_OUTPUT foo setenv_var MODULES_LIST_TERSE_OUTPUT foo -testouterr_cmd_re sh {list} OK "$cur_loaded\n 1\\) $tserr_list_foo\n\nKey:\n\\(symbolic-version\\) " +testouterr_cmd_re sh {list} OK "$cur_loaded\n 1\\) $tserr_list_foo\n\nKey:\n\\(symbolic-version\\)" testouterr_cmd sh {list -t} OK $cur_loaded\nfoo/1.0 testouterr_cmd_re sh {list -o sym} OK $tserr_list_foo testouterr_cmd_re sh {list -t --output=sym} OK $tserr_list_terse_foo @@ -170,7 +170,7 @@ testouterr_cmd sh {list -o foo} ERR $tserr_invalid_o_val # testouterr_cmd sh {list -t --output=header} OK $cur_loaded\nfoo/1.0 -testouterr_cmd sh {list -o header} OK "$cur_loaded\nfoo/1.0 " +testouterr_cmd sh {list -o header} OK "$cur_loaded\nfoo/1.0" unsetenv_loaded_module testouterr_cmd sh {list -o header} OK $no_loaded @@ -193,8 +193,8 @@ setenv_loaded_module [list foo/1.0] [list $mp/foo/1.0] testouterr_cmd sh {list -t --output=sym:header} OK $cur_loaded\nfoo/1.0(bar) testouterr_cmd sh {list -t --output=sym:header foo} OK $cur_matchingloaded\nfoo/1.0(bar) setenv_var MODULES_LIST_OUTPUT sym:header -testouterr_cmd sh {list} OK "$cur_loaded\nfoo/1.0(bar) " -testouterr_cmd sh {list foo} OK "$cur_matchingloaded\nfoo/1.0(bar) " +testouterr_cmd sh {list} OK "$cur_loaded\nfoo/1.0(bar)" +testouterr_cmd sh {list foo} OK "$cur_matchingloaded\nfoo/1.0(bar)" unsetenv_var MODULES_LIST_OUTPUT @@ -203,10 +203,10 @@ unsetenv_var MODULES_LIST_OUTPUT # key test # -testouterr_cmd sh {list -t --output=key:sym:header} OK "$cur_loaded\nfoo/1.0(bar)\n\nKey:\n(symbolic-version) " -testouterr_cmd sh {list -o sym:key} OK "foo/1.0(bar) \n\nKey:\n(symbolic-version) " +testouterr_cmd sh {list -t --output=key:sym:header} OK "$cur_loaded\nfoo/1.0(bar)\n\nKey:\n(symbolic-version)" +testouterr_cmd sh {list -o sym:key} OK "foo/1.0(bar)\n\nKey:\n(symbolic-version)" setenv_var MODULES_LIST_TERSE_OUTPUT key:sym -testouterr_cmd sh {list -t} OK "foo/1.0(bar)\n\nKey:\n(symbolic-version) " +testouterr_cmd sh {list -t} OK "foo/1.0(bar)\n\nKey:\n(symbolic-version)" unsetenv_var MODULES_LIST_TERSE_OUTPUT @@ -214,19 +214,19 @@ unsetenv_var MODULES_LIST_TERSE_OUTPUT # idx test # -testouterr_cmd sh {list --output=sym:idx} OK " 1) foo/1.0(bar) " -testouterr_cmd sh {list --output=sym:idx foo} OK " 1) foo/1.0(bar) " -testouterr_cmd sh {list -t -o idx:sym:key:header} OK "$cur_loaded\n 1) foo/1.0(bar) \n\nKey:\n(symbolic-version) " +testouterr_cmd sh {list --output=sym:idx} OK " 1) foo/1.0(bar)" +testouterr_cmd sh {list --output=sym:idx foo} OK " 1) foo/1.0(bar)" +testouterr_cmd sh {list -t -o idx:sym:key:header} OK "$cur_loaded\n 1) foo/1.0(bar) \n\nKey:\n(symbolic-version)" # # sym test # -testouterr_cmd sh {list --output=idx} OK " 1) foo/1.0 " +testouterr_cmd sh {list --output=idx} OK " 1) foo/1.0" testouterr_cmd sh {list -t -o idx:key:header} OK "$cur_loaded\n 1) foo/1.0 " setenv_var MODULES_LIST_OUTPUT idx:key -testouterr_cmd sh {list} OK " 1) foo/1.0 " +testouterr_cmd sh {list} OK " 1) foo/1.0" unsetenv_var MODULES_LIST_OUTPUT @@ -235,8 +235,8 @@ unsetenv_var MODULES_LIST_OUTPUT # setenv_var __MODULES_LMTAG foo/1.0&baz -testouterr_cmd sh {list --output=tag:idx} OK " 1) foo/1.0 " -testouterr_cmd sh {list -t -o key:tag:header} OK "$cur_loaded\nfoo/1.0 \n\nKey:\n " +testouterr_cmd sh {list --output=tag:idx} OK " 1) foo/1.0 " +testouterr_cmd sh {list -t -o key:tag:header} OK "$cur_loaded\nfoo/1.0 \n\nKey:\n" setenv_var MODULES_LIST_TERSE_OUTPUT idx:tag testouterr_cmd sh {list -t} OK " 1) foo/1.0 " unsetenv_var MODULES_LIST_TERSE_OUTPUT @@ -248,8 +248,8 @@ unsetenv_var __MODULES_LMTAG # setenv_var __MODULES_LMALTNAME foo/1.0&foo/bar&foo&al|alfoo -testouterr_cmd sh {list --output=alias:idx} OK " 1) alfoo 2) foo/1.0 " -testouterr_cmd sh {list --output=alias:idx:sym:key} OK " 1) alfoo(@) 2) foo/1.0(bar) \n\nKey:\n(@)=module-alias (symbolic-version) " +testouterr_cmd sh {list --output=alias:idx} OK " 1) alfoo 2) foo/1.0" +testouterr_cmd sh {list --output=alias:idx:sym:key} OK " 1) alfoo(@) 2) foo/1.0(bar)\n\nKey:\n(@)=module-alias (symbolic-version)" setenv_var MODULES_LIST_TERSE_OUTPUT idx:alias testouterr_cmd sh {list -t} OK " 1) alfoo \n 2) foo/1.0 " unsetenv_var MODULES_LIST_TERSE_OUTPUT @@ -259,8 +259,8 @@ unsetenv_var MODULES_LIST_TERSE_OUTPUT # indesym test # -testouterr_cmd sh {list --output=indesym:idx} OK " 1) foo/bar 2) foo/1.0 " -testouterr_cmd sh {list --output=alias:idx:indesym:sym:key} OK " 1) foo/bar 2) alfoo 3) foo/1.0 " +testouterr_cmd sh {list --output=indesym:idx} OK " 1) foo/bar 2) foo/1.0" +testouterr_cmd sh {list --output=alias:idx:indesym:sym:key} OK " 1) foo/bar 2) alfoo 3) foo/1.0" setenv_var MODULES_LIST_TERSE_OUTPUT idx:alias:sym:indesym testouterr_cmd sh {list -t} OK " 1) foo/bar \n 2) alfoo \n 3) foo/1.0 " unsetenv_var MODULES_LIST_TERSE_OUTPUT @@ -271,9 +271,9 @@ unsetenv_var MODULES_LIST_TERSE_OUTPUT # setenv_var __MODULES_LMTAG foo/1.0&hidden-loaded -set tserr " 1) alfoo 2) foo/1.0 " +set tserr " 1) alfoo 2) foo/1.0" testouterr_cmd sh {list --output=hidden:alias:idx} OK $tserr -testouterr_cmd sh {list --output=hidden:alias:idx:sym:key} OK " 1) alfoo(@) 2) foo/1.0(bar) \n\nKey:\n(@)=module-alias (symbolic-version) " +testouterr_cmd sh {list --output=hidden:alias:idx:sym:key} OK " 1) alfoo(@) 2) foo/1.0(bar)\n\nKey:\n(@)=module-alias (symbolic-version)" setenv_var MODULES_LIST_OUTPUT idx:alias:hidden testouterr_cmd sh {list} OK $tserr @@ -298,8 +298,8 @@ setenv_var __MODULES_LMTAG foo/1.0&baz unsetenv_var MODULES_LIST_OUTPUT unsetenv_var MODULES_LIST_TERSE_OUTPUT -testouterr_cmd sh {list --output=-tag:key} OK "$cur_loaded\n 1) foo/1.0(bar) " -testouterr_cmd sh {list -o -sym:key} OK "$cur_loaded\n 1) foo/1.0 " +testouterr_cmd sh {list --output=-tag:key} OK "$cur_loaded\n 1) foo/1.0(bar)" +testouterr_cmd sh {list -o -sym:key} OK "$cur_loaded\n 1) foo/1.0 " testouterr_cmd sh {list -t -o +sym} OK "$cur_loaded\nfoo/1.0(bar)" testouterr_cmd sh {list -t --output=+tag} OK "$cur_loaded\nfoo/1.0 " @@ -311,8 +311,8 @@ testouterr_cmd sh {list -o -bar --terse} ERR $tserr_invalid_o_val setenv_var MODULES_LIST_OUTPUT tag setenv_var MODULES_LIST_TERSE_OUTPUT {} -testouterr_cmd sh {list -o +sym} OK "foo/1.0(bar) " -testouterr_cmd sh {list --output=-sym:tag} OK "foo/1.0 " +testouterr_cmd sh {list -o +sym} OK "foo/1.0(bar) " +testouterr_cmd sh {list --output=-sym:tag} OK "foo/1.0" testouterr_cmd sh {list -t -o -sym} OK "foo/1.0" testouterr_cmd sh {list -t --output=+sym} OK "foo/1.0(bar)" diff --git a/testsuite/modules.70-maint/362-spider_output.exp b/testsuite/modules.70-maint/362-spider_output.exp index 6136cc458..98c62d496 100644 --- a/testsuite/modules.70-maint/362-spider_output.exp +++ b/testsuite/modules.70-maint/362-spider_output.exp @@ -44,7 +44,7 @@ setenv_var TESTSUITE_AVAIL_OUTPUT_FOO_SYM 1 # -o/--output options test # -set tserr_spider_foo "foo/1.0\\(bar\\) " +set tserr_spider_foo "foo/1.0\\(bar\\)" set tserr_spider_terse_foo "foo/1.0\\(bar\\)" testouterr_cmd_re sh {spider -o sym foo/1.0} OK $tserr_spider_foo @@ -100,7 +100,7 @@ testouterr_cmd sh {spider --output=header:key foo} ERR $tserr_invalid_output_val setenv_var MODULES_SPIDER_OUTPUT modulepath setenv_var MODULES_SPIDER_TERSE_OUTPUT modulepath -testouterr_cmd_re sh {spider foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 " +testouterr_cmd_re sh {spider foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0" testouterr_cmd_re sh {spider -t foo/1.0} OK "$mpre:\nfoo/1.0" # no impact on -l/-j @@ -115,7 +115,7 @@ testouterr_cmd sh {spider -j foo/1.0} OK $tserr_spider_json setenv_var MODULES_SPIDER_OUTPUT foo setenv_var MODULES_SPIDER_TERSE_OUTPUT foo -testouterr_cmd_re sh {spider foo/1.0} OK "$modlin $mpre $modlin\n$tserr_spider_foo\n\nKey:\n\\(symbolic-version\\) " +testouterr_cmd_re sh {spider foo/1.0} OK "$modlin $mpre $modlin\n$tserr_spider_foo\n\nKey:\n\\(symbolic-version\\)" testouterr_cmd_re sh {spider -t foo/1.0} OK $mpre:\n$tserr_spider_terse_foo testouterr_cmd_re sh {spider -o sym foo/1.0} OK $tserr_spider_foo testouterr_cmd_re sh {spider -t --output=sym foo/1.0} OK $tserr_spider_terse_foo @@ -126,10 +126,10 @@ testouterr_cmd sh {spider -o foo foo/1.0} ERR $tserr_invalid_o_val # key test # -testouterr_cmd_re sh {spider -o modulepath:key:sym foo/1.0} OK "$modlin $mpre $modlin\n$tserr_spider_foo\n\nKey:\n\\(symbolic-version\\) " -testouterr_cmd_re sh {spider -t --output=modulepath:sym:key foo/1.0} OK "$mpre:\n$tserr_spider_terse_foo\n\nKey:\n\\(symbolic-version\\) " +testouterr_cmd_re sh {spider -o modulepath:key:sym foo/1.0} OK "$modlin $mpre $modlin\n$tserr_spider_foo\n\nKey:\n\\(symbolic-version\\)" +testouterr_cmd_re sh {spider -t --output=modulepath:sym:key foo/1.0} OK "$mpre:\n$tserr_spider_terse_foo\n\nKey:\n\\(symbolic-version\\)" setenv_var MODULES_SPIDER_OUTPUT modulepath:key:sym -testouterr_cmd_re sh {spider foo/1.0} OK "$modlin $mpre $modlin\n$tserr_spider_foo\n\nKey:\n\\(symbolic-version\\) " +testouterr_cmd_re sh {spider foo/1.0} OK "$modlin $mpre $modlin\n$tserr_spider_foo\n\nKey:\n\\(symbolic-version\\)" unsetenv_var MODULES_SPIDER_OUTPUT @@ -137,10 +137,10 @@ unsetenv_var MODULES_SPIDER_OUTPUT # sym test # -testouterr_cmd_re sh {spider -o modulepath:key foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 " +testouterr_cmd_re sh {spider -o modulepath:key foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0" testouterr_cmd_re sh {spider -t --output=modulepath:key foo/1.0} OK "$mpre:\nfoo/1.0" setenv_var MODULES_SPIDER_OUTPUT modulepath -testouterr_cmd_re sh {spider foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 " +testouterr_cmd_re sh {spider foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0" unsetenv_var MODULES_SPIDER_OUTPUT @@ -148,25 +148,25 @@ unsetenv_var MODULES_SPIDER_OUTPUT # indesym test # -set tserr_spider_foo "foo/1.0\\(bar\\) " -testouterr_cmd_re sh {spider -o modulepath:key:indesym foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 " -testouterr_cmd_re sh {spider -o modulepath:key:sym:indesym foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 " -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym foo} OK "$modlin $mpre $modlin\nfoo/0.2 foo/0.err foo/0.load foo/0.prereq foo/1.0 foo/2.0 foo/bar foo/sym " -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym foo/bar} OK "$modlin $mpre $modlin\nfoo/bar " -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym:sym foo/bar} OK "$modlin $mpre $modlin\nfoo/bar " +set tserr_spider_foo "foo/1.0\\(bar\\)" +testouterr_cmd_re sh {spider -o modulepath:key:indesym foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0" +testouterr_cmd_re sh {spider -o modulepath:key:sym:indesym foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0" +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym foo} OK "$modlin $mpre $modlin\nfoo/0.2 foo/0.err foo/0.load foo/0.prereq foo/1.0 foo/2.0 foo/bar foo/sym" +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym foo/bar} OK "$modlin $mpre $modlin\nfoo/bar" +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym:sym foo/bar} OK "$modlin $mpre $modlin\nfoo/bar" setenv_var MODULES_SPIDER_TERSE_OUTPUT key:indesym testouterr_cmd sh {spider -t foo/bar} OK "foo/bar" testouterr_cmd sh {spider -t foo/1.0} OK "foo/1.0" unsetenv_var MODULES_SPIDER_TERSE_OUTPUT setenv_path_var MODULEPATH $modpath.2 -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:dirwsym:indesym hide3/sub2} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 hide3/sub2/5.0 hide3/sub2/default hide3/sub2/new hide3/sub2/sym " -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym hide3/sub2} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 hide3/sub2/5.0 hide3/sub2/default hide3/sub2/new hide3/sub2/sym " -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:dirwsym:indesym hide3/sym} OK "$modlin $modpathre.2 $modlin\nhide3/sym " -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym hide3/sym} OK "$modlin $modpathre.2 $modlin\nhide3/sym " -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym hide3/sub2/default} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/default " -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym hide3/sub2/4.0} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 " -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:sym:indesym hide3/sub2/default} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/default " -testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym:sym hide3/sub2/4.0} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 " +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:dirwsym:indesym hide3/sub2} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 hide3/sub2/5.0 hide3/sub2/default hide3/sub2/new hide3/sub2/sym" +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym hide3/sub2} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0 hide3/sub2/5.0 hide3/sub2/default hide3/sub2/new hide3/sub2/sym" +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:dirwsym:indesym hide3/sym} OK "$modlin $modpathre.2 $modlin\nhide3/sym" +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym hide3/sym} OK "$modlin $modpathre.2 $modlin\nhide3/sym" +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym hide3/sub2/default} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/default" +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym hide3/sub2/4.0} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0" +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:sym:indesym hide3/sub2/default} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/default" +testouterr_cmd_re sh {spider -w 120 -o modulepath:key:indesym:sym hide3/sub2/4.0} OK "$modlin $modpathre.2 $modlin\nhide3/sub2/4.0" setenv_var MODULES_SPIDER_TERSE_OUTPUT key:indesym:dirwsym testouterr_cmd sh {spider -t hide3/sym} OK "hide3/sym" testouterr_cmd sh {spider -t -o key:indesym hide3/sym} OK "hide3/sym" @@ -181,10 +181,10 @@ setenv_path_var MODULEPATH $mp # setenv_var TESTSUITE_AVAIL_OUTPUT_FOO_TAG 1 -testouterr_cmd_re sh {spider -o modulepath:key:tag foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 \n\nKey:\n " +testouterr_cmd_re sh {spider -o modulepath:key:tag foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0 \n\nKey:\n" testouterr_cmd_re sh {spider -t --output=tag:modulepath foo/1.0} OK "$mpre:\nfoo/1.0 " setenv_var MODULES_SPIDER_OUTPUT modulepath:tag:sym:key -testouterr_cmd_re sh {spider foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0\\(bar\\) \n\nKey:\n\\(symbolic-version\\) " +testouterr_cmd_re sh {spider foo/1.0} OK "$modlin $mpre $modlin\nfoo/1.0\\(bar\\) \n\nKey:\n\\(symbolic-version\\) " unsetenv_var MODULES_SPIDER_OUTPUT unsetenv_var TESTSUITE_AVAIL_OUTPUT_FOO_TAG @@ -201,7 +201,7 @@ testouterr_cmd_re sh {spider -t --output=tag:modulepath hide2} OK "$mpre:\nhide2 testouterr_cmd_re sh {spider -t --output=tag:modulepath hide2/1.1} OK {} testouterr_cmd_re sh {spider -o tag:modulepath hide2/1.1} OK {} setenv_var MODULES_SPIDER_OUTPUT modulepath:alias -testouterr_cmd_re sh {spider hide2} OK "$modlin $mpre $modlin\nhide2/1.0 hide2/1.1 hide2/1.5 " +testouterr_cmd_re sh {spider hide2} OK "$modlin $mpre $modlin\nhide2/1.0 hide2/1.1 hide2/1.5" unsetenv_var MODULES_SPIDER_OUTPUT setenv_var MODULES_SPIDER_TERSE_OUTPUT modulepath:alias testouterr_cmd_re sh {spider -t hide2} OK "$mpre:\nhide2/1.0\nhide2/1.1\nhide2/1.5" @@ -213,8 +213,8 @@ unsetenv_var MODULES_SPIDER_TERSE_OUTPUT # dirwsym test # -testouterr_cmd_re sh {spider -o modulepath hide3/sub2} OK "$modlin $mpre $modlin\nhide3/sub2/4.0 hide3/sub2/5.0 " -testouterr_cmd_re sh {spider --output=sym:modulepath hide3/sub2} OK "$modlin $mpre $modlin\nhide3/sub2/4.0\\(default:sym\\) hide3/sub2/5.0\\(new\\) " +testouterr_cmd_re sh {spider -o modulepath hide3/sub2} OK "$modlin $mpre $modlin\nhide3/sub2/4.0 hide3/sub2/5.0" +testouterr_cmd_re sh {spider --output=sym:modulepath hide3/sub2} OK "$modlin $mpre $modlin\nhide3/sub2/4.0\\(default:sym\\) hide3/sub2/5.0\\(new\\)" testouterr_cmd_re sh {spider -t -o modulepath:dirwsym hide3/sub2} OK "$mpre:\nhide3/sub2/\nhide3/sub2/4.0\nhide3/sub2/5.0" testouterr_cmd_re sh {spider -t --output=modulepath:sym:dirwsym hide3/sub2} OK "$mpre:\nhide3/sub2/\\(sym\\)\nhide3/sub2/4.0\\(default:sym\\)\nhide3/sub2/5.0\\(new\\)" setenv_var MODULES_SPIDER_TERSE_OUTPUT modulepath:dirwsym:sym @@ -236,13 +236,14 @@ if {![info exists term_cols]} { } elseif {[catch {exec stty cols $test_cols}] || [getTtyCols] ne $test_cols} { send_user "\tskipping terminal width-specific tests, cannot set width\n" } else { - testouterr_cmd sh {spider -o sym:tag} OK "cross/1.0 dcross/dir2/1.0(craft) lcross/1 lcross/11 vcross/4.0 -cross/3.0(bef) dvcross/4.0 lcross/2 loc_dv10/1.1 vcross/6.0 -cross/4.0 dvcross/dir1/1.0(bef) lcross/4 loc_dv10/1.2 -cross/6.0 dvcross/dir1/2.0 lcross/5 novercross -dcross/4.0 dvcross/dir2/1.0(craft) lcross/6 othcross/1.0(bef) -dcross/dir1/1.0(bef) fodcross/2.7.13 lcross/7 vcross/1.0 -dcross/dir1/2.0 fodcross/2.7.13/sub-13 lcross/10 vcross/3.0(bef) " + testouterr_cmd sh {spider -o sym:tag} OK "cross/1.0 dvcross/4.0 lcross/4 novercross +cross/3.0(bef) dvcross/dir1/1.0(bef) lcross/5 othcross/1.0(bef) +cross/4.0 dvcross/dir1/2.0 lcross/6 vcross/1.0 +cross/6.0 dvcross/dir2/1.0(craft) lcross/7 vcross/3.0(bef) +dcross/4.0 fodcross/2.7.13 lcross/10 vcross/4.0 +dcross/dir1/1.0(bef) fodcross/2.7.13/sub-13 lcross/11 vcross/6.0 +dcross/dir1/2.0 lcross/1 loc_dv10/1.1 +dcross/dir2/1.0(craft) lcross/2 loc_dv10/1.2 " testouterr_cmd sh {spider -t -o sym:tag} OK "cross/1.0 cross/3.0(bef) @@ -283,7 +284,7 @@ vcross/6.0" setenv_path_var MODULEPATH $modpath.2:$modpath.3 setenv_var MODULES_SPIDER_OUTPUT sym:tag setenv_var MODULES_SPIDER_TERSE_OUTPUT sym:tag -testouterr_cmd sh {spider foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err foo/0.load foo/0.prereq " +testouterr_cmd sh {spider foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err foo/0.load foo/0.prereq" testouterr_cmd sh {spider -t foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err @@ -291,7 +292,7 @@ foo/0.load foo/0.prereq" setenv_path_var MODULEPATH $modpath.3:$modpath.2 -testouterr_cmd sh {spider foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err foo/0.load foo/0.prereq " +testouterr_cmd sh {spider foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err foo/0.load foo/0.prereq" testouterr_cmd sh {spider -t foo/0} OK "foo/0.1 foo/0.2(sym) foo/0.err @@ -308,123 +309,123 @@ setenv_var TESTSUITE_SPIDER_MODPATH2 use_modpath3 setenv_path_var MODULEPATH $modpath.spider1 setenv_var MODULES_SPIDER_OUTPUT sym:tag:modulepath:via testouterr_cmd_re sh {spider mod} OK "$modlin $modpathre.spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" # no modulepath label set, no using module loaded setenv_path_var MODULEPATH $modpath.spider2:$modpath.spider1 testouterr_cmd_re sh {spider mod} OK "$modlin $modpathre.spider2 $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" # modulepath label set, no using module loaded setenv_var TESTSUITE_VIA modulepath_label1 testouterr_cmd_re sh {spider mod} OK "$modlin My label spider2 $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin My label spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" # no modulepath label set, using module loaded unsetenv_var TESTSUITE_VIA setenv_loaded_module [list moda/1] [list $modpath.spider1/moda/1] setenv_var __MODULES_LMUSE moda/1&$modpath.spider2 testouterr_cmd_re sh {spider mod} OK "$modlin $modpathre.spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" # no modulepath label set, using module loaded, used path was there before setenv_var __MODULES_SHARE_MODULEPATH $modpath.spider2:2 testouterr_cmd_re sh {spider mod} OK "$modlin $modpathre.spider2 $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" unsetenv_var __MODULES_SHARE_MODULEPATH # modulepath label set, using module loaded setenv_var TESTSUITE_VIA modulepath_label1 testouterr_cmd_re sh {spider mod} OK "$modlin My label spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin My label spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" # modulepath label set, using module loaded, used path was there before setenv_var __MODULES_SHARE_MODULEPATH $modpath.spider2:2 testouterr_cmd_re sh {spider mod} OK "$modlin My label spider2 $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin My label spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" unsetenv_var __MODULES_SHARE_MODULEPATH # no modulepath label set, using module loaded, but added modulepath unused unsetenv_var TESTSUITE_VIA setenv_path_var MODULEPATH $modpath.spider1 testouterr_cmd_re sh {spider mod} OK "$modlin $modpathre.spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" # modulepath label set, using module loaded, but added modulepath unused setenv_var TESTSUITE_VIA modulepath_label1 testouterr_cmd_re sh {spider mod} OK "$modlin My label spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin My label spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" # no modulepath label set, using module loaded, but primary modulepath unused unsetenv_var TESTSUITE_VIA setenv_path_var MODULEPATH $modpath.spider2 testouterr_cmd_re sh {spider mod} OK "$modlin $modpathre.spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" # modulepath label set, using module loaded, but primary modulepath unused setenv_var TESTSUITE_VIA modulepath_label1 testouterr_cmd_re sh {spider mod} OK "$modlin My label spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" # several loaded modules using same modulepath unsetenv_var TESTSUITE_VIA @@ -432,13 +433,13 @@ setenv_path_var MODULEPATH $modpath.spider2:$modpath.spider1 setenv_loaded_module [list moda/1 moda/2] [list $modpath.spider1/moda/1 $modpath.spider1/moda/2] setenv_var __MODULES_LMUSE moda/1&$modpath.spider2:moda/2&$modpath.spider2 set tserr "$modlin $modpathre.spider2 \\(via moda/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" testouterr_cmd_re sh {spider mod} OK $tserr setenv_var __MODULES_SHARE_MODULEPATH $modpath.spider2:2 @@ -446,13 +447,13 @@ testouterr_cmd_re sh {spider mod} OK $tserr setenv_var __MODULES_SHARE_MODULEPATH $modpath.spider2:3 set tserr "$modlin $modpathre.spider2 $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" testouterr_cmd_re sh {spider mod} OK $tserr unsetenv_var __MODULES_SHARE_MODULEPATH @@ -462,19 +463,19 @@ setenv_path_var MODULEPATH $modpath.spider2:$modpath.spider1 setenv_loaded_module [list foo/1] [list $modpath.other/foo/1] setenv_var __MODULES_LMUSE foo/1&$modpath.spider2 testouterr_cmd_re sh {spider mod} OK "$modlin $modpathre.spider2 \\(via foo/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider1 $modlin -moda/1 moda/2 +moda/1 moda/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" # no modulepath reported but via set setenv_loaded_module [list moda/1] [list $modpath.spider1/moda/1] setenv_var __MODULES_LMUSE moda/1&$modpath.spider2 setenv_var MODULES_SPIDER_OUTPUT sym:tag:via -testouterr_cmd sh {spider mod} OK "moda/1 moda/2 modb/1 modb/2 modc/1 modc/2 " +testouterr_cmd sh {spider mod} OK "moda/1 moda/2 modb/1 modb/2 modc/1 modc/2" # via not supported on terse output mode setenv_var MODULES_SPIDER_TERSE_OUTPUT sym:tag:modulepath:via @@ -498,10 +499,10 @@ setenv_loaded_module [list foo/0.2] [list $modpath.2/foo/0.2] setenv_var __MODULES_LMUSE foo/0.2&$modpath.3 setenv_path_var MODULEPATH $modpath.3:$modpath.2 testouterr_cmd_re sh {spider foo/0} OK "$modlin $modpathre.3 \\(via foo/0.2\\) $modlin -foo/0.2\\(sym\\) foo/0.err foo/0.load foo/0.prereq +foo/0.2\\(sym\\) foo/0.err foo/0.load foo/0.prereq $modlin $modpathre.2 $modlin -foo/0.1 foo/0.2\\(sym\\) " +foo/0.1 foo/0.2\\(sym\\) " # variable reference in modulepath @@ -512,10 +513,10 @@ setenv_var MODULEPATH $modpath.spider\$FOO_VAR_REF:$modpath.4 setenv_var FOO_VAR_REF 3 set tserr "$modlin $modpathre.spider3 \\(via modulepath/1\\) $modlin -modc/1 modc/2 +modc/1 modc/2 $modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 " +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2" setenv_var TESTSUITE_USE_MODULEPATH use_with_var_ref_and_setenv testouterr_cmd_re sh {spider mod} OK $tserr setenv_var TESTSUITE_USE_MODULEPATH append_with_var_ref_and_setenv @@ -525,13 +526,13 @@ testouterr_cmd_re sh {spider mod} OK $tserr setenv_var FOO_VAR_REF 2 set tserr "$modlin $modpathre.spider2 \\(via modulepath/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" setenv_var TESTSUITE_USE_MODULEPATH use_with_var_ref_and_setenv testouterr_cmd_re sh {spider mod} OK $tserr setenv_var TESTSUITE_USE_MODULEPATH append_with_var_ref_and_setenv @@ -541,7 +542,7 @@ testouterr_cmd_re sh {spider mod} OK $tserr unsetenv_var FOO_VAR_REF set tserr "$modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 " +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2" setenv_var TESTSUITE_USE_MODULEPATH use_with_var_ref_and_setenv testouterr_cmd_re sh {spider mod} OK $tserr setenv_var TESTSUITE_USE_MODULEPATH append_with_var_ref_and_setenv @@ -554,13 +555,13 @@ unsetenv_var __MODULES_LMUSE setenv_var MODULEPATH $modpath.4 setenv_var FOO_VAR_REF 2 set tserr "$modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 $modlin $modpathre.spider2 \\(via modulepath/1\\) $modlin -modb/1 modb/2 +modb/1 modb/2 $modlin $modpathre.spider3 \\(via modb/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" setenv_var TESTSUITE_USE_MODULEPATH use_with_var_ref_and_setenv testouterr_cmd_re sh {spider mod} OK $tserr setenv_var TESTSUITE_USE_MODULEPATH append_with_var_ref_and_setenv @@ -570,7 +571,7 @@ testouterr_cmd_re sh {spider mod} OK $tserr unsetenv_var FOO_VAR_REF set tserr "$modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 " +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2" # variable are not set to their value during spider (scan) evaluation setenv_var TESTSUITE_USE_MODULEPATH use_with_var_ref_and_setenv testouterr_cmd_re sh {spider mod} OK $tserr @@ -587,10 +588,10 @@ setenv_var TESTSUITE_USE_MODULEPATH use_rel_path setenv_var __MODULES_LMUSE modulepath/1&$modpath.spider3 setenv_var MODULEPATH $modpath.spider3:$modpath.4 set tserr "$modlin $modpathre.spider3 \\(via modulepath/1\\) $modlin -modc/1 modc/2 +modc/1 modc/2 $modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 " +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2" testouterr_cmd_re sh {spider mod} OK $tserr setenv_var TESTSUITE_USE_MODULEPATH prepend_rel_path @@ -599,10 +600,10 @@ setenv_var MODULEPATH ../../../testsuite/modulefiles.spider3:$modpath.4 # relative path in MODULEPATH is not found, but when spider evaluates modulepath/1 # relative path is successfully resolved from there set tserr "$modlin $modpathre.4 $modlin -modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 +modulepath-opt/1 modulepath-opt/2 modulepath/1 modulepath/2 $modlin $modpathre.spider3 \\(via modulepath/1\\) $modlin -modc/1 modc/2 " +modc/1 modc/2" testouterr_cmd_re sh {spider mod} OK $tserr @@ -635,11 +636,11 @@ setenv_var TESTSUITE_PROVIDE multiple setenv_var MODULES_SPIDER_OUTPUT sym:tag:alias setenv_var MODULES_SPIDER_TERSE_OUTPUT sym:tag:alias -testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0 } -testouterr_cmd sh {spider foo/1} OK {foo/1.0 } +testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0} +testouterr_cmd sh {spider foo/1} OK {foo/1.0} testouterr_cmd sh {spider quux} OK {} -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3} setenv_var MODULES_SPIDER_TERSE_OUTPUT sym:tag:alias @@ -655,7 +656,7 @@ setenv_var MODULES_SPIDER_OUTPUT sym:tag:alias:variant testouterr_cmd sh {spider -t foo} OK "foo/1.0\nfoo/2.0\nfoo/9.0" testouterr_cmd sh {spider -t foo/1} OK "foo/1.0" testouterr_cmd sh {spider -t quux} OK {} -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} testouterr_cmd sh {spider -t provide} OK "provide/1\nprovide/2\nprovide/3" # Extra Match Search enabled with extra specifier set, but it does not trigger provided-alias insertion @@ -664,16 +665,16 @@ setenv_var MODULES_SPIDER_OUTPUT sym:tag:alias testouterr_cmd sh {spider -t foo not:tag:loaded} OK "foo/1.0\nfoo/2.0\nfoo/9.0" testouterr_cmd sh {spider -t foo/1 not:tag:loaded} OK "foo/1.0" testouterr_cmd sh {spider -t quux not:tag:loaded} OK {} -testouterr_cmd sh {spider * not:tag:loaded} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } +testouterr_cmd sh {spider * not:tag:loaded} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} testouterr_cmd sh {spider -t provide not:tag:loaded} OK "provide/1\nprovide/2\nprovide/3" setenv_var MODULES_SPIDER_OUTPUT sym:tag:alias:provided-alias -testouterr_cmd sh {spider foo} OK {foo/1(@) foo/1.0 foo/2.0 foo/9.0 } -testouterr_cmd sh {spider foo/1} OK {foo/1(@) foo/1.0 } -testouterr_cmd sh {spider quux} OK {quux/1(@) } -testouterr_cmd sh {spider} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@) } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3 } +testouterr_cmd sh {spider foo} OK {foo/1(@) foo/1.0 foo/2.0 foo/9.0} +testouterr_cmd sh {spider foo/1} OK {foo/1(@) foo/1.0} +testouterr_cmd sh {spider quux} OK {quux/1(@)} +testouterr_cmd sh {spider} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@)} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3} setenv_var MODULES_SPIDER_TERSE_OUTPUT sym:tag:alias:provided-alias @@ -688,123 +689,123 @@ setenv_var MODULES_SPIDER_TERSE_OUTPUT sym:tag:alias:variant setenv_var TESTSUITE_PROVIDE duplicate_with_family setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_family setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var MODULES_SPIDER_OUTPUT sym:tag:alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var MODULES_SPIDER_OUTPUT sym:tag -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var TESTSUITE_PROVIDE duplicate_with_family3 setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {spider quux} OK {quux(@) } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {spider quux} OK {quux(@)} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_family2 setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {spider quux} OK {quux(@) } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {spider quux} OK {quux(@)} setenv_var MODULES_SPIDER_OUTPUT sym:tag:alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} testouterr_cmd sh {spider quux} OK {} setenv_var MODULES_SPIDER_OUTPUT sym:tag -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} testouterr_cmd sh {spider quux} OK {} setenv_var TESTSUITE_PROVIDE duplicate_with_alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_same_alias setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var MODULES_SPIDER_OUTPUT sym:tag -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var MODULES_SPIDER_OUTPUT sym:tag:alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider foo} OK {foo(@) foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider foo} OK {foo(@) foo/1.0 foo/2.0 foo/9.0} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_diff_alias setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider foo} OK {foo/1.0 foo/2.0 foo/9.0} setenv_var TESTSUITE_PROVIDE duplicate_with_alias3 -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {spider quux} OK {quux(@) } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {spider quux} OK {quux(@)} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_same_alias2 setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {spider quux} OK {quux(@) } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {spider quux} OK {quux(@)} setenv_var MODULES_SPIDER_OUTPUT sym:tag:alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {spider quux} OK {quux(@) } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {spider quux} OK {quux(@)} setenv_var MODULES_SPIDER_OUTPUT sym:tag -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} testouterr_cmd sh {spider quux} OK {} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_diff_alias2 setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {spider quux} OK {quux(@) } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@)} +testouterr_cmd sh {spider quux} OK {quux(@)} setenv_var TESTSUITE_PROVIDE duplicate_with_version setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 provide/foo(@) } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3 provide/foo(@) } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 provide/foo(@)} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3 provide/foo(@)} setenv_var MODULES_SPIDER_OUTPUT sym:tag -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3} setenv_var TESTSUITE_PROVIDE duplicate_with_ext_diff_version setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2(foo) provide/3 } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2(foo) provide/3 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2(foo) provide/3} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2(foo) provide/3} setenv_var MODULES_SPIDER_OUTPUT sym:tag -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2(foo) provide/3 } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2(foo) provide/3 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2(foo) provide/3} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2(foo) provide/3} setenv_var MODULES_SPIDER_OUTPUT sym:tag:provided-alias setenv_var TESTSUITE_PROVIDE multiple_and_forbidden -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider provide/1} OK {provide/1 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3} +testouterr_cmd sh {spider provide/1} OK {provide/1 } testouterr_cmd sh {spider unk} OK {} testouterr_cmd sh {spider quux/1} OK {} @@ -816,36 +817,36 @@ testouterr_cmd sh {spider quux/1 envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_alias_forbidden -testouterr_cmd sh {spider} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@) } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider provide/1} OK {provide/1 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@)} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3} +testouterr_cmd sh {spider provide/1} OK {provide/1} testouterr_cmd sh {spider unk} OK {} -testouterr_cmd sh {spider quux/1} OK {quux/1(@) } +testouterr_cmd sh {spider quux/1} OK {quux/1(@) } -testouterr_cmd sh {spider envvar:FOO} OK {provide/1 } -testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {spider envvar:FOO} OK {provide/1} +testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1} testouterr_cmd sh {spider unk envvar:FOO} OK {} testouterr_cmd sh {spider quux/1 envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_family_forbidden -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {spider provide/1} OK {provide/1 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } +testouterr_cmd sh {spider provide/1} OK {provide/1} testouterr_cmd sh {spider unk} OK {} -testouterr_cmd sh {spider quux} OK {quux(@) } +testouterr_cmd sh {spider quux} OK {quux(@) } -testouterr_cmd sh {spider envvar:FOO} OK {provide/1 } -testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {spider envvar:FOO} OK {provide/1} +testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1} testouterr_cmd sh {spider unk envvar:FOO} OK {} testouterr_cmd sh {spider quux envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_expired -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider provide/1} OK {provide/1 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3} +testouterr_cmd sh {spider provide/1} OK {provide/1 } testouterr_cmd sh {spider unk} OK {} testouterr_cmd sh {spider quux/1} OK {} @@ -857,38 +858,38 @@ testouterr_cmd sh {spider quux envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_alias_expired -testouterr_cmd sh {spider} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@) } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider provide/1} OK {provide/1 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux/1(@) qux/1(@)} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3} +testouterr_cmd sh {spider provide/1} OK {provide/1} testouterr_cmd sh {spider unk} OK {} -testouterr_cmd sh {spider quux/1} OK {quux/1(@) } +testouterr_cmd sh {spider quux/1} OK {quux/1(@) } -testouterr_cmd sh {spider envvar:FOO} OK {provide/1 } -testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {spider envvar:FOO} OK {provide/1} +testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1} testouterr_cmd sh {spider unk envvar:FOO} OK {} testouterr_cmd sh {spider quux/1 envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_family_expired -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } -testouterr_cmd sh {spider provide/1} OK {provide/1 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 quux(@) } +testouterr_cmd sh {spider provide/1} OK {provide/1} testouterr_cmd sh {spider unk} OK {} -testouterr_cmd sh {spider quux} OK {quux(@) } +testouterr_cmd sh {spider quux} OK {quux(@) } -testouterr_cmd sh {spider envvar:FOO} OK {provide/1 } -testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {spider envvar:FOO} OK {provide/1} +testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1} testouterr_cmd sh {spider unk envvar:FOO} OK {} testouterr_cmd sh {spider quux envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_hidden -testouterr_cmd sh {spider} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/2 provide/3 quux/1(@) qux/1(@) } -testouterr_cmd sh {spider provide} OK {provide/2 provide/3 } -testouterr_cmd sh {spider provide/1} OK {provide/1 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/2 provide/3 quux/1(@) qux/1(@)} +testouterr_cmd sh {spider provide} OK {provide/2 provide/3} +testouterr_cmd sh {spider provide/1} OK {provide/1 } testouterr_cmd sh {spider unk} OK {} -testouterr_cmd sh {spider quux/1} OK {quux/1(@) } +testouterr_cmd sh {spider quux/1} OK {quux/1(@)} testouterr_cmd sh {spider envvar:FOO} OK {} testouterr_cmd sh {spider provide envvar:FOO} OK {} @@ -898,27 +899,27 @@ testouterr_cmd sh {spider quux envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_alias_hidden -testouterr_cmd sh {spider} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 qux/1(@) } -testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider provide/1} OK {provide/1 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 baz/1(@) foo/1(@) foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 qux/1(@)} +testouterr_cmd sh {spider provide} OK {provide/1 provide/2 provide/3} +testouterr_cmd sh {spider provide/1} OK {provide/1} testouterr_cmd sh {spider unk} OK {} -testouterr_cmd sh {spider quux/1} OK {quux/1(@) } +testouterr_cmd sh {spider quux/1} OK {quux/1(@) } -testouterr_cmd sh {spider envvar:FOO} OK {provide/1 } -testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {spider envvar:FOO} OK {provide/1} +testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1} testouterr_cmd sh {spider unk envvar:FOO} OK {} testouterr_cmd sh {spider quux/1 envvar:FOO} OK {} setenv_var TESTSUITE_PROVIDE multiple_and_family_hidden -testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3 } -testouterr_cmd sh {spider provide/1} OK {provide/1 } +testouterr_cmd sh {spider} OK {bar/1 bar/2 foo/1.0 foo/2.0 foo/9.0 provide/1 provide/2 provide/3} +testouterr_cmd sh {spider provide/1} OK {provide/1} testouterr_cmd sh {spider unk} OK {} -testouterr_cmd sh {spider quux} OK {quux(@) } +testouterr_cmd sh {spider quux} OK {quux(@) } -testouterr_cmd sh {spider envvar:FOO} OK {provide/1 } -testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1 } +testouterr_cmd sh {spider envvar:FOO} OK {provide/1} +testouterr_cmd sh {spider provide envvar:FOO} OK {provide/1} testouterr_cmd sh {spider unk envvar:FOO} OK {} testouterr_cmd sh {spider quux envvar:FOO} OK {} @@ -947,8 +948,8 @@ set mp $modpath.3 set mpre [regsub -all "\(\[.+?\]\)" $mp {\\\1}] setenv_path_var MODULEPATH $mp -testouterr_cmd sh {spider -o alias:sym foo@1:} OK "foo/2.0 " -set tserr "foo/1.0(bar) foo/2.0 " +testouterr_cmd sh {spider -o alias:sym foo@1:} OK "foo/2.0" +set tserr "foo/1.0(bar) foo/2.0" testouterr_cmd sh {spider -o alias:hidden:sym foo@1:} OK $tserr testouterr_cmd sh {spider --all -o alias:hidden:sym foo@1:} OK $tserr @@ -979,7 +980,7 @@ testouterr_cmd sh {spider -o +variant --terse variant/1.0} OK $mp:\nvariant/1.0{ testouterr_cmd sh {spider --output=+variant --terse variant/1.0} OK $mp:\nvariant/1.0{foo=val1} testouterr_cmd sh {spider -o -modulepath --terse variant/1.0} OK variant/1.0 testouterr_cmd sh {spider --output=-modulepath:sym:tag --terse foo/0.2} OK foo/0.2 -testouterr_cmd sh {spider --output=-modulepath:sym:tag foo/0.2} OK {foo/0.2 } +testouterr_cmd sh {spider --output=-modulepath:sym:tag foo/0.2} OK {foo/0.2} testouterr_cmd sh {spider --output=-sym: foo/0.2} ERR $tserr_invalid_output_val testouterr_cmd sh {spider --output=+foo: foo/0.2} ERR $tserr_invalid_output_val @@ -989,10 +990,10 @@ testouterr_cmd sh {ml spider --output=+foo: foo/0.2} ERR $tserr_invalid_output_v testouterr_cmd sh {ml spider -o -bar foo/0.2} ERR $tserr_invalid_o_val set tserr "$modlin $mpre $modlin -foo/0.2\\(sym\\) +foo/0.2\\(sym\\) Key: -\\(symbolic-version\\) " +\\(symbolic-version\\) " testouterr_cmd_re sh {spider -o +tag:sym foo/0.2} OK $tserr setenv_var MODULES_SPIDER_OUTPUT sym:tag @@ -1000,7 +1001,7 @@ setenv_var MODULES_SPIDER_TERSE_OUTPUT sym:tag testouterr_cmd sh {spider --output=+variant --terse variant/1.0} OK variant/1.0{foo=val1} testouterr_cmd sh {spider --output=+variant --terse foo/0.2} OK {foo/0.2(sym) } -testouterr_cmd sh {spider -o -modulepath:sym:tag foo/0.2} OK {foo/0.2 } +testouterr_cmd sh {spider -o -modulepath:sym:tag foo/0.2} OK {foo/0.2} # diff --git a/testsuite/modules.70-maint/370-variant.exp b/testsuite/modules.70-maint/370-variant.exp index e16f46f9b..1b259e267 100644 --- a/testsuite/modules.70-maint/370-variant.exp +++ b/testsuite/modules.70-maint/370-variant.exp @@ -36,15 +36,15 @@ setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|0 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{foo=val1} + 1) variant/1.0{foo=val1} Key: -{variant=value} " +{variant=value}" skip_if_quick_mode testouterr_cmd sh {list -o header:idx:sym:tag:key} OK "$cur_loaded - 1) variant/1.0 " + 1) variant/1.0" testouterr_cmd sh {list -t} OK "$cur_loaded variant/1.0" @@ -56,10 +56,10 @@ setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|0&bar|val2|0|0 setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] set tserr "$cur_loaded - 1) variant/1.0{bar=val2:foo=val1} + 1) variant/1.0{bar=val2:foo=val1} Key: -{variant=value} " +{variant=value}" testouterr_cmd sh {list} OK $tserr testouterr_cmd sh {ml} OK $tserr @@ -72,10 +72,10 @@ setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|0&bar|val2|0|0:variant/2.0 setenv_loaded_module [list variant/1.0 variant/2.0] [list $mp/variant/1.0 $mp/variant/2.0] testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{bar=val2:foo=val1} 2) variant/2.0{baz=val3} + 1) variant/1.0{bar=val2:foo=val1} 2) variant/2.0{baz=val3} Key: -{variant=value} " +{variant=value}" testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \"type\": \"modulefile\", \"variants\": { \"bar\": \"val2\", \"foo\": \"val1\" }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/1.0\", \"via\": \"\"}, \"variant/2.0\": { \"name\": \"variant/2.0\", \"type\": \"modulefile\", \"variants\": { \"baz\": \"val3\" }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/2.0\", \"via\": \"\"}}" @@ -83,10 +83,10 @@ testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \ # loaded modules with also symbols defined setenv_var __MODULES_LMALTNAME variant/1.0&variant/foo testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{bar=val2:foo=val1}(foo) 2) variant/2.0{baz=val3} + 1) variant/1.0{bar=val2:foo=val1}(foo) 2) variant/2.0{baz=val3} Key: -{variant=value} (symbolic-version) " +{variant=value} (symbolic-version)" testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \"type\": \"modulefile\", \"variants\": { \"bar\": \"val2\", \"foo\": \"val1\" }, \"symbols\": \[ \"foo\" \], \"tags\": \[\], \"pathname\": \"$mp/variant/1.0\", \"via\": \"\"}, \"variant/2.0\": { \"name\": \"variant/2.0\", \"type\": \"modulefile\", \"variants\": { \"baz\": \"val3\" }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/2.0\", \"via\": \"\"}}" @@ -95,10 +95,10 @@ unsetenv_var __MODULES_LMALTNAME # duplicate variant definition setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1&foo|val3|0|0&bar|val2|0|0:variant/2.0&baz|val3|0|0 testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{bar=val2:foo=val3} 2) variant/2.0{baz=val3} + 1) variant/1.0{bar=val2:foo=val3} 2) variant/2.0{baz=val3} Key: -{variant=value} " +{variant=value}" testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \"type\": \"modulefile\", \"variants\": { \"bar\": \"val2\", \"foo\": \"val3\" }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/1.0\", \"via\": \"\"}, \"variant/2.0\": { \"name\": \"variant/2.0\", \"type\": \"modulefile\", \"variants\": { \"baz\": \"val3\" }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/2.0\", \"via\": \"\"}}" @@ -106,73 +106,73 @@ testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \ # badly defined loaded variant setenv_var __MODULES_LMVARIANT variant/1.0 testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0 2) variant/2.0 " + 1) variant/1.0 2) variant/2.0" setenv_var __MODULES_LMVARIANT variant/1.0&foo testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{foo=} 2) variant/2.0 + 1) variant/1.0{foo=} 2) variant/2.0 Key: -{variant=value} " +{variant=value}" setenv_var __MODULES_LMVARIANT variant/1.0&foo|val testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{foo=val} 2) variant/2.0 + 1) variant/1.0{foo=val} 2) variant/2.0 Key: -{variant=value} " +{variant=value}" setenv_var __MODULES_LMVARIANT variant/1.0&foo|val|str testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{foo=val} 2) variant/2.0 + 1) variant/1.0{foo=val} 2) variant/2.0 Key: -{variant=value} " +{variant=value}" # colored output setenv_var MODULES_COLORS "se=2:va=33" setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|0&bar|val2|0|0:variant/2.0&baz|val3|0|0 testouterr_cmd_re sh {list --color=always} OK "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val2[sgr 0][sgr 2]:[sgr 22][sgr 33]foo=[sgr 0][sgr 33]val1[sgr 0][sgr 2]}[sgr 22] 2\\) variant/2.0[sgr 2]{[sgr 22][sgr 33]baz=[sgr 0][sgr 33]val3[sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val2[sgr 0][sgr 2]:[sgr 22][sgr 33]foo=[sgr 0][sgr 33]val1[sgr 0][sgr 2]}[sgr 22] 2\\) variant/2.0[sgr 2]{[sgr 22][sgr 33]baz=[sgr 0][sgr 33]val3[sgr 0][sgr 2]}[sgr 22] Key: -[sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" # boolean variant set setenv_loaded_module [list variant/1.0] [list $mp/variant/1.0] setenv_var __MODULES_LMVARIANT variant/1.0&foo|1|1|0 testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{+foo} + 1) variant/1.0{+foo} Key: -{+variant}={variant=on} {variant=value} " +{+variant}={variant=on} {variant=value}" testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \"type\": \"modulefile\", \"variants\": { \"foo\": true }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/1.0\", \"via\": \"\"}}" setenv_var __MODULES_LMVARIANT variant/1.0&foo|0|1|0 testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{-foo} + 1) variant/1.0{-foo} Key: -{-variant}={variant=off} {variant=value} " +{-variant}={variant=off} {variant=value}" testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \"type\": \"modulefile\", \"variants\": { \"foo\": false }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/1.0\", \"via\": \"\"}}" # bad persistency information for boolean variant setenv_var __MODULES_LMVARIANT variant/1.0&foo|1|1 testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{+foo} + 1) variant/1.0{+foo} Key: -{+variant}={variant=on} {variant=value} " +{+variant}={variant=on} {variant=value}" testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \"type\": \"modulefile\", \"variants\": { \"foo\": true }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/1.0\", \"via\": \"\"}}" setenv_var __MODULES_LMVARIANT variant/1.0&foo||1|0 testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{-foo} + 1) variant/1.0{-foo} Key: -{-variant}={variant=off} {variant=value} " +{-variant}={variant=off} {variant=value}" testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \"type\": \"modulefile\", \"variants\": { \"foo\": false }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/1.0\", \"via\": \"\"}}" setenv_var __MODULES_LMVARIANT variant/1.0&foo|str|1|0 testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{-foo} + 1) variant/1.0{-foo} Key: -{-variant}={variant=off} {variant=value} " +{-variant}={variant=off} {variant=value}" testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \"type\": \"modulefile\", \"variants\": { \"foo\": false }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/1.0\", \"via\": \"\"}}" setenv_var __MODULES_LMVARIANT variant/1.0&foo|1||0 testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \"type\": \"modulefile\", \"variants\": { \"foo\": \"1\" }, \"symbols\": \[\], \"tags\": \[\], \"pathname\": \"$mp/variant/1.0\", \"via\": \"\"}}" @@ -183,22 +183,22 @@ testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \ setenv_var MODULES_COLORS "se=2:va=33" setenv_var __MODULES_LMVARIANT variant/1.0&foo|1|1|0 testouterr_cmd_re sh {list --color=always} OK "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]\\+foo[sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]\\+foo[sgr 0][sgr 2]}[sgr 22] Key: -[sgr 2]{[sgr 22][sgr 33]\\+variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=on[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 2]{[sgr 22][sgr 33]\\+variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=on[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" setenv_var __MODULES_LMVARIANT variant/1.0&foo|0|1|0 testouterr_cmd_re sh {list --color=always} OK "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]-foo[sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]-foo[sgr 0][sgr 2]}[sgr 22] Key: -[sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" setenv_var __MODULES_LMVARIANT variant/1.0&foo|0|1|0&bar|val|0 testouterr_cmd_re sh {list --color=always} OK "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val[sgr 0][sgr 2]:[sgr 22][sgr 33]-foo[sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val[sgr 0][sgr 2]:[sgr 22][sgr 33]-foo[sgr 0][sgr 2]}[sgr 22] Key: -[sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" # color output with default variant setenv_var MODULES_COLORS "se=2:va=33:de=4:aL=100:L=90" @@ -206,10 +206,10 @@ setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1 # valued variant value is default, module is loaded, key is reported set tserr "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]foo=[sgr 0][sgr 33][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]foo=[sgr 0][sgr 33][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always} OK $tserr # valued variant value is default automatically set, module is loaded, key is reported setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|2 @@ -218,21 +218,21 @@ testouterr_cmd_re sh {list --color=always} OK $tserr setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1 setenv_var __MODULES_LMTAG variant/1.0&auto-loaded set tserr "$cur_loaded - 1\\) [sgr 100]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 33]foo=[sgr 0][sgr 33][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) [sgr 100]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 33]foo=[sgr 0][sgr 33][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 100]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 100]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always} OK $tserr # valued variant value containing space is default, module is loaded, no key reported setenv_var __MODULES_LMVARIANT {variant/1.0&foo|val1 |0|1} unsetenv_var __MODULES_LMTAG set tserr "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]foo=[sgr 0][sgr 33][sgr 4]val1 [sgr 0][sgr 0][sgr 2]}[sgr 22] " + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]foo=[sgr 0][sgr 33][sgr 4]val1 [sgr 0][sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always -o header:idx:variant:sym:tag} OK $tserr # valued variant value is not default, module is loaded, no key reported setenv_var __MODULES_LMVARIANT {variant/1.0&foo|val1|0|0} set tserr "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]foo=[sgr 0][sgr 33]val1[sgr 0][sgr 2]}[sgr 22] " + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]foo=[sgr 0][sgr 33]val1[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always -o header:idx:variant:sym:tag} OK $tserr # shortcut variant value is default, module is loaded, key is reported @@ -243,19 +243,19 @@ unsetenv_var __MODULES_LMTAG # boolean variant value is default, module is loaded, key is reported setenv_var __MODULES_LMVARIANT {variant/1.0&foo|1|1|1} set tserr "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33][sgr 4]\\+foo[sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33][sgr 4]\\+foo[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]\\+variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=on[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]\\+variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=on[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always} OK $tserr # boolean variant value is default, module is auto-loaded, key is reported setenv_var __MODULES_LMVARIANT {variant/1.0&foo|0|1|2} setenv_var __MODULES_LMTAG variant/1.0&auto-loaded set tserr "$cur_loaded - 1\\) [sgr 100]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 33][sgr 4]-foo[sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) [sgr 100]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 33][sgr 4]-foo[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 100]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 100]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always} OK $tserr unsetenv_var __MODULES_LMTAG @@ -270,10 +270,10 @@ setenv_var TESTSUITE_VARIANT 13 setenv_var __MODULES_LMVARIANT variant/1.0&bar|val1|0|0&foo|val1|0|1 set tserr "$cur_matchingloaded - 1) variant/1.0{bar=val1:foo=val1} + 1) variant/1.0{bar=val1:foo=val1} Key: -{variant=value} " +{variant=value}" testouterr_cmd sh {list variant foo=val1} OK $tserr testouterr_cmd sh {list variant foo=val1 bar=val1} OK $tserr testouterr_cmd sh {list variant foo=val2} OK $no_matchingloaded @@ -281,41 +281,41 @@ testouterr_cmd sh {list variant foo=val2 bar=val1} OK $no_matchingloaded testouterr_cmd sh {list variant baz=val1} OK $no_matchingloaded set tserr "$cur_matchingloaded - 1\\) [sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val1[sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 1]foo[sgr 22]=[sgr 0][sgr 33][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) [sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val1[sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 1]foo[sgr 22]=[sgr 0][sgr 33][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always variant foo=val1} OK $tserr # no module name and version, only variant specified set tserr "$cur_matchingloaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val1[sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 1]foo[sgr 22]=[sgr 0][sgr 33][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val1[sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 1]foo[sgr 22]=[sgr 0][sgr 33][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always foo=val1} OK $tserr # shortcut variant setenv_var MODULES_VARIANT_SHORTCUT foo=% set tserr "$cur_matchingloaded - 1) variant/1.0{bar=val1:%val1} + 1) variant/1.0{bar=val1:%val1} Key: -{%value}={foo=value} {variant=value} " +{%value}={foo=value} {variant=value}" testouterr_cmd sh {list variant foo=val1} OK $tserr testouterr_cmd sh {list variant %val1} OK $tserr set tserr "$cur_matchingloaded - 1\\) [sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val1[sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 1]%[sgr 22][sgr 0][sgr 33][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) [sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val1[sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 1]%[sgr 22][sgr 0][sgr 33][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always variant %val1} OK $tserr # no module name and version, only variant specified set tserr "$cur_matchingloaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val1[sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 1]%[sgr 22][sgr 0][sgr 33][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val1[sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 1]%[sgr 22][sgr 0][sgr 33][sgr 4][sgr 1]val1[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always %val1} OK $tserr unsetenv_var MODULES_VARIANT_SHORTCUT @@ -324,23 +324,23 @@ setenv_var TESTSUITE_VARIANT bool24 setenv_var __MODULES_LMVARIANT variant/1.0&bar|0|1|0&foo|1|1|1 set tserr "$cur_matchingloaded - 1) variant/1.0{-bar:+foo} + 1) variant/1.0{-bar:+foo} Key: -{+variant}={variant=on} {-variant}={variant=off} {variant=value} " +{+variant}={variant=on} {-variant}={variant=off} {variant=value}" testouterr_cmd sh {list variant foo=on} OK $tserr set tserr "$cur_matchingloaded - 1\\) [sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 33][sgr 1]-bar[sgr 22][sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 4][sgr 1]\\\+foo[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) [sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 33][sgr 1]-bar[sgr 22][sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 4][sgr 1]\\\+foo[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]\\\+variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=on[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]\\\+variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=on[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list -w 210 --color=always variant -bar +foo} OK $tserr # no module name and version, only variant specified set tserr "$cur_matchingloaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33][sgr 1]-bar[sgr 22][sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 4][sgr 1]\\\+foo[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33][sgr 1]-bar[sgr 22][sgr 0][sgr 2]:[sgr 22][sgr 33][sgr 4][sgr 1]\\\+foo[sgr 22][sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]\\\+variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=on[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]\\\+variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=on[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list -w 210 --color=always -bar +foo} OK $tserr # free value variant @@ -348,24 +348,24 @@ setenv_var TESTSUITE_VARIANT free3 setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|0 set tserr "$cur_matchingloaded - 1) variant/1.0{foo=val1} + 1) variant/1.0{foo=val1} Key: -{variant=value} " +{variant=value}" testouterr_cmd sh {list variant foo=val1} OK $tserr testouterr_cmd sh {list variant foo=on} OK $no_matchingloaded set tserr "$cur_matchingloaded - 1\\) [sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 33][sgr 1]foo[sgr 22]=[sgr 0][sgr 33][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] + 1\\) [sgr 1]variant[sgr 22]/1.0[sgr 2]{[sgr 22][sgr 33][sgr 1]foo[sgr 22]=[sgr 0][sgr 33][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always variant foo=val1} OK $tserr # no module name and version, only variant specified set tserr "$cur_matchingloaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33][sgr 1]foo[sgr 22]=[sgr 0][sgr 33][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33][sgr 1]foo[sgr 22]=[sgr 0][sgr 33][sgr 1]val1[sgr 22][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always foo=val1} OK $tserr unsetenv_var __MODULES_LMVARIANT @@ -384,14 +384,14 @@ setenv_var MODULES_SPIDER_TERSE_OUTPUT {modulepath:alias:dirwsym:sym:tag:variant # variant not reported testouterr_cmd_re sh {avail variant/1.0} OK "$modlin $mpre $modlin -variant/1.0 " +variant/1.0" # specified variants taken into account (module returned if match) setenv_var MODULES_ADVANCED_VERSION_SPEC 1 -set tserr "$modlin $mpre $modlin\nvariant/1.0 " +set tserr "$modlin $mpre $modlin\nvariant/1.0" testouterr_cmd_re sh {avail variant/1.0 foo=val1 baz=2} OK {} setenv_var TESTSUITE_VARIANT 1 -set tserr "$modlin $mpre $modlin\nvariant/6.0{bar=1,2,3:foo=val1,val2,val3} " +set tserr "$modlin $mpre $modlin\nvariant/6.0{bar=1,2,3:foo=val1,val2,val3}" testouterr_cmd_re sh {avail variant@6.0 foo=val1 baz=2} OK {} testouterr_cmd_re sh {spider variant@6.0 foo=val1 baz=2} OK {} testouterr_cmd_re sh {avail variant@6.0 foo=val4 bar=1} OK {} @@ -407,7 +407,7 @@ testouterr_cmd_re sh {avail variant@6.0 foo=val1 bar=4 bar=1} OK {} testouterr_cmd_re sh {avail variant@6.0 foo=val1 bar=1} OK $tserr testouterr_cmd_re sh {avail variant@6.0 foo=val1} OK $tserr setenv_var MODULES_AVAIL_OUTPUT {modulepath:alias:dirwsym:sym:tag} -set tserr "$modlin $mpre $modlin\nvariant/6.0 " +set tserr "$modlin $mpre $modlin\nvariant/6.0" testouterr_cmd_re sh {avail variant@6.0 bar=2} OK $tserr setenv_var MODULES_AVAIL_OUTPUT {modulepath:alias:dirwsym:sym:tag:variantifspec} # no module name/version, but variant specified @@ -423,12 +423,12 @@ testouterr_cmd sh {spider -t foo=val3 bar=3} OK $tserr # shortcut variant specification setenv_var MODULES_VARIANT_SHORTCUT foo=% -set tserr "$modlin $mpre $modlin\nvariant/6.0{bar=1,2,3:%val1,val2,val3} " +set tserr "$modlin $mpre $modlin\nvariant/6.0{bar=1,2,3:%val1,val2,val3}" testouterr_cmd_re sh {avail variant@6.0 %val4} OK {} testouterr_cmd_re sh {avail variant@6.0 %val1 bar=2} OK $tserr setenv_var MODULES_AVAIL_OUTPUT {modulepath:alias:dirwsym:sym:tag} setenv_var MODULES_SPIDER_OUTPUT {modulepath:alias:dirwsym:sym:tag} -set tserr "$modlin $mpre $modlin\nvariant/6.0 " +set tserr "$modlin $mpre $modlin\nvariant/6.0" testouterr_cmd_re sh {avail variant@6.0 %val2} OK $tserr testouterr_cmd_re sh {spider variant@6.0 %val2} OK $tserr setenv_var MODULES_AVAIL_OUTPUT {modulepath:alias:dirwsym:sym:tag:variantifspec} @@ -447,32 +447,32 @@ unsetenv_var MODULES_VARIANT_SHORTCUT # boolean variant specification testouterr_cmd_re sh {avail variant@6.0 +foo -bar} OK {} setenv_var TESTSUITE_VARIANT bool1 -set tserr "$modlin $mpre $modlin\nvariant/6.0{bar=on,off:foo=on,off} " +set tserr "$modlin $mpre $modlin\nvariant/6.0{bar=on,off:foo=on,off}" testouterr_cmd_re sh {avail variant@6.0 +foo -bar} OK $tserr testouterr_cmd_re sh {avail variant@6.0 +foo} OK $tserr testouterr_cmd_re sh {spider variant@6.0 +foo} OK $tserr setenv_var MODULES_AVAIL_OUTPUT {modulepath:alias:dirwsym:sym:tag} setenv_var MODULES_SPIDER_OUTPUT {modulepath:alias:dirwsym:sym:tag} -set tserr "$modlin $mpre $modlin\nvariant/6.0 " +set tserr "$modlin $mpre $modlin\nvariant/6.0" testouterr_cmd_re sh {avail variant@6.0 ~bar} OK $tserr testouterr_cmd_re sh {spider variant@6.0 ~bar} OK $tserr setenv_var MODULES_AVAIL_OUTPUT {modulepath:alias:dirwsym:sym:tag:variantifspec} setenv_var MODULES_SPIDER_OUTPUT {modulepath:alias:dirwsym:sym:tag:variantifspec} # no module name/version, but variant specified if {$install_availindepth eq {n}} { - set tserr "$modlin $mpre $modlin\nvariant/ " + set tserr "$modlin $mpre $modlin\nvariant/" } else { - set tserr "$modlin $mpre $modlin\nvariant/6.0{bar=on,off:foo=on,off} " + set tserr "$modlin $mpre $modlin\nvariant/6.0{bar=on,off:foo=on,off}" } testouterr_cmd_re sh {avail ~bar} OK $tserr unsetenv_var TESTSUITE_VARIANT # free value variant setenv_var TESTSUITE_VARIANT free3 -set tserr "$modlin $mpre $modlin\nvariant/6.0{foo=\\*} " +set tserr "$modlin $mpre $modlin\nvariant/6.0{foo=\\*}" testouterr_cmd_re sh {avail variant/6.0 foo=val1} OK $tserr setenv_var MODULES_AVAIL_OUTPUT {modulepath:alias:dirwsym:sym:tag} -set tserr "$modlin $mpre $modlin\nvariant/6.0 " +set tserr "$modlin $mpre $modlin\nvariant/6.0" testouterr_cmd_re sh {avail variant/6.0 foo=no} OK $tserr setenv_var MODULES_AVAIL_OUTPUT {modulepath:alias:dirwsym:sym:tag:variantifspec} # no module name/version, but variant specified @@ -486,7 +486,7 @@ unsetenv_var TESTSUITE_VARIANT # when advanced_version_spec is disabled, variant spec are considered as modulefile spec setenv_var MODULES_ADVANCED_VERSION_SPEC 0 -set tserr "$modlin $mpre $modlin\nvar=val variant/6.0 " +set tserr "$modlin $mpre $modlin\nvar=val variant/6.0" testouterr_cmd_re sh {avail variant/6.0 var=val} OK $tserr diff --git a/testsuite/modules.70-maint/377-variant-shortcut.exp b/testsuite/modules.70-maint/377-variant-shortcut.exp index 6b6bc7052..7def27f85 100644 --- a/testsuite/modules.70-maint/377-variant-shortcut.exp +++ b/testsuite/modules.70-maint/377-variant-shortcut.exp @@ -323,17 +323,17 @@ setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1&bar|val3|0|0 testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{bar=val3:%val1} + 1) variant/1.0{bar=val3:%val1} Key: -{%value}={foo=value} {variant=value} " +{%value}={foo=value} {variant=value}" setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1&bar|1|1|0 testouterr_cmd sh {list} OK "$cur_loaded - 1) variant/1.0{+bar:%val1} + 1) variant/1.0{+bar:%val1} Key: -{+variant}={variant=on} {%value}={foo=value} {variant=value} " +{+variant}={variant=on} {%value}={foo=value} {variant=value}" # json output setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1&bar|val3|0|0 @@ -345,36 +345,36 @@ testouterr_cmd sh {list -j} OK "{\"variant/1.0\": { \"name\": \"variant/1.0\", \ setenv_var MODULES_COLORS "se=2:va=33" setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1&bar|val3|0|0 testouterr_cmd_re sh {list --color=always} OK "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val3[sgr 0][sgr 2]:[sgr 22][sgr 33]%[sgr 0][sgr 33]val1[sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]bar=[sgr 0][sgr 33]val3[sgr 0][sgr 2]:[sgr 22][sgr 33]%[sgr 0][sgr 33]val1[sgr 0][sgr 2]}[sgr 22] Key: -[sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2 ]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2 ]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1&bar|0|1|0 testouterr_cmd_re sh {list --color=always} OK "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]-bar[sgr 0][sgr 2]:[sgr 22][sgr 33]%[sgr 0][sgr 33]val1[sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]-bar[sgr 0][sgr 2]:[sgr 22][sgr 33]%[sgr 0][sgr 33]val1[sgr 0][sgr 2]}[sgr 22] Key: -[sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2 ]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2 ]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 2]{[sgr 22][sgr 33]-variant[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]variant=off[sgr 0][sgr 2 ]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2 ]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" # color output with default variant setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|1 setenv_var MODULES_COLORS "se=2:va=33:de=4:aL=100:L=90" # shortcut variant value is default, module is loaded, key is reported set tserr "$cur_loaded - 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]%[sgr 0][sgr 33][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) variant/1.0[sgr 2]{[sgr 22][sgr 33]%[sgr 0][sgr 33][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2 ]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2 ]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always} OK $tserr # shortcut variant value is default, module is auto-loaded, key is reported setenv_var __MODULES_LMVARIANT variant/1.0&foo|val1|0|2 setenv_var __MODULES_LMTAG variant/1.0&auto-loaded set tserr "$cur_loaded - 1\\) [sgr 100]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 33]%[sgr 0][sgr 33][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] + 1\\) [sgr 100]variant/1.0[sgr 0][sgr 2]{[sgr 22][sgr 33]%[sgr 0][sgr 33][sgr 4]val1[sgr 0][sgr 0][sgr 2]}[sgr 22] Key: -[sgr 4]default-version[sgr 0] [sgr 100]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2 ]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22] " +[sgr 4]default-version[sgr 0] [sgr 100]auto-loaded[sgr 0] [sgr 2]{[sgr 22][sgr 33]%value[sgr 0][sgr 2]}[sgr 22]=[sgr 2]{[sgr 22][sgr 33]foo=value[sgr 0][sgr 2 ]}[sgr 22] [sgr 2]{[sgr 22][sgr 33]variant=value[sgr 0][sgr 2]}[sgr 22]" testouterr_cmd_re sh {list --color=always} OK $tserr unsetenv_var __MODULES_LMTAG diff --git a/testsuite/modules.70-maint/400-list-search.exp b/testsuite/modules.70-maint/400-list-search.exp index 019b99af1..87b73ed15 100644 --- a/testsuite/modules.70-maint/400-list-search.exp +++ b/testsuite/modules.70-maint/400-list-search.exp @@ -32,7 +32,7 @@ testouterr_cmd sh {list foo} OK $tserr setenv_loaded_module [list foo/1.0] [list $mp/foo/1.0] -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list foo} OK $tserr set tserr $no_matchingloaded @@ -43,23 +43,23 @@ skip_if_quick_mode set tserr $no_matchingloaded testouterr_cmd sh {list qux} OK $tserr -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list foo bar} OK $tserr testouterr_cmd sh {list bar qux foo} OK $tserr setenv_loaded_module [list foo/1.0 bar/1.0] [list $mp/foo/1.0 $mp/bar/1.0] -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list foo} OK $tserr -set tserr "$cur_matchingloaded\n 1) bar/1.0 " +set tserr "$cur_matchingloaded\n 1) bar/1.0" testouterr_cmd sh {list bar} OK $tserr set tserr $no_matchingloaded testouterr_cmd sh {list qux} OK $tserr -set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0" testouterr_cmd sh {list foo bar} OK $tserr testouterr_cmd sh {list bar qux foo} OK $tserr @@ -67,7 +67,7 @@ testouterr_cmd sh {list bar qux foo} OK $tserr # search match & icase tests setenv_var MODULES_SEARCH_MATCH starts_with -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list fo} OK $tserr testouterr_cmd sh {list foo/} OK $tserr testouterr_cmd sh {list foo//} OK $tserr @@ -87,7 +87,7 @@ testouterr_cmd sh {list -i oO} OK $tserr setenv_var MODULES_SEARCH_MATCH contains -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list fo} OK $tserr testouterr_cmd sh {list -i foo/} OK $tserr testouterr_cmd sh {list oo/} OK $tserr @@ -104,13 +104,13 @@ unsetenv_var MODULES_SEARCH_MATCH # glob match -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list -S *o/} OK $tserr testouterr_cmd sh {list -S ?o} OK $tserr testouterr_cmd sh {list -i -S f?O} OK $tserr testouterr_cmd sh {list -C oo?} OK $tserr -set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0" testouterr_cmd sh {list */1} OK $tserr testouterr_cmd sh {list *} OK $tserr testouterr_cmd sh {list ?} OK $tserr @@ -119,33 +119,33 @@ testouterr_cmd sh {list ?} OK $tserr # icase/extended_default mix setenv_var MODULES_ICASE search setenv_var MODULES_EXTENDED_DEFAULT 1 -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list fOo} OK $tserr testouterr_cmd sh {list foo/1} OK $tserr setenv_var MODULES_ICASE never set tserr $no_matchingloaded testouterr_cmd sh {list fOo} OK $tserr -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list foo/1} OK $tserr setenv_var MODULES_EXTENDED_DEFAULT 0 setenv_var MODULES_ICASE search -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list fOo} OK $tserr testouterr_cmd sh {list foo/1} OK $tserr setenv_var MODULES_ICASE never set tserr $no_matchingloaded testouterr_cmd sh {list fOo} OK $tserr -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list foo/1} OK $tserr unsetenv_var MODULES_ICASE # ml -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {ml list foo} OK $tserr testouterr_cmd sh {ml list -S *o/} OK $tserr testouterr_cmd sh {ml list -S ?o} OK $tserr @@ -154,24 +154,24 @@ testouterr_cmd sh {ml list -C oo} OK $tserr # module alias/symbolic version setenv_path_var __MODULES_LMALTNAME foo/1.0&al|aliasmod&al|vers/1.0:bar/1.0&bar/sym -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list alias} OK $tserr if {$install_icase eq {never}} { testouterr_cmd sh {list aliasMOD} OK $no_matchingloaded } else { testouterr_cmd sh {list aliasMOD} OK $tserr } -set tserr "$cur_matchingloaded\n 1) bar/1.0(sym) \n\nKey:\n(symbolic-version) " +set tserr "$cur_matchingloaded\n 1) bar/1.0(sym)\n\nKey:\n(symbolic-version)" testouterr_cmd sh {list *sym} OK $tserr # advanced version spec setenv_var MODULES_ADVANCED_VERSION_SPEC 1 -set tserr "$cur_matchingloaded\n 1) foo/1.0 " +set tserr "$cur_matchingloaded\n 1) foo/1.0" testouterr_cmd sh {list foo@1} OK $tserr testouterr_cmd sh {list foo@:1} OK $tserr testouterr_cmd sh {list foo@1,2} OK $tserr -set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0(sym) \n\nKey:\n(symbolic-version) " +set tserr "$cur_matchingloaded\n 1) foo/1.0 2) bar/1.0(sym)\n\nKey:\n(symbolic-version)" testouterr_cmd sh {list foo@:1 bar@1:} OK $tserr testouterr_cmd sh {list vers@1.0,2: bar@1:} OK $tserr @@ -182,17 +182,17 @@ setenv_path_var __MODULES_LMALTNAME variant/6.0&al|aliasmod setenv_path_var __MODULES_LMVARIANT variant/6.0&foo|val1|0|0 setenv_loaded_module [list foo/1.0 bar/1.0 variant/6.0] [list $mp/foo/1.0 $mp/bar/1.0 $mp/variant/6.0] -set tserr "$cur_matchingloaded\n 1) variant/6.0{foo=val1} \n\nKey:\n{variant=value} " +set tserr "$cur_matchingloaded\n 1) variant/6.0{foo=val1}\n\nKey:\n{variant=value}" testouterr_cmd sh {list variant@6} OK $tserr testouterr_cmd sh {list variant@6 foo=val1} OK $tserr set tserr "$no_matchingloaded" testouterr_cmd sh {list variant@6 foo=val2} OK $tserr -set tserr "$cur_matchingloaded\n 1) bar/1.0 2) variant/6.0{foo=val1} \n\nKey:\n{variant=value} " +set tserr "$cur_matchingloaded\n 1) bar/1.0 2) variant/6.0{foo=val1}\n\nKey:\n{variant=value}" testouterr_cmd sh {list variant@6 foo=val1 bar @1} OK $tserr setenv_var TESTSUITE_VARIANT list2 setenv_path_var __MODULES_LMVARIANT variant/6.0&foo|1|1|0 -set tserr "$cur_matchingloaded\n 1) variant/6.0{+foo} \n\nKey:\n{+variant}={variant=on} {variant=value} " +set tserr "$cur_matchingloaded\n 1) variant/6.0{+foo}\n\nKey:\n{+variant}={variant=on} {variant=value}" testouterr_cmd sh {list variant@6} OK $tserr testouterr_cmd sh {list variant@6 +foo} OK $tserr set tserr "$no_matchingloaded" diff --git a/testsuite/modules.70-maint/455-stashlist.exp b/testsuite/modules.70-maint/455-stashlist.exp index 745da5f02..fc88c9123 100644 --- a/testsuite/modules.70-maint/455-stashlist.exp +++ b/testsuite/modules.70-maint/455-stashlist.exp @@ -42,12 +42,12 @@ testouterr_cmd sh stashlist OK [msg_no_stash_coll] create_stash_coll $stash_basic_content set last_stash [file tail [get_last_stash_coll]] -set tserr "[msg_stash_coll]\n 0) $last_stash " +set tserr "[msg_stash_coll]\n 0) $last_stash" testouterr_cmd sh stashlist OK $tserr create_stash_coll $stash_basic_content set last_last_stash [file tail [get_last_stash_coll]] -set tserr "[msg_stash_coll]\n 0) $last_last_stash 1) $last_stash " +set tserr "[msg_stash_coll]\n 0) $last_last_stash 1) $last_stash" testouterr_cmd sh stashlist OK $tserr delete_last_stash_coll @@ -129,7 +129,7 @@ create_stash_coll $stash_basic_content set last_stash_file [get_last_stash_coll] set last_stash [file rootname [file tail $last_stash_file]] -set tserr "[msg_stash_coll foo]\n 0) $last_stash " +set tserr "[msg_stash_coll foo]\n 0) $last_stash" testouterr_cmd sh stashlist OK $tserr create_stash_coll $stash_basic_content @@ -166,7 +166,7 @@ create_stash_coll $stash_basic2_content set last_stash_file [get_last_stash_coll] set last_stash [file rootname [file tail $last_stash_file]] -set tserr "[msg_stash_coll bar]\n 0) $last_stash " +set tserr "[msg_stash_coll bar]\n 0) $last_stash" testouterr_cmd sh stashlist OK $tserr delete_last_stash_coll diff --git a/testsuite/modules.70-maint/457-stash-savelist.exp b/testsuite/modules.70-maint/457-stash-savelist.exp index 1000c0d31..6329baf75 100644 --- a/testsuite/modules.70-maint/457-stash-savelist.exp +++ b/testsuite/modules.70-maint/457-stash-savelist.exp @@ -40,10 +40,10 @@ testouterr_cmd sh savelist OK [msg_no_named_coll] testouterr_cmd sh {savelist stash} OK [msg_no_named_coll] -set tserr "[msg_named_coll]\n 1) $last_stash " +set tserr "[msg_named_coll]\n 1) $last_stash" testouterr_cmd sh {savelist -a} OK $tserr -set tserr "[msg_named_coll 1]\n 1) $last_stash " +set tserr "[msg_named_coll 1]\n 1) $last_stash" testouterr_cmd sh {savelist -a stash} OK $tserr @@ -55,15 +55,15 @@ puts "module use --append $mp module load foo/1.0" close $fid -set tserr "[msg_named_coll]\n 1) coll " +set tserr "[msg_named_coll]\n 1) coll" testouterr_cmd sh savelist OK $tserr testouterr_cmd sh {savelist stash} OK [msg_no_named_coll 1] -set tserr "[msg_named_coll]\n 1) coll 2) $last_stash " +set tserr "[msg_named_coll]\n 1) coll 2) $last_stash" testouterr_cmd sh {savelist -a} OK $tserr -set tserr "[msg_named_coll 1]\n 1) $last_stash " +set tserr "[msg_named_coll 1]\n 1) $last_stash" testouterr_cmd sh {savelist -a stash} OK $tserr @@ -77,25 +77,25 @@ testouterr_cmd sh savelist OK [msg_no_named_coll 0 foo] testouterr_cmd sh {savelist stash} OK [msg_no_named_coll 0 foo] -set tserr "[msg_named_coll]\n 1) coll 2) $last_stash 3) $last_last_stash " +set tserr "[msg_named_coll]\n 1) coll 2) $last_stash 3) $last_last_stash" testouterr_cmd sh {savelist -a} OK $tserr -set tserr "[msg_named_coll 1]\n 1) $last_stash 2) $last_last_stash " +set tserr "[msg_named_coll 1]\n 1) $last_stash 2) $last_last_stash" testouterr_cmd sh {savelist -a stash} OK $tserr # unset target unsetenv_var MODULES_COLLECTION_TARGET -set tserr "[msg_named_coll]\n 1) coll " +set tserr "[msg_named_coll]\n 1) coll" testouterr_cmd sh savelist OK $tserr testouterr_cmd sh {savelist stash} OK [msg_no_named_coll 1] -set tserr "[msg_named_coll]\n 1) coll 2) $last_stash 3) $last_last_stash " +set tserr "[msg_named_coll]\n 1) coll 2) $last_stash 3) $last_last_stash" testouterr_cmd sh {savelist -a} OK $tserr -set tserr "[msg_named_coll 1]\n 1) $last_stash 2) $last_last_stash " +set tserr "[msg_named_coll 1]\n 1) $last_stash 2) $last_last_stash" testouterr_cmd sh {savelist -a stash} OK $tserr diff --git a/testsuite/modules.90-avail/020-single.exp b/testsuite/modules.90-avail/020-single.exp index c9001cee0..e6c10e6ae 100644 --- a/testsuite/modules.90-avail/020-single.exp +++ b/testsuite/modules.90-avail/020-single.exp @@ -36,9 +36,9 @@ set version3 "1.0" set symbol3 "foo" set key_al "Key: -\\(@\\)=module-alias " +\\(@\\)=module-alias" set key_sym "Key: -\\(symbolic-version\\) " +\\(symbolic-version\\)" # # Check this only for the /bin/csh @@ -51,11 +51,11 @@ set ts_csh "$header$module/$version" # The tests # -testouterr_cmd_re "csh" "avail $module/$version" "OK" "$ts_csh\\s+" -testouterr_cmd_re "csh" "avail $module" "OK" "$ts_csh\\s+" +testouterr_cmd_re "csh" "avail $module/$version" "OK" "$ts_csh" +testouterr_cmd_re "csh" "avail $module" "OK" "$ts_csh" # command nickname tests -testouterr_cmd_re "csh" "av $module" "OK" "$ts_csh\\s+" +testouterr_cmd_re "csh" "av $module" "OK" "$ts_csh" skip_if_quick_mode @@ -64,14 +64,14 @@ skip_if_quick_mode # set ts_csh "$header$module2/$alias2\\(@\\)" -testouterr_cmd_re "csh" "avail $module2/$alias2" "OK" "$ts_csh\\s+\n\n$key_al" +testouterr_cmd_re "csh" "avail $module2/$alias2" "OK" "$ts_csh\n\n$key_al" # # Test avail on a symbolic version # set ts_csh "$header$module3/$version3\\($symbol3\\)" -testouterr_cmd_re "csh" "avail $module3/$symbol3" "OK" "$ts_csh\\s+\n\n$key_sym" +testouterr_cmd_re "csh" "avail $module3/$symbol3" "OK" "$ts_csh\n\n$key_sym" # # test when loaded environment is inconsistent diff --git a/testsuite/modules.90-avail/030-multiple.exp b/testsuite/modules.90-avail/030-multiple.exp index 7993ee926..4b6a0f885 100644 --- a/testsuite/modules.90-avail/030-multiple.exp +++ b/testsuite/modules.90-avail/030-multiple.exp @@ -64,18 +64,18 @@ set header "$modlin $modpathre $modlin\n" set header2 "$modlin global/user modulerc $modlin\n" set key_sym "Key: -\\(symbolic-version\\) " +\\(symbolic-version\\)" set key_al "Key: -\\(@\\)=module-alias " +\\(@\\)=module-alias" set key_al_sym "Key: -\\(@\\)=module-alias \\(symbolic-version\\) " +\\(@\\)=module-alias \\(symbolic-version\\)" # # tests on a module with single symbol # # Check this only for the /bin/csh -set ts_csh "$header$module1/$mod1vers1\\($mod1sym\\)\\s+$module1/$mod1vers2\\s+" +set ts_csh "$header$module1/$mod1vers1\\($mod1sym\\)\\s+$module1/$mod1vers2" testouterr_cmd_re "csh" "avail $module1" "OK" "$ts_csh\n\n$key_sym" testouterr_cmd_re "csh" "avail $module1 $module1" "OK" "$ts_csh\n\n$key_sym" @@ -87,7 +87,7 @@ skip_if_quick_mode # tests on a module with multiple symbols # -set ts_csh "$header$module2/$mod2vers1\\($mod2sym1\\)\\s+$module2/$mod2vers2\\($mod2sym2\\)\\s+$module2/$mod2vers3\\($mod2sym3\\)\\s+" +set ts_csh "$header$module2/$mod2vers1\\($mod2sym1\\)\\s+$module2/$mod2vers2\\($mod2sym2\\)\\s+$module2/$mod2vers3\\($mod2sym3\\)" testouterr_cmd_re "csh" "avail $module2" "OK" "$ts_csh\n\n$key_sym" testouterr_cmd_re "csh" "avail $module2 $module2" "OK" "$ts_csh\n\n$key_sym" @@ -97,7 +97,7 @@ testouterr_cmd_re "csh" "avail $module2 $module2" "OK" "$ts_csh\n\n$key_sym" # tests on a module alias # -set ts_csh "$header$module3/$mod3vers1\\(@\\)\\s+$module3/$mod3vers2\\(@\\)\\s+$module3/$mod3vers3\\(@\\)\\s+" +set ts_csh "$header$module3/$mod3vers1\\(@\\)\\s+$module3/$mod3vers2\\(@\\)\\s+$module3/$mod3vers3\\(@\\)" testouterr_cmd_re "csh" "avail $module3" "OK" "$ts_csh\n\n$key_al" testouterr_cmd_re "csh" "avail $module3 $module3" "OK" "$ts_csh\n\n$key_al" @@ -108,7 +108,7 @@ testouterr_cmd_re "csh" "avail $module3 $module3" "OK" "$ts_csh\n\n$key_al" # set env(MODULERCFILE) "$env(TESTSUITEDIR)/etc/modulerc" -set ts_csh "$header2$module4\\(special:@\\)\\s+" +set ts_csh "$header2$module4\\(special:@\\)" testouterr_cmd_re "csh" "avail $module4" "OK" "$ts_csh\n\n$key_al_sym" testouterr_cmd_re "csh" "avail $module4 $module4" "OK" "$ts_csh\n\n$key_al_sym" @@ -119,7 +119,7 @@ testouterr_cmd_re "csh" "avail $module4 $module4" "OK" "$ts_csh\n\n$key_al_sym" # no error should be displayed # -set ts_csh "$header$module5/$mod5vers1\\($mod5sym1\\)\\s+$module5/$mod5vers2\\s+${module5}2/$mod5vers3\\s+${module5}2/$mod5vers4\\s+" +set ts_csh "$header$module5/$mod5vers1\\($mod5sym1\\)\\s+$module5/$mod5vers2\\s+${module5}2/$mod5vers3\\s+${module5}2/$mod5vers4" testouterr_cmd_re "csh" "avail $module5" "OK" "$ts_csh\n\n$key_sym" testouterr_cmd_re "csh" "avail $module5 $module5" "OK" "$ts_csh\n\n$key_sym" @@ -129,7 +129,7 @@ testouterr_cmd_re "csh" "avail $module5 $module5" "OK" "$ts_csh\n\n$key_sym" # tests on a module mixing aliases, symbols and regular modulefile # -set ts_csh "$header$module6/$mod6vers1\\s+$module6/$mod6alias1\\(@\\)\\s+$module6/$mod6vers2\\($mod6sym1:$mod6sym2\\)\\s+$module6/$mod6alias2\\(@\\)\\s+" +set ts_csh "$header$module6/$mod6vers1\\s+$module6/$mod6alias1\\(@\\)\\s+$module6/$mod6vers2\\($mod6sym1:$mod6sym2\\)\\s+$module6/$mod6alias2\\(@\\)" testouterr_cmd_re "csh" "avail $module6" "OK" "$ts_csh\n\n$key_al_sym" testouterr_cmd_re "csh" "avail $module6 $module6" "OK" "$ts_csh\n\n$key_al_sym" @@ -147,7 +147,7 @@ testouterr_cmd_re csh "avail unk knu" OK {} # set ts_csh "$header$module1/$mod1vers1\\($mod1sym:special\\)\\s+$module1/$mod1vers2\\s+" -append ts_csh "$module6/$mod6vers1\\s+$module6/$mod6alias1\\(@\\)\\s+$module6/$mod6vers2\\($mod6sym1:$mod6sym2\\)\\s+$module6/$mod6alias2\\(@\\)\\s+" +append ts_csh "$module6/$mod6vers1\\s+$module6/$mod6alias1\\(@\\)\\s+$module6/$mod6vers2\\($mod6sym1:$mod6sym2\\)\\s+$module6/$mod6alias2\\(@\\)" testouterr_cmd_re csh "avail $module1 $module6" OK $ts_csh\n\n$key_al_sym @@ -159,7 +159,7 @@ testouterr_cmd_re csh "avail $module1 $module6" OK $ts_csh\n\n$key_al_sym # save the former modulepath setup setenv_path_var MODULEPATH "$modpath.deep" $modpath set header "$modlin $modpathre.deep $modlin\n" -set ts_csh "$header$module7\\(@\\)\\s+" +set ts_csh "$header$module7\\(@\\)" testouterr_cmd_re "csh" "avail $module7" "OK" "$ts_csh\n\n$key_al" testouterr_cmd_re "csh" "avail $module7 $module7" "OK" "$ts_csh\n\n$key_al" @@ -170,7 +170,7 @@ testouterr_cmd_re "csh" "avail $module7 $module7" "OK" "$ts_csh\n\n$key_al" # append ts_csh "\n\n$modlin $modpathre $modlin\n" -append ts_csh "$module1/$mod1vers1\\($mod1sym:special\\)\\s+$module1/$mod1vers2\\s+" +append ts_csh "$module1/$mod1vers1\\($mod1sym:special\\)\\s+$module1/$mod1vers2" testouterr_cmd_re csh "avail $module1 $module7" OK $ts_csh\n\n$key_al_sym diff --git a/testsuite/modules.90-avail/070-full.exp b/testsuite/modules.90-avail/070-full.exp index 7bf1c83f6..df0db3b9c 100644 --- a/testsuite/modules.90-avail/070-full.exp +++ b/testsuite/modules.90-avail/070-full.exp @@ -41,99 +41,99 @@ set test_cols_small 25 set test_cols_othos 120 set ts_key "Key: -(@)=module-alias (symbolic-version) " +(@)=module-alias (symbolic-version)" set ts_key_small "Key: -(@)=module-alias -(symbolic-version) " +(@)=module-alias +(symbolic-version)" set len [string length $modpath] set lrep [expr {($test_cols - $len - 2)/2}] set rrep [expr {$test_cols - $len - 2 - $lrep}] set ts_sh "[string repeat {-} $lrep] $modpath [string repeat {-} $rrep] -alias/1.0 info/shells loc_sym/alias3 modbad/paths spread/4.0 -alias/2.0 info/shellsexp loc_sym/alias4 modbad/prepend-path spread/5.0 -alias/3.0 info/specified(foo) loc_sym/alias5 modbad/remove-path spread/6.0 -append/0.1 info/type loc_sym/alias6 modbad/sh-to-mod spread/7.0 -append/0.2 info/user loc_sym/alias7 module/2.0 spread/8.0 -append/0.3 info/userexp loc_sym/alias8 module/bad spreadrc/dir1/1.0 -append/0.4 inforc/1.0 loc_sym/alias9 module/empty spreadrc/dir2/1.0 -append/0.5 inforc/2.0(avail:bar:default) loc_sym/alias10 module/err spreadrc/dir3/1.0 -append/1.0 inforc/foo(@) loc_sym/alias11 module/lbad spreadrc/dir4/1.0 -append/1.1 load/00 loc_sym/exec1 module/lerr spreadrc/dir5/1.0 -append/1.3 load/10 loc_sym/exec2 module/lunk spreadrc/dir6/1.0 -append/1.4 load/11 loc_sym/exec3 module/meta spreadrc/dir7/1.0 -append/1.5 load/12 loc_sym/getvers1 module/relpath spreadrc/dir8/1.0 -append/1.6 load/13 loc_sym/getvers2 module/unk symlink/0.9 -append/1.7 load/14 loc_sym/getvers3 modvar/modfile symlink/1(@) -append/1.8 load/15 loc_sym/getvers4 modvar/submodfile symlink/1.2(default:new) -append/2.0 load/16 loc_sym/getvers5 prepend/0.1 symlink/bar(@) -append/2.1 load/17 loc_sym/getvers6 prepend/0.2 symlink2/1.0 -append/2.2 load/18 loc_sym/getvers7 prepend/0.3 symlink2/2.0 -append/2.3 load/19 loc_sym/getvers8 prepend/0.4 system/1.0 -append/2.4 load/20 loc_sym/getvers9 prepend/0.5 system/2.0 -append/4.0 load/21 loc_sym/getvers10 prepend/1.0 test/1.0 -append/4.1 load/22 loc_sym/versinf1 prepend/1.1 test/1.2 -append/5.0 load/23 loc_sym/versinf2 prepend/1.3 test/2.0 -append/6.0 load/24 loc_sym/versinf3 prepend/1.4 tr2_loc/(trreg) -append/7.0 load/25 loc_sym/versinf4 prepend/1.5 tr2_loc/al1(tr2unstable:@) -append/8.0 load/26 loc_sym/versinf5 prepend/1.6 tr2_loc/al2(tr2bar:@) -averssort/1(@) load/27 loc_sym/versinf6 prepend/1.7 tr2_loc/al3(default:tr2exp:trreg:@) -averssort/1.2.4(@) load/28 loc_sym/versinf7 prepend/1.8 tr2_loc/al4(@) -averssort/1.10(@) load/29 loc_sym/version1 prepend/1.9 tr2_loc/al5(default:trreg:@) -bad/after(good) load/30 loc_sym/version2 prepend/1.10 tr_loc/al1(tr2unstable:trunstable:@) -bad/before load/all(default) loc_sym/version3 prepend/2.0 tr_loc/al2(default:tr2bar:tr2exp:trbar:trreg:@) -bad2/body loc_def/default loc_sym/version4 prepend/2.1 tr_loc/al3(trexp:@) -bad2/proc loc_def/truedef loc_sym/version5 prepend/2.2 tr_loc/al4(@) -break/1.0 loc_dv1/1.0 loc_sym/version6 prepend/2.3 tr_loc/al5(@) -break/2.0 loc_dv1/2.0 loc_sym/version7 prepend/2.4 trace/all_off -break/3.0 loc_dv2/1.0(default) loc_sym/version8 prepend/3.0 trace/all_on -break/4.0 loc_dv2/2.0 loc_sym/version9 prepend/3.1 uname/cache -break/5.0 loc_dv3/1.0 loc_sym/version10 prepend/4.0 uname/domain -break/6.0 loc_dv3/2.0 loc_sym/version11 prepend/8.0 uname/machine -chdir/1.0 loc_dv4/1.0 loc_sym/version12 prereq/full uname/nodename -chdir/2.0 loc_dv6/1.0 loc_sym/version13 prereq/fullpath uname/release -chdir/3.0 loc_dv6/2.0/1.0 loc_sym/version14 prereq/module uname/sysname -chdir/4.0 loc_dv7/1.0 loc_sym/version15 prereq/orlist uname/unk -coll/a loc_dv7/2.0/(default) loc_sym/version16 prereq/relpath uname/version -coll/b loc_dv7/2.0/1.0 loc_sym/version17 puts/1 unsetenv/0.6 -coll/c loc_dv7/3.0 loc_sym/version18 puts/2 unsetenv/0.8 -coll/d loc_dv8/1.0 loc_sym/version19 puts/3 unsetenv/0.9 -conflict/full loc_dv8/2.0 loc_sym/version20 puts/4 unsetenv/1.0 -conflict/fullpath loc_dv9/1.0(default) loc_sym/version21 puts/5 use/1.0(default) -conflict/module loc_dv9/2.0 loc_sym/version22 puts/6 use/2.0 -conflict/relpath loc_dvv1/1.0(default) loc_sym/version23 puts/7 use/2.1 -continue/1.0 loc_dvv1/2.0 loc_sym/version24 puts/8 use/2.2 -continue/2.0 loc_fq/1.0 loc_sym/version25 puts/9 use/3.0 -continue/3.0 loc_rc1/1.0(foo) loc_sym/version26 recurs/modA use/3.1 -continue/4.0 loc_rc1/2.0 loc_tr/(reg) recurs/modB use/3.2 -continue/5.0 loc_rc2/1.0(bar:blah:foo) loc_tr/1.0(cur:stable) remove/0.3 use/4.0 -continue/6.0 loc_rc2/2.0 loc_tr/2.0(next:tr2unstable:trunstable:unstable) remove/0.4 use/4.1 -dirmodalias(@) loc_rc3/1.0(default) loc_tr/3.0(bar:default:exp:foo:reg:tr2bar:tr2exp:trbar:trexp:trreg) remove/0.5 user/adv -dirmodalias/1.0 loc_rc3/2.0(cur:stable) loc_tr/al1(unstable:@) remove/1.0 user/advanced -dirmodvirt loc_rc3/3.0(chk:exp:new:test) loc_tr/al2(bar:default:exp:reg:trexp:@) remove/1.3 user/exp -dirmodvirt/1.0 loc_rc4/1.0 loc_tr/al3(default:exp:reg:@) remove/1.4 user/expert -empty/1.0 loc_rc4/2.0(default) loc_tr/al4(default:reg:@) remove/1.5 user/nov -eschars/1.0 loc_rc4/3.0 loc_virt1/1.0 remove/1.6 user/novice -exit/1.0 loc_rc5/1.0 loc_virt1/2.0 remove/1.7 user/undef -exit/2.0 loc_rc5/2.0 loc_virt1/3.0 remove/1.8 verbose/msg -exit/3.0 loc_rc6/0.9 loc_virt1/4.0 remove/2.0 verbose/off -exit/4.0 loc_rc6/1(@) loc_virt2/1.0 remove/2.3 verbose/on -function/1.0 loc_rc6/1.2(default:new) loc_virt2/2.0 remove/2.4 verbose/undef -function/2.0 loc_rc6/bar(@) log/badfac remove/3.0 versions/1.1 -getenv/0.6 loc_rc7/0.9 log/err_both_1 remove/3.1 versions/1.2 -getenv/1.0 loc_rc7/1(@) log/err_both_2 remove/4.0 versions/1.3 -help/2.0 loc_rc7/1.2 log/err_file remove/4.1 verssort/1 -info/command loc_rc7/bar(@) log/err_syslog remove/4.2 verssort/1.2.1 -info/commandexp loc_rc8/0.9(@) modbad/append-path remove/5.0 verssort/1.2.4 -info/isavail loc_rc8/1.0 modbad/autoinit remove/8.0 verssort/1.8-2015-12-01 -info/isloaded loc_rc010/2.0 modbad/clear setenv/0.6 verssort/1.8-2016-02-01 -info/issaved loc_rcv1/1(@) modbad/config setenv/0.7.1 verssort/1.10 -info/isused loc_rcv1/1.1 modbad/edit setenv/0.7.2 whatis/lines -info/loaded loc_rcv1/1.2(default:new) modbad/empty setenv/0.8 whatis/multiple -info/mode1 loc_rcv1/2.0 modbad/foo setenv/1.0 whatis/none -info/mode2 loc_rcv1/bar(@) modbad/help source/0.9 whatis/single -info/mode3 loc_rcv2/1.2 modbad/info-loaded source/1.0 whatis/string -info/mode4 loc_rcv2/1.5 modbad/is-avail source/1.1 x-resource/1 +alias/1.0 info/shells loc_sym/alias3 modbad/paths spread/4.0 +alias/2.0 info/shellsexp loc_sym/alias4 modbad/prepend-path spread/5.0 +alias/3.0 info/specified(foo) loc_sym/alias5 modbad/remove-path spread/6.0 +append/0.1 info/type loc_sym/alias6 modbad/sh-to-mod spread/7.0 +append/0.2 info/user loc_sym/alias7 module/2.0 spread/8.0 +append/0.3 info/userexp loc_sym/alias8 module/bad spreadrc/dir1/1.0 +append/0.4 inforc/1.0 loc_sym/alias9 module/empty spreadrc/dir2/1.0 +append/0.5 inforc/2.0(avail:bar:default) loc_sym/alias10 module/err spreadrc/dir3/1.0 +append/1.0 inforc/foo(@) loc_sym/alias11 module/lbad spreadrc/dir4/1.0 +append/1.1 load/00 loc_sym/exec1 module/lerr spreadrc/dir5/1.0 +append/1.3 load/10 loc_sym/exec2 module/lunk spreadrc/dir6/1.0 +append/1.4 load/11 loc_sym/exec3 module/meta spreadrc/dir7/1.0 +append/1.5 load/12 loc_sym/getvers1 module/relpath spreadrc/dir8/1.0 +append/1.6 load/13 loc_sym/getvers2 module/unk symlink/0.9 +append/1.7 load/14 loc_sym/getvers3 modvar/modfile symlink/1(@) +append/1.8 load/15 loc_sym/getvers4 modvar/submodfile symlink/1.2(default:new) +append/2.0 load/16 loc_sym/getvers5 prepend/0.1 symlink/bar(@) +append/2.1 load/17 loc_sym/getvers6 prepend/0.2 symlink2/1.0 +append/2.2 load/18 loc_sym/getvers7 prepend/0.3 symlink2/2.0 +append/2.3 load/19 loc_sym/getvers8 prepend/0.4 system/1.0 +append/2.4 load/20 loc_sym/getvers9 prepend/0.5 system/2.0 +append/4.0 load/21 loc_sym/getvers10 prepend/1.0 test/1.0 +append/4.1 load/22 loc_sym/versinf1 prepend/1.1 test/1.2 +append/5.0 load/23 loc_sym/versinf2 prepend/1.3 test/2.0 +append/6.0 load/24 loc_sym/versinf3 prepend/1.4 tr2_loc/(trreg) +append/7.0 load/25 loc_sym/versinf4 prepend/1.5 tr2_loc/al1(tr2unstable:@) +append/8.0 load/26 loc_sym/versinf5 prepend/1.6 tr2_loc/al2(tr2bar:@) +averssort/1(@) load/27 loc_sym/versinf6 prepend/1.7 tr2_loc/al3(default:tr2exp:trreg:@) +averssort/1.2.4(@) load/28 loc_sym/versinf7 prepend/1.8 tr2_loc/al4(@) +averssort/1.10(@) load/29 loc_sym/version1 prepend/1.9 tr2_loc/al5(default:trreg:@) +bad/after(good) load/30 loc_sym/version2 prepend/1.10 tr_loc/al1(tr2unstable:trunstable:@) +bad/before load/all(default) loc_sym/version3 prepend/2.0 tr_loc/al2(default:tr2bar:tr2exp:trbar:trreg:@) +bad2/body loc_def/default loc_sym/version4 prepend/2.1 tr_loc/al3(trexp:@) +bad2/proc loc_def/truedef loc_sym/version5 prepend/2.2 tr_loc/al4(@) +break/1.0 loc_dv1/1.0 loc_sym/version6 prepend/2.3 tr_loc/al5(@) +break/2.0 loc_dv1/2.0 loc_sym/version7 prepend/2.4 trace/all_off +break/3.0 loc_dv2/1.0(default) loc_sym/version8 prepend/3.0 trace/all_on +break/4.0 loc_dv2/2.0 loc_sym/version9 prepend/3.1 uname/cache +break/5.0 loc_dv3/1.0 loc_sym/version10 prepend/4.0 uname/domain +break/6.0 loc_dv3/2.0 loc_sym/version11 prepend/8.0 uname/machine +chdir/1.0 loc_dv4/1.0 loc_sym/version12 prereq/full uname/nodename +chdir/2.0 loc_dv6/1.0 loc_sym/version13 prereq/fullpath uname/release +chdir/3.0 loc_dv6/2.0/1.0 loc_sym/version14 prereq/module uname/sysname +chdir/4.0 loc_dv7/1.0 loc_sym/version15 prereq/orlist uname/unk +coll/a loc_dv7/2.0/(default) loc_sym/version16 prereq/relpath uname/version +coll/b loc_dv7/2.0/1.0 loc_sym/version17 puts/1 unsetenv/0.6 +coll/c loc_dv7/3.0 loc_sym/version18 puts/2 unsetenv/0.8 +coll/d loc_dv8/1.0 loc_sym/version19 puts/3 unsetenv/0.9 +conflict/full loc_dv8/2.0 loc_sym/version20 puts/4 unsetenv/1.0 +conflict/fullpath loc_dv9/1.0(default) loc_sym/version21 puts/5 use/1.0(default) +conflict/module loc_dv9/2.0 loc_sym/version22 puts/6 use/2.0 +conflict/relpath loc_dvv1/1.0(default) loc_sym/version23 puts/7 use/2.1 +continue/1.0 loc_dvv1/2.0 loc_sym/version24 puts/8 use/2.2 +continue/2.0 loc_fq/1.0 loc_sym/version25 puts/9 use/3.0 +continue/3.0 loc_rc1/1.0(foo) loc_sym/version26 recurs/modA use/3.1 +continue/4.0 loc_rc1/2.0 loc_tr/(reg) recurs/modB use/3.2 +continue/5.0 loc_rc2/1.0(bar:blah:foo) loc_tr/1.0(cur:stable) remove/0.3 use/4.0 +continue/6.0 loc_rc2/2.0 loc_tr/2.0(next:tr2unstable:trunstable:unstable) remove/0.4 use/4.1 +dirmodalias(@) loc_rc3/1.0(default) loc_tr/3.0(bar:default:exp:foo:reg:tr2bar:tr2exp:trbar:trexp:trreg) remove/0.5 user/adv +dirmodalias/1.0 loc_rc3/2.0(cur:stable) loc_tr/al1(unstable:@) remove/1.0 user/advanced +dirmodvirt loc_rc3/3.0(chk:exp:new:test) loc_tr/al2(bar:default:exp:reg:trexp:@) remove/1.3 user/exp +dirmodvirt/1.0 loc_rc4/1.0 loc_tr/al3(default:exp:reg:@) remove/1.4 user/expert +empty/1.0 loc_rc4/2.0(default) loc_tr/al4(default:reg:@) remove/1.5 user/nov +eschars/1.0 loc_rc4/3.0 loc_virt1/1.0 remove/1.6 user/novice +exit/1.0 loc_rc5/1.0 loc_virt1/2.0 remove/1.7 user/undef +exit/2.0 loc_rc5/2.0 loc_virt1/3.0 remove/1.8 verbose/msg +exit/3.0 loc_rc6/0.9 loc_virt1/4.0 remove/2.0 verbose/off +exit/4.0 loc_rc6/1(@) loc_virt2/1.0 remove/2.3 verbose/on +function/1.0 loc_rc6/1.2(default:new) loc_virt2/2.0 remove/2.4 verbose/undef +function/2.0 loc_rc6/bar(@) log/badfac remove/3.0 versions/1.1 +getenv/0.6 loc_rc7/0.9 log/err_both_1 remove/3.1 versions/1.2 +getenv/1.0 loc_rc7/1(@) log/err_both_2 remove/4.0 versions/1.3 +help/2.0 loc_rc7/1.2 log/err_file remove/4.1 verssort/1 +info/command loc_rc7/bar(@) log/err_syslog remove/4.2 verssort/1.2.1 +info/commandexp loc_rc8/0.9(@) modbad/append-path remove/5.0 verssort/1.2.4 +info/isavail loc_rc8/1.0 modbad/autoinit remove/8.0 verssort/1.8-2015-12-01 +info/isloaded loc_rc010/2.0 modbad/clear setenv/0.6 verssort/1.8-2016-02-01 +info/issaved loc_rcv1/1(@) modbad/config setenv/0.7.1 verssort/1.10 +info/isused loc_rcv1/1.1 modbad/edit setenv/0.7.2 whatis/lines +info/loaded loc_rcv1/1.2(default:new) modbad/empty setenv/0.8 whatis/multiple +info/mode1 loc_rcv1/2.0 modbad/foo setenv/1.0 whatis/none +info/mode2 loc_rcv1/bar(@) modbad/help source/0.9 whatis/single +info/mode3 loc_rcv2/1.2 modbad/info-loaded source/1.0 whatis/string +info/mode4 loc_rcv2/1.5 modbad/is-avail source/1.1 x-resource/1 info/mode5 loc_rcv2/2.0 modbad/is-loaded source/1.2 info/mode6 loc_sym/1.0 modbad/is-saved spread/1.0 info/name loc_sym/alias1 modbad/is-used spread/2.0 @@ -1037,93 +1037,93 @@ set ts_sh_all_json "{\"$modpath\": { }}" set ts_sh_small "- $modpath.deep - -badmodvers/dir1/2.0 -badmodvers/foo -dir2/1.0(d1) -dir2/3.0(d3) -modalias/1.0(@) -modalias/3.0 -modalias/dir1/1.0 -modalias/dir1/2.0(@) -modalias/dir2/2.0 -modalias/dir2/3.0(@) -moddalias(@) -moddalias/dir1/1 -moddef/dir2/1.0(default) -moddef/dir2/2.0 -modload/dir2/1.0(md1) -modload/dir2/3.0(md3) -modsym/dir1/1.0(3.0) -modsym/dir2/2.0(3.0) -modtr/3.0(bar:exp:foo:reg:tr2bar:trbar) -modtr/al1(unstable:@) -modtr/al4(default:reg:@) -modtr/al5(fld:@) -modtr/al6(sfld:@) -modtr/dir1/1.0(cur:stable) -modtr/dir2/2.0(next:tr2unstable:trunstable:unstable) -modtr/dir3/al2(bar:default:exp:reg:tr2bar:trbar:@) -modtr/dir3/al3(default:exp:reg:@) -modtr/dir4/(default:fld:reg:trfld:trreg) -modtr/dir4/al7(madj:@) -modtr/dir4/al8(dadj:@) -modtr/dir4/mod4.0 -modtr/dir5/subdir/(dadj:sfld) -modtr/dir5/subdir/mod5.0(madj) -modulerc/dir1/(default) -modulerc/dir1/1.0(default) -modulerc/dir1/2.0 -modulerc/dir2/(foo) -modulerc/dir2/1.0/(default:foo) -modulerc/dir2/1.0/rc1(default:foo) -modulerc/dir2/1.0/rc2 -modulerc/dir2/2.0 -modulerc/dir2/3.0 -modvirt/1.0(@) -modvirt/3.0 -modvirt/dir0/sub1/4.0 -modvirt/dir0/sub1/5.0(@) -modvirt/dir0/sub1/6.0 -modvirt/dir1/1.0 -modvirt/dir1/2.0(@) -modvirt/dir2/2.0 -modvirt/dir2/3.0(@) -plain/dir1/1.0 -plain/dir1/2.0 -plain/dir2/1.0 -plain/dir2/2.0 -tr2mod/al1(tr2unstable:@) -tr2mod/al5(tr2fld:@) -tr2mod/dir3/al2(tr2bar:@) -trmod/(trreg) -trmod/al1(tr2unstable:trunstable:@) -trmod/al5(default:trfld:trreg:@) -trmod/dir3/(tr2fld) -trmod/dir3/al2(tr2bar:trbar:@) -version/dir1/(default) -version/dir1/1.0(default) -version/dir1/2.0 -version/dir2/1.0 -version/dir2/2.0/(default) -version/dir2/2.0/rc1(default) -version/dir2/2.0/rc2 -version/dir2/3.0 " +badmodvers/dir1/2.0 +badmodvers/foo +dir2/1.0(d1) +dir2/3.0(d3) +modalias/1.0(@) +modalias/3.0 +modalias/dir1/1.0 +modalias/dir1/2.0(@) +modalias/dir2/2.0 +modalias/dir2/3.0(@) +moddalias(@) +moddalias/dir1/1 +moddef/dir2/1.0(default) +moddef/dir2/2.0 +modload/dir2/1.0(md1) +modload/dir2/3.0(md3) +modsym/dir1/1.0(3.0) +modsym/dir2/2.0(3.0) +modtr/3.0(bar:exp:foo:reg:tr2bar:trbar) +modtr/al1(unstable:@) +modtr/al4(default:reg:@) +modtr/al5(fld:@) +modtr/al6(sfld:@) +modtr/dir1/1.0(cur:stable) +modtr/dir2/2.0(next:tr2unstable:trunstable:unstable) +modtr/dir3/al2(bar:default:exp:reg:tr2bar:trbar:@) +modtr/dir3/al3(default:exp:reg:@) +modtr/dir4/(default:fld:reg:trfld:trreg) +modtr/dir4/al7(madj:@) +modtr/dir4/al8(dadj:@) +modtr/dir4/mod4.0 +modtr/dir5/subdir/(dadj:sfld) +modtr/dir5/subdir/mod5.0(madj) +modulerc/dir1/(default) +modulerc/dir1/1.0(default) +modulerc/dir1/2.0 +modulerc/dir2/(foo) +modulerc/dir2/1.0/(default:foo) +modulerc/dir2/1.0/rc1(default:foo) +modulerc/dir2/1.0/rc2 +modulerc/dir2/2.0 +modulerc/dir2/3.0 +modvirt/1.0(@) +modvirt/3.0 +modvirt/dir0/sub1/4.0 +modvirt/dir0/sub1/5.0(@) +modvirt/dir0/sub1/6.0 +modvirt/dir1/1.0 +modvirt/dir1/2.0(@) +modvirt/dir2/2.0 +modvirt/dir2/3.0(@) +plain/dir1/1.0 +plain/dir1/2.0 +plain/dir2/1.0 +plain/dir2/2.0 +tr2mod/al1(tr2unstable:@) +tr2mod/al5(tr2fld:@) +tr2mod/dir3/al2(tr2bar:@) +trmod/(trreg) +trmod/al1(tr2unstable:trunstable:@) +trmod/al5(default:trfld:trreg:@) +trmod/dir3/(tr2fld) +trmod/dir3/al2(tr2bar:trbar:@) +version/dir1/(default) +version/dir1/1.0(default) +version/dir1/2.0 +version/dir2/1.0 +version/dir2/2.0/(default) +version/dir2/2.0/rc1(default) +version/dir2/2.0/rc2 +version/dir2/3.0" set len [string length $modpath.deep] set lrep [expr {($test_cols_othos - $len - 2)/2}] set rrep [expr {$test_cols_othos - $len - 2 - $lrep}] set ts_sh_noflag_othos "[string repeat {-} $lrep] $modpath.deep [string repeat {-} $rrep] -badmodvers/dir1/2.0 modload/dir2/3.0 modtr/dir4/mod4.0 modvirt/dir0/sub1/5.0 trmod/al5 -badmodvers/foo modsym/dir1/1.0 modtr/dir5/subdir/ modvirt/dir0/sub1/6.0 trmod/dir3/ -dir2/1.0 modsym/dir2/2.0 modtr/dir5/subdir/mod5.0 modvirt/dir1/1.0 trmod/dir3/al2 -dir2/3.0 modtr/3.0 modulerc/dir1/ modvirt/dir1/2.0 version/dir1/ -modalias/1.0 modtr/al1 modulerc/dir1/1.0 modvirt/dir2/2.0 version/dir1/1.0 -modalias/3.0 modtr/al4 modulerc/dir1/2.0 modvirt/dir2/3.0 version/dir1/2.0 -modalias/dir1/1.0 modtr/al5 modulerc/dir2/ plain/dir1/1.0 version/dir2/1.0 -modalias/dir1/2.0 modtr/al6 modulerc/dir2/1.0/ plain/dir1/2.0 version/dir2/2.0/ -modalias/dir2/2.0 modtr/dir1/1.0 modulerc/dir2/1.0/rc1 plain/dir2/1.0 version/dir2/2.0/rc1 -modalias/dir2/3.0 modtr/dir2/2.0 modulerc/dir2/1.0/rc2 plain/dir2/2.0 version/dir2/2.0/rc2 -moddalias modtr/dir3/al2 modulerc/dir2/2.0 tr2mod/al1 version/dir2/3.0 +badmodvers/dir1/2.0 modload/dir2/3.0 modtr/dir4/mod4.0 modvirt/dir0/sub1/5.0 trmod/al5 +badmodvers/foo modsym/dir1/1.0 modtr/dir5/subdir/ modvirt/dir0/sub1/6.0 trmod/dir3/ +dir2/1.0 modsym/dir2/2.0 modtr/dir5/subdir/mod5.0 modvirt/dir1/1.0 trmod/dir3/al2 +dir2/3.0 modtr/3.0 modulerc/dir1/ modvirt/dir1/2.0 version/dir1/ +modalias/1.0 modtr/al1 modulerc/dir1/1.0 modvirt/dir2/2.0 version/dir1/1.0 +modalias/3.0 modtr/al4 modulerc/dir1/2.0 modvirt/dir2/3.0 version/dir1/2.0 +modalias/dir1/1.0 modtr/al5 modulerc/dir2/ plain/dir1/1.0 version/dir2/1.0 +modalias/dir1/2.0 modtr/al6 modulerc/dir2/1.0/ plain/dir1/2.0 version/dir2/2.0/ +modalias/dir2/2.0 modtr/dir1/1.0 modulerc/dir2/1.0/rc1 plain/dir2/1.0 version/dir2/2.0/rc1 +modalias/dir2/3.0 modtr/dir2/2.0 modulerc/dir2/1.0/rc2 plain/dir2/2.0 version/dir2/2.0/rc2 +moddalias modtr/dir3/al2 modulerc/dir2/2.0 tr2mod/al1 version/dir2/3.0 moddalias/dir1/1 modtr/dir3/al3 modulerc/dir2/3.0 tr2mod/al5 moddef/dir2/1.0 modtr/dir4/ modvirt/1.0 tr2mod/dir3/al2 moddef/dir2/2.0 modtr/dir4/al7 modvirt/3.0 trmod/ diff --git a/testsuite/modules.90-avail/100-tags.exp b/testsuite/modules.90-avail/100-tags.exp index 149281fbc..380ef21bd 100644 --- a/testsuite/modules.90-avail/100-tags.exp +++ b/testsuite/modules.90-avail/100-tags.exp @@ -31,10 +31,10 @@ setenv_var MODULES_TAG_ABBREV {auto-loaded=aL:loaded=L:hidden=H:hidden-loaded=H: # test with regular modulefile set tserr "$modlin $mpre $modlin -tag/1.0 +tag/1.0 Key: - =forbidden " + =forbidden" testouterr_cmd_re sh {avail tag/1.0} OK $tserr # terse output @@ -57,10 +57,10 @@ skip_if_quick_mode setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0] set tserr "$modlin $mpre $modlin -tag/1.0 +tag/1.0 Key: - =loaded =forbidden " + =loaded =forbidden" testouterr_cmd_re sh {avail tag/1.0} OK $tserr set tserr "{\"$mp\": { @@ -70,10 +70,10 @@ testouterr_cmd sh {avail -j tag/1.0} OK $tserr setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0] [list tag/1.0] set tserr "$modlin $mpre $modlin -tag/1.0 +tag/1.0 Key: - =auto-loaded =forbidden " + =auto-loaded =forbidden" testouterr_cmd_re sh {avail tag/1.0} OK $tserr set tserr "{\"$mp\": { @@ -84,10 +84,10 @@ testouterr_cmd sh {avail -j tag/1.0} OK $tserr # test with virtual module unsetenv_loaded_module set tserr "$modlin $mpre $modlin -tag/2.0 +tag/2.0 Key: - =forbidden " + =forbidden" testouterr_cmd_re sh {avail tag/2.0} OK $tserr set tserr "{\"$mp\": { @@ -97,10 +97,10 @@ testouterr_cmd sh {avail -j tag/2.0} OK $tserr setenv_loaded_module [list tag/2.0] [list $mp/tag/1.0] set tserr "$modlin $mpre $modlin -tag/2.0 +tag/2.0 Key: - =loaded =forbidden " + =loaded =forbidden" testouterr_cmd_re sh {avail tag/2.0} OK $tserr set tserr "{\"$mp\": { @@ -110,10 +110,10 @@ testouterr_cmd sh {avail -j tag/2.0} OK $tserr setenv_loaded_module [list tag/2.0] [list $mp/tag/1.0] [list tag/2.0] set tserr "$modlin $mpre $modlin -tag/2.0 +tag/2.0 Key: - =auto-loaded =forbidden " + =auto-loaded =forbidden" testouterr_cmd_re sh {avail tag/2.0} OK $tserr set tserr "{\"$mp\": { @@ -124,10 +124,10 @@ testouterr_cmd sh {avail -j tag/2.0} OK $tserr # test with module alias unsetenv_loaded_module set tserr "$modlin $mpre $modlin -tag/3.0\\(@\\) +tag/3.0\\(@\\) Key: -\\(@\\)=module-alias =forbidden " +\\(@\\)=module-alias =forbidden" testouterr_cmd_re sh {avail tag/3.0} OK $tserr set tserr "{\"$mp\": { @@ -138,10 +138,10 @@ testouterr_cmd sh {avail -j tag/3.0} OK $tserr setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0] setenv_var __MODULES_LMALTNAME tag/1.0&al|tag/3.0 set tserr "$modlin $mpre $modlin -tag/3.0\\(@\\) +tag/3.0\\(@\\) Key: -\\(@\\)=module-alias =forbidden " +\\(@\\)=module-alias =forbidden" testouterr_cmd_re sh {avail tag/3.0} OK $tserr set tserr "{\"$mp\": { @@ -151,10 +151,10 @@ testouterr_cmd sh {avail -j tag/3.0} OK $tserr setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0] [list tag/1.0] set tserr "$modlin $mpre $modlin -tag/3.0\\(@\\) +tag/3.0\\(@\\) Key: -\\(@\\)=module-alias =forbidden " +\\(@\\)=module-alias =forbidden" testouterr_cmd_re sh {avail tag/3.0} OK $tserr set tserr "{\"$mp\": { @@ -166,15 +166,15 @@ testouterr_cmd sh {avail -j tag/3.0} OK $tserr setenv_var MODULES_TAG_ABBREV {auto-loaded=aL:loaded=L:hidden=H:hidden-loaded=Hl:forbidden=F:nearly-forbidden=nF} setenv_var TESTSUITE_MODULE_TAG_SET13 1 set tserr "$modlin $mpre $modlin -tag/5.0 " +tag/5.0" testouterr_cmd_re sh {avail tag/5.0} OK $tserr unsetenv_var TESTSUITE_MODULE_TAG_SET13 setenv_var TESTSUITE_MODULE_TAG_SET14 1 set tserr "$modlin $mpre $modlin -tag/5.0 +tag/5.0 Key: - =hidden " + =hidden" testouterr_cmd_re sh {avail tag/5.0} OK $tserr unsetenv_var TESTSUITE_MODULE_TAG_SET14 diff --git a/testsuite/modules.92-spider/020-spider-single.exp b/testsuite/modules.92-spider/020-spider-single.exp index ddaac8d27..edc862267 100644 --- a/testsuite/modules.92-spider/020-spider-single.exp +++ b/testsuite/modules.92-spider/020-spider-single.exp @@ -38,9 +38,9 @@ set version3 "1.0" set symbol3 "foo" set key_al "Key: -\\(@\\)=module-alias " +\\(@\\)=module-alias" set key_sym "Key: -\\(symbolic-version\\) " +\\(symbolic-version\\)" # # Check this only for the /bin/csh @@ -53,10 +53,10 @@ set ts_csh "$header$module/$version" # The tests # -testouterr_cmd_re "csh" "spider $module/$version" OK "$ts_csh\\s+" +testouterr_cmd_re "csh" "spider $module/$version" OK "$ts_csh" # command nickname tests -testouterr_cmd_re "csh" "spi $module" OK "$ts_csh\\s+" +testouterr_cmd_re "csh" "spi $module" OK "$ts_csh" skip_if_quick_mode @@ -65,14 +65,14 @@ skip_if_quick_mode # set ts_csh "$header$module2/$alias2\\(@\\)" -testouterr_cmd_re "csh" "spider $module2/$alias2" OK "$ts_csh\\s+\n\n$key_al" +testouterr_cmd_re "csh" "spider $module2/$alias2" OK "$ts_csh\n\n$key_al" # # Test spider on a symbolic version # set ts_csh "$header$module3/$version3\\($symbol3\\)" -testouterr_cmd_re "csh" "spider $module3/$symbol3" OK "$ts_csh\\s+\n\n$key_sym" +testouterr_cmd_re "csh" "spider $module3/$symbol3" OK "$ts_csh\n\n$key_sym" # # test when loaded environment is inconsistent diff --git a/testsuite/modules.92-spider/030-spider-multiple.exp b/testsuite/modules.92-spider/030-spider-multiple.exp index 4af278f9e..e912594d0 100644 --- a/testsuite/modules.92-spider/030-spider-multiple.exp +++ b/testsuite/modules.92-spider/030-spider-multiple.exp @@ -66,18 +66,18 @@ set header "$modlin $modpathre $modlin\n" set header2 "$modlin global/user modulerc $modlin\n" set key_sym "Key: -\\(symbolic-version\\) " +\\(symbolic-version\\)" set key_al "Key: -\\(@\\)=module-alias " +\\(@\\)=module-alias" set key_al_sym "Key: -\\(@\\)=module-alias \\(symbolic-version\\) " +\\(@\\)=module-alias \\(symbolic-version\\)" # # tests on a module with single symbol # # Check this only for the /bin/csh -set ts_csh "$header$module1/$mod1vers1\\($mod1sym\\)\\s+$module1/$mod1vers2\\s+" +set ts_csh "$header$module1/$mod1vers1\\($mod1sym\\)\\s+$module1/$mod1vers2" testouterr_cmd_re "csh" "spider $module1" "OK" "$ts_csh\n\n$key_sym" testouterr_cmd_re "csh" "spider $module1 $module1" "OK" "$ts_csh\n\n$key_sym" @@ -87,7 +87,7 @@ testouterr_cmd_re "csh" "spider $module1 $module1" "OK" "$ts_csh\n\n$key_sym" # tests on a module with multiple symbols # -set ts_csh "$header$module2/$mod2vers1\\($mod2sym1\\)\\s+$module2/$mod2vers2\\($mod2sym2\\)\\s+$module2/$mod2vers3\\($mod2sym3\\)\\s+" +set ts_csh "$header$module2/$mod2vers1\\($mod2sym1\\)\\s+$module2/$mod2vers2\\($mod2sym2\\)\\s+$module2/$mod2vers3\\($mod2sym3\\)" testouterr_cmd_re "csh" "spider $module2" "OK" "$ts_csh\n\n$key_sym" testouterr_cmd_re "csh" "spider $module2 $module2" "OK" "$ts_csh\n\n$key_sym" @@ -97,7 +97,7 @@ testouterr_cmd_re "csh" "spider $module2 $module2" "OK" "$ts_csh\n\n$key_sym" # tests on a module alias # -set ts_csh "$header$module3/$mod3vers1\\(@\\)\\s+$module3/$mod3vers2\\(@\\)\\s+$module3/$mod3vers3\\(@\\)\\s+" +set ts_csh "$header$module3/$mod3vers1\\(@\\)\\s+$module3/$mod3vers2\\(@\\)\\s+$module3/$mod3vers3\\(@\\)" testouterr_cmd_re "csh" "spider $module3" "OK" "$ts_csh\n\n$key_al" testouterr_cmd_re "csh" "spider $module3 $module3" "OK" "$ts_csh\n\n$key_al" @@ -108,7 +108,7 @@ testouterr_cmd_re "csh" "spider $module3 $module3" "OK" "$ts_csh\n\n$key_al" # set env(MODULERCFILE) "$env(TESTSUITEDIR)/etc/modulerc" -set ts_csh "$header2$module4\\(special:@\\)\\s+" +set ts_csh "$header2$module4\\(special:@\\)" testouterr_cmd_re "csh" "spider $module4" "OK" "$ts_csh\n\n$key_al_sym" testouterr_cmd_re "csh" "spider $module4 $module4" "OK" "$ts_csh\n\n$key_al_sym" @@ -119,10 +119,10 @@ testouterr_cmd_re "csh" "spider $module4 $module4" "OK" "$ts_csh\n\n$key_al_sym" # no error should be displayed # -set ts_csh "$header$module5/$mod5vers1\\($mod5sym1\\)\\s+$module5/$mod5vers2\\s+${module5}2/$mod5vers3\\s+${module5}2/$mod5vers4\\s+ +set ts_csh "$header$module5/$mod5vers1\\($mod5sym1\\)\\s+$module5/$mod5vers2\\s+${module5}2/$mod5vers3\\s+${module5}2/$mod5vers4 $modlin $modpathre.2 \\(via use/2.0\\) $modlin -bad3/bodyfor\\s+bad3/bodyif\\s+bad3/bodyproc\\s+bad3/bodysource\\s+bad3/bodywhile\\s+bad3/proc2\\s+bad3/proc3\\s+bad3/procproc\\s+bad3/procsource\\s+badrc3/1\\s+" +bad3/bodyfor\\s+bad3/bodyif\\s+bad3/bodyproc\\s+bad3/bodysource\\s+bad3/bodywhile\\s+bad3/proc2\\s+bad3/proc3\\s+bad3/procproc\\s+bad3/procsource\\s+badrc3/1" testouterr_cmd_re "csh" "spider $module5" "OK" "$ts_csh\n\n$key_sym" testouterr_cmd_re "csh" "spider $module5 $module5" "OK" "$ts_csh\n\n$key_sym" @@ -132,7 +132,7 @@ testouterr_cmd_re "csh" "spider $module5 $module5" "OK" "$ts_csh\n\n$key_sym" # tests on a module mixing aliases, symbols and regular modulefile # -set ts_csh "$header$module6/$mod6vers1\\s+$module6/$mod6alias1\\(@\\)\\s+$module6/$mod6vers2\\($mod6sym1:$mod6sym2\\)\\s+$module6/$mod6alias2\\(@\\)\\s+" +set ts_csh "$header$module6/$mod6vers1\\s+$module6/$mod6alias1\\(@\\)\\s+$module6/$mod6vers2\\($mod6sym1:$mod6sym2\\)\\s+$module6/$mod6alias2\\(@\\)" testouterr_cmd_re "csh" "spider $module6" "OK" "$ts_csh\n\n$key_al_sym" testouterr_cmd_re "csh" "spider $module6 $module6" "OK" "$ts_csh\n\n$key_al_sym" @@ -150,7 +150,7 @@ testouterr_cmd_re csh "spider unk knu" OK {} # set ts_csh "$header$module1/$mod1vers1\\($mod1sym:special\\)\\s+$module1/$mod1vers2\\s+" -append ts_csh "$module6/$mod6vers1\\s+$module6/$mod6alias1\\(@\\)\\s+$module6/$mod6vers2\\($mod6sym1:$mod6sym2\\)\\s+$module6/$mod6alias2\\(@\\)\\s+" +append ts_csh "$module6/$mod6vers1\\s+$module6/$mod6alias1\\(@\\)\\s+$module6/$mod6vers2\\($mod6sym1:$mod6sym2\\)\\s+$module6/$mod6alias2\\(@\\)" testouterr_cmd_re csh "spider $module1 $module6" OK $ts_csh\n\n$key_al_sym @@ -162,7 +162,7 @@ testouterr_cmd_re csh "spider $module1 $module6" OK $ts_csh\n\n$key_al_sym # save the former modulepath setup setenv_path_var MODULEPATH "$modpath.deep" $modpath set header "$modlin $modpathre.deep $modlin\n" -set ts_csh "$header$module7\\(@\\)\\s+" +set ts_csh "$header$module7\\(@\\)" testouterr_cmd_re "csh" "spider $module7" "OK" "$ts_csh\n\n$key_al" testouterr_cmd_re "csh" "spider $module7 $module7" "OK" "$ts_csh\n\n$key_al" @@ -173,7 +173,7 @@ testouterr_cmd_re "csh" "spider $module7 $module7" "OK" "$ts_csh\n\n$key_al" # append ts_csh "\n\n$modlin $modpathre $modlin\n" -append ts_csh "$module1/$mod1vers1\\($mod1sym:special\\)\\s+$module1/$mod1vers2\\s+" +append ts_csh "$module1/$mod1vers1\\($mod1sym:special\\)\\s+$module1/$mod1vers2" testouterr_cmd_re csh "spider $module1 $module7" OK $ts_csh\n\n$key_al_sym diff --git a/testsuite/modules.92-spider/070-spider-full.exp b/testsuite/modules.92-spider/070-spider-full.exp index cac5415d6..deaa810e4 100644 --- a/testsuite/modules.92-spider/070-spider-full.exp +++ b/testsuite/modules.92-spider/070-spider-full.exp @@ -43,10 +43,10 @@ set test_cols_small 25 set test_cols_othos 120 set ts_key "Key: -(@)=module-alias (symbolic-version) " +(@)=module-alias (symbolic-version)" set ts_key_small "Key: -(@)=module-alias -(symbolic-version) " +(@)=module-alias +(symbolic-version)" set len [string length $modpath] set lrep [expr {($test_cols - $len - 2)/2}] @@ -55,166 +55,166 @@ set len2 [string length "$modpath.2 (via use/2.0)"] set lrep2 [expr {($test_cols - $len2 - 2)/2}] set rrep2 [expr {$test_cols - $len2 - 2 - $lrep2}] set ts_sh "[string repeat {-} $lrep] $modpath [string repeat {-} $rrep] -alias/1.0 info/shells loc_sym/alias3 modbad/paths spread/4.0 -alias/2.0 info/shellsexp loc_sym/alias4 modbad/prepend-path spread/5.0 -alias/3.0 info/specified(foo) loc_sym/alias5 modbad/remove-path spread/6.0 -append/0.1 info/type loc_sym/alias6 modbad/sh-to-mod spread/7.0 -append/0.2 info/user loc_sym/alias7 module/2.0 spread/8.0 -append/0.3 info/userexp loc_sym/alias8 module/bad spreadrc/dir1/1.0 -append/0.4 inforc/1.0 loc_sym/alias9 module/empty spreadrc/dir2/1.0 -append/0.5 inforc/2.0(bar:default:spider) loc_sym/alias10 module/err spreadrc/dir3/1.0 -append/1.0 inforc/foo(@) loc_sym/alias11 module/lbad spreadrc/dir4/1.0 -append/1.1 load/00 loc_sym/exec1 module/lerr spreadrc/dir5/1.0 -append/1.3 load/10 loc_sym/exec2 module/lunk spreadrc/dir6/1.0 -append/1.4 load/11 loc_sym/exec3 module/meta spreadrc/dir7/1.0 -append/1.5 load/12 loc_sym/getvers1 module/relpath spreadrc/dir8/1.0 -append/1.6 load/13 loc_sym/getvers2 module/unk symlink/0.9 -append/1.7 load/14 loc_sym/getvers3 modvar/modfile symlink/1(@) -append/1.8 load/15 loc_sym/getvers4 modvar/submodfile symlink/1.2(default:new) -append/2.0 load/16 loc_sym/getvers5 prepend/0.1 symlink/bar(@) -append/2.1 load/17 loc_sym/getvers6 prepend/0.2 symlink2/1.0 -append/2.2 load/18 loc_sym/getvers7 prepend/0.3 symlink2/2.0 -append/2.3 load/19 loc_sym/getvers8 prepend/0.4 system/1.0 -append/2.4 load/20 loc_sym/getvers9 prepend/0.5 system/2.0 -append/4.0 load/21 loc_sym/getvers10 prepend/1.0 test/1.0 -append/4.1 load/22 loc_sym/versinf1 prepend/1.1 test/1.2 -append/5.0 load/23 loc_sym/versinf2 prepend/1.3 test/2.0 -append/6.0 load/24 loc_sym/versinf3 prepend/1.4 tr2_loc/(trreg) -append/7.0 load/25 loc_sym/versinf4 prepend/1.5 tr2_loc/al1(tr2unstable:@) -append/8.0 load/26 loc_sym/versinf5 prepend/1.6 tr2_loc/al2(tr2bar:@) -averssort/1(@) load/27 loc_sym/versinf6 prepend/1.7 tr2_loc/al3(default:tr2exp:trreg:@) -averssort/1.2.4(@) load/28 loc_sym/versinf7 prepend/1.8 tr2_loc/al4(@) -averssort/1.10(@) load/29 loc_sym/version1 prepend/1.9 tr2_loc/al5(default:trreg:@) -bad/after(good) load/30 loc_sym/version2 prepend/1.10 tr_loc/al1(tr2unstable:trunstable:@) -bad/before load/all(default) loc_sym/version3 prepend/2.0 tr_loc/al2(default:tr2bar:tr2exp:trbar:trreg:@) -bad2/body loc_def/default loc_sym/version4 prepend/2.1 tr_loc/al3(trexp:@) -bad2/proc loc_def/truedef loc_sym/version5 prepend/2.2 tr_loc/al4(@) -break/1.0 loc_dv1/1.0 loc_sym/version6 prepend/2.3 tr_loc/al5(@) -break/2.0 loc_dv1/2.0 loc_sym/version7 prepend/2.4 trace/all_off -break/3.0 loc_dv2/1.0(default) loc_sym/version8 prepend/3.0 trace/all_on -break/4.0 loc_dv2/2.0 loc_sym/version9 prepend/3.1 uname/cache -break/5.0 loc_dv3/1.0 loc_sym/version10 prepend/4.0 uname/domain -break/6.0 loc_dv3/2.0 loc_sym/version11 prepend/8.0 uname/machine -chdir/1.0 loc_dv4/1.0 loc_sym/version12 prereq/full uname/nodename -chdir/2.0 loc_dv6/1.0 loc_sym/version13 prereq/fullpath uname/release -chdir/3.0 loc_dv6/2.0/1.0 loc_sym/version14 prereq/module uname/sysname -chdir/4.0 loc_dv7/1.0 loc_sym/version15 prereq/orlist uname/unk -coll/a loc_dv7/2.0/(default) loc_sym/version16 prereq/relpath uname/version -coll/b loc_dv7/2.0/1.0 loc_sym/version17 puts/1 unsetenv/0.6 -coll/c loc_dv7/3.0 loc_sym/version18 puts/2 unsetenv/0.8 -coll/d loc_dv8/1.0 loc_sym/version19 puts/3 unsetenv/0.9 -conflict/full loc_dv8/2.0 loc_sym/version20 puts/4 unsetenv/1.0 -conflict/fullpath loc_dv9/1.0(default) loc_sym/version21 puts/5 use/1.0(default) -conflict/module loc_dv9/2.0 loc_sym/version22 puts/6 use/2.0 -conflict/relpath loc_dvv1/1.0(default) loc_sym/version23 puts/7 use/2.1 -continue/1.0 loc_dvv1/2.0 loc_sym/version24 puts/8 use/2.2 -continue/2.0 loc_fq/1.0 loc_sym/version25 puts/9 use/3.0 -continue/3.0 loc_rc1/1.0(foo) loc_sym/version26 recurs/modA use/3.1 -continue/4.0 loc_rc1/2.0 loc_tr/(reg) recurs/modB use/3.2 -continue/5.0 loc_rc2/1.0(bar:blah:foo) loc_tr/1.0(cur:stable) remove/0.3 use/4.0 -continue/6.0 loc_rc2/2.0 loc_tr/2.0(next:tr2unstable:trunstable:unstable) remove/0.4 use/4.1 -dirmodalias(@) loc_rc3/1.0(default) loc_tr/3.0(bar:default:exp:foo:reg:tr2bar:tr2exp:trbar:trexp:trreg) remove/0.5 user/adv -dirmodalias/1.0 loc_rc3/2.0(cur:stable) loc_tr/al1(unstable:@) remove/1.0 user/advanced -dirmodvirt loc_rc3/3.0(chk:exp:new:test) loc_tr/al2(bar:default:exp:reg:trexp:@) remove/1.3 user/exp -dirmodvirt/1.0 loc_rc4/1.0 loc_tr/al3(default:exp:reg:@) remove/1.4 user/expert -empty/1.0 loc_rc4/2.0(default) loc_tr/al4(default:reg:@) remove/1.5 user/nov -eschars/1.0 loc_rc4/3.0 loc_virt1/1.0 remove/1.6 user/novice -exit/1.0 loc_rc5/1.0 loc_virt1/2.0 remove/1.7 user/undef -exit/2.0 loc_rc5/2.0 loc_virt1/3.0 remove/1.8 verbose/msg -exit/3.0 loc_rc6/0.9 loc_virt1/4.0 remove/2.0 verbose/off -exit/4.0 loc_rc6/1(@) loc_virt2/1.0 remove/2.3 verbose/on -function/1.0 loc_rc6/1.2(default:new) loc_virt2/2.0 remove/2.4 verbose/undef -function/2.0 loc_rc6/bar(@) log/badfac remove/3.0 versions/1.1 -getenv/0.6 loc_rc7/0.9 log/err_both_1 remove/3.1 versions/1.2 -getenv/1.0 loc_rc7/1(@) log/err_both_2 remove/4.0 versions/1.3 -help/2.0 loc_rc7/1.2 log/err_file remove/4.1 verssort/1 -info/command loc_rc7/bar(@) log/err_syslog remove/4.2 verssort/1.2.1 -info/commandexp loc_rc8/0.9(@) modbad/append-path remove/5.0 verssort/1.2.4 -info/isavail loc_rc8/1.0 modbad/autoinit remove/8.0 verssort/1.8-2015-12-01 -info/isloaded loc_rc010/2.0 modbad/clear setenv/0.6 verssort/1.8-2016-02-01 -info/issaved loc_rcv1/1(@) modbad/config setenv/0.7.1 verssort/1.10 -info/isused loc_rcv1/1.1 modbad/edit setenv/0.7.2 whatis/lines -info/loaded loc_rcv1/1.2(default:new) modbad/empty setenv/0.8 whatis/multiple -info/mode1 loc_rcv1/2.0 modbad/foo setenv/1.0 whatis/none -info/mode2 loc_rcv1/bar(@) modbad/help source/0.9 whatis/single -info/mode3 loc_rcv2/1.2 modbad/info-loaded source/1.0 whatis/string -info/mode4 loc_rcv2/1.5 modbad/is-avail source/1.1 x-resource/1 +alias/1.0 info/shells loc_sym/alias3 modbad/paths spread/4.0 +alias/2.0 info/shellsexp loc_sym/alias4 modbad/prepend-path spread/5.0 +alias/3.0 info/specified(foo) loc_sym/alias5 modbad/remove-path spread/6.0 +append/0.1 info/type loc_sym/alias6 modbad/sh-to-mod spread/7.0 +append/0.2 info/user loc_sym/alias7 module/2.0 spread/8.0 +append/0.3 info/userexp loc_sym/alias8 module/bad spreadrc/dir1/1.0 +append/0.4 inforc/1.0 loc_sym/alias9 module/empty spreadrc/dir2/1.0 +append/0.5 inforc/2.0(bar:default:spider) loc_sym/alias10 module/err spreadrc/dir3/1.0 +append/1.0 inforc/foo(@) loc_sym/alias11 module/lbad spreadrc/dir4/1.0 +append/1.1 load/00 loc_sym/exec1 module/lerr spreadrc/dir5/1.0 +append/1.3 load/10 loc_sym/exec2 module/lunk spreadrc/dir6/1.0 +append/1.4 load/11 loc_sym/exec3 module/meta spreadrc/dir7/1.0 +append/1.5 load/12 loc_sym/getvers1 module/relpath spreadrc/dir8/1.0 +append/1.6 load/13 loc_sym/getvers2 module/unk symlink/0.9 +append/1.7 load/14 loc_sym/getvers3 modvar/modfile symlink/1(@) +append/1.8 load/15 loc_sym/getvers4 modvar/submodfile symlink/1.2(default:new) +append/2.0 load/16 loc_sym/getvers5 prepend/0.1 symlink/bar(@) +append/2.1 load/17 loc_sym/getvers6 prepend/0.2 symlink2/1.0 +append/2.2 load/18 loc_sym/getvers7 prepend/0.3 symlink2/2.0 +append/2.3 load/19 loc_sym/getvers8 prepend/0.4 system/1.0 +append/2.4 load/20 loc_sym/getvers9 prepend/0.5 system/2.0 +append/4.0 load/21 loc_sym/getvers10 prepend/1.0 test/1.0 +append/4.1 load/22 loc_sym/versinf1 prepend/1.1 test/1.2 +append/5.0 load/23 loc_sym/versinf2 prepend/1.3 test/2.0 +append/6.0 load/24 loc_sym/versinf3 prepend/1.4 tr2_loc/(trreg) +append/7.0 load/25 loc_sym/versinf4 prepend/1.5 tr2_loc/al1(tr2unstable:@) +append/8.0 load/26 loc_sym/versinf5 prepend/1.6 tr2_loc/al2(tr2bar:@) +averssort/1(@) load/27 loc_sym/versinf6 prepend/1.7 tr2_loc/al3(default:tr2exp:trreg:@) +averssort/1.2.4(@) load/28 loc_sym/versinf7 prepend/1.8 tr2_loc/al4(@) +averssort/1.10(@) load/29 loc_sym/version1 prepend/1.9 tr2_loc/al5(default:trreg:@) +bad/after(good) load/30 loc_sym/version2 prepend/1.10 tr_loc/al1(tr2unstable:trunstable:@) +bad/before load/all(default) loc_sym/version3 prepend/2.0 tr_loc/al2(default:tr2bar:tr2exp:trbar:trreg:@) +bad2/body loc_def/default loc_sym/version4 prepend/2.1 tr_loc/al3(trexp:@) +bad2/proc loc_def/truedef loc_sym/version5 prepend/2.2 tr_loc/al4(@) +break/1.0 loc_dv1/1.0 loc_sym/version6 prepend/2.3 tr_loc/al5(@) +break/2.0 loc_dv1/2.0 loc_sym/version7 prepend/2.4 trace/all_off +break/3.0 loc_dv2/1.0(default) loc_sym/version8 prepend/3.0 trace/all_on +break/4.0 loc_dv2/2.0 loc_sym/version9 prepend/3.1 uname/cache +break/5.0 loc_dv3/1.0 loc_sym/version10 prepend/4.0 uname/domain +break/6.0 loc_dv3/2.0 loc_sym/version11 prepend/8.0 uname/machine +chdir/1.0 loc_dv4/1.0 loc_sym/version12 prereq/full uname/nodename +chdir/2.0 loc_dv6/1.0 loc_sym/version13 prereq/fullpath uname/release +chdir/3.0 loc_dv6/2.0/1.0 loc_sym/version14 prereq/module uname/sysname +chdir/4.0 loc_dv7/1.0 loc_sym/version15 prereq/orlist uname/unk +coll/a loc_dv7/2.0/(default) loc_sym/version16 prereq/relpath uname/version +coll/b loc_dv7/2.0/1.0 loc_sym/version17 puts/1 unsetenv/0.6 +coll/c loc_dv7/3.0 loc_sym/version18 puts/2 unsetenv/0.8 +coll/d loc_dv8/1.0 loc_sym/version19 puts/3 unsetenv/0.9 +conflict/full loc_dv8/2.0 loc_sym/version20 puts/4 unsetenv/1.0 +conflict/fullpath loc_dv9/1.0(default) loc_sym/version21 puts/5 use/1.0(default) +conflict/module loc_dv9/2.0 loc_sym/version22 puts/6 use/2.0 +conflict/relpath loc_dvv1/1.0(default) loc_sym/version23 puts/7 use/2.1 +continue/1.0 loc_dvv1/2.0 loc_sym/version24 puts/8 use/2.2 +continue/2.0 loc_fq/1.0 loc_sym/version25 puts/9 use/3.0 +continue/3.0 loc_rc1/1.0(foo) loc_sym/version26 recurs/modA use/3.1 +continue/4.0 loc_rc1/2.0 loc_tr/(reg) recurs/modB use/3.2 +continue/5.0 loc_rc2/1.0(bar:blah:foo) loc_tr/1.0(cur:stable) remove/0.3 use/4.0 +continue/6.0 loc_rc2/2.0 loc_tr/2.0(next:tr2unstable:trunstable:unstable) remove/0.4 use/4.1 +dirmodalias(@) loc_rc3/1.0(default) loc_tr/3.0(bar:default:exp:foo:reg:tr2bar:tr2exp:trbar:trexp:trreg) remove/0.5 user/adv +dirmodalias/1.0 loc_rc3/2.0(cur:stable) loc_tr/al1(unstable:@) remove/1.0 user/advanced +dirmodvirt loc_rc3/3.0(chk:exp:new:test) loc_tr/al2(bar:default:exp:reg:trexp:@) remove/1.3 user/exp +dirmodvirt/1.0 loc_rc4/1.0 loc_tr/al3(default:exp:reg:@) remove/1.4 user/expert +empty/1.0 loc_rc4/2.0(default) loc_tr/al4(default:reg:@) remove/1.5 user/nov +eschars/1.0 loc_rc4/3.0 loc_virt1/1.0 remove/1.6 user/novice +exit/1.0 loc_rc5/1.0 loc_virt1/2.0 remove/1.7 user/undef +exit/2.0 loc_rc5/2.0 loc_virt1/3.0 remove/1.8 verbose/msg +exit/3.0 loc_rc6/0.9 loc_virt1/4.0 remove/2.0 verbose/off +exit/4.0 loc_rc6/1(@) loc_virt2/1.0 remove/2.3 verbose/on +function/1.0 loc_rc6/1.2(default:new) loc_virt2/2.0 remove/2.4 verbose/undef +function/2.0 loc_rc6/bar(@) log/badfac remove/3.0 versions/1.1 +getenv/0.6 loc_rc7/0.9 log/err_both_1 remove/3.1 versions/1.2 +getenv/1.0 loc_rc7/1(@) log/err_both_2 remove/4.0 versions/1.3 +help/2.0 loc_rc7/1.2 log/err_file remove/4.1 verssort/1 +info/command loc_rc7/bar(@) log/err_syslog remove/4.2 verssort/1.2.1 +info/commandexp loc_rc8/0.9(@) modbad/append-path remove/5.0 verssort/1.2.4 +info/isavail loc_rc8/1.0 modbad/autoinit remove/8.0 verssort/1.8-2015-12-01 +info/isloaded loc_rc010/2.0 modbad/clear setenv/0.6 verssort/1.8-2016-02-01 +info/issaved loc_rcv1/1(@) modbad/config setenv/0.7.1 verssort/1.10 +info/isused loc_rcv1/1.1 modbad/edit setenv/0.7.2 whatis/lines +info/loaded loc_rcv1/1.2(default:new) modbad/empty setenv/0.8 whatis/multiple +info/mode1 loc_rcv1/2.0 modbad/foo setenv/1.0 whatis/none +info/mode2 loc_rcv1/bar(@) modbad/help source/0.9 whatis/single +info/mode3 loc_rcv2/1.2 modbad/info-loaded source/1.0 whatis/string +info/mode4 loc_rcv2/1.5 modbad/is-avail source/1.1 x-resource/1 info/mode5 loc_rcv2/2.0 modbad/is-loaded source/1.2 info/mode6 loc_sym/1.0 modbad/is-saved spread/1.0 info/name loc_sym/alias1 modbad/is-used spread/2.0 info/others loc_sym/alias2 modbad/path spread/3.0 [string repeat {-} $lrep2] $modpath.2 (via use/2.0) [string repeat {-} $rrep2] -1.1/version advvers5/3.3 advvers7/8.1.2 deepvirt1/dir3/1.0(@) extdfl7/7.0 icase/isloaded restore -1.2/version advvers5/4.0 advvers7/8.2.1 deepvirt1/dir3/2.0 extdfl7/7.1 icase/load setenv/0.1 -1.3/version advvers5/4.1 advvers7/8.2.2 deepvirt1/dir4/1.0 extdfl7/8.1(@) icase/loadi source-sh/1 -advvers/1.2 advvers5/4.2 advvers7/8.3.1 deepvirt1/dir4/2.0(@) extdfl7/9.1 icase/prereq source-sh/2 -advvers/1.3 advvers5/5.0 advvers7/8.3.2 deepvirt1/dir5/1.0(default:@) extdfl7/10a icase/prereqc source-sh/3 -advvers/1.4 advvers5/5.1 advvers7/8.4.1 deepvirt1/dir5/2.0(sym) extdfl7/10foo icase/unload source-sh/4.0 -advvers/1.5 advvers5/5.2 advvers7/8.4.2 deepvirt1/dir6/1.0(sym:@) extdfl7/10g icase/z source-sh/4.1 -advvers/1.6 advvers5/5.3 advvers7/8.5.1 deepvirt1/dir6/2.0(default) extdfl7/cross(@) ICASE2/1 source-sh/4.2 -advvers/1.7 advvers5/6.0 advvers7/8.5.2 deepvirt1/dir7/(sym) extdfl8/1.3.1 iCaSe2/1 source-sh/4.3 -advvers/1.8 advvers5/6.1 advvers7/9.0 deepvirt1/dir7/1.0(@) extdfl8/1.3.7 ICASE3/1.1 source-sh/5.0 -advvers/deep/1/1.2 advvers5/6.2 advvers7/9.2(@) deepvirt1/dir7/2.0 extdfl8/1.4.5 icase3/1.2 source-sh/5.1 -advvers2/1.0 advvers5/6.3 advvers8/1 deepvirt2/dir6/1.0(sym:@) extdfl8/1.33 iCaSe3/1.3 source-sh/6.0 -advvers2/1.1 advvers5/6.4 advvers8/2 deepvirt2/dir6/2.0(default) extdflb.4.0 iCaSe3/1.4 source-sh/7.0 -advvers2/1.2 advvers5/6.5 advvers8/3 e.t.fl/1.3.1 extdflb.4.1/1 ICASE3/VERS.1 source-sh/7.1 -advvers2/1.3 advvers5/6.6 advvers9/1(default) e.t.fl/1.3.7 extdflc-4/1 ICASE3/vers.1 source-sh/7.2 -advvers2/2.0 advvers5/6.7 advvers9/2 e.t.fl/1.4.5 extdflc-5/1 info/usergroups source-sh/8.0 -advvers2/2.1 advvers5/7.0 advvers9/3 extdfl/1.0.0-alpha.1 f info/username 'sp.ce y+/0 2' -advvers2/2.2 advvers5/8.1.1 advvers10/1 extdfl/1.0.0-alpha.beta foo/0.1 load 'sp.ce y+/1.2' -advvers2/3.0 advvers5/8.1.2 advvers10/2 extdfl/1.0.0-beta foo/0.2 loc 'sp.ce y+/2.4' -advvers2/3.1 advvers5/8.2.1 advvers10/3 extdfl/1.0.2 foo/1 longerrword 'sp.ce y+/2.6' -advvers2/3.2 advvers5/8.2.2 advvers10/4 extdfl/1.1.0 foo/2 mlinmod 'sp.ce y+/2.7' -advvers2/3.3 advvers5/8.3.1 advvers10/5 extdfl/1.1.0-beta hide1/1.0 modemptyarg/aliases 'sp.ce y+/2.10' -advvers2/4.0 advvers5/8.3.2 advvers10/6 extdfl/1.2.3 hide1/2.0 modemptyarg/apropos 'space ya/1'(ns) -advvers2/4.1 advvers5/8.4.1 advvers10/7 extdfl/1.2.10 hide1/2.1 modemptyarg/avail 'space ya/2'(default) -advvers2/4.2 advvers5/8.4.2 advvers10/8 extdfl/1.3.1(default) hide1/2.2 modemptyarg/display 'space ya/al'(@) -advvers2/5.0 advvers5/8.5.1 advvers@2.1 extdfl/1.3.7 hide1/3.0 modemptyarg/list 'space yb'/(dns) -advvers2/5.1 advvers5/8.5.2 advvers@2.2 extdfl/1.4.5 hide1/3.1(default) modemptyarg/load 'space yb/1' -advvers2/5.2 advvers5/9.0 autosym1/1(default) extdfl/2.0 hide1/3.2 modemptyarg/load-any 'space yc/2' -advvers2/5.3 advvers5/9.2(@) autosym1/2 extdfl/2.0.1 hide1/4.0 modemptyarg/purge 'space yc/3' -advvers2/6.0 advvers6/1.2 autosym2/1 extdfl2/2.rc.1 hide1/5.0 modemptyarg/reload 'space yc/4' -advvers2/6.1 advvers6/1.3 autosym2/2(bar:latest) extdfl2/2.rc.2 hide2/1.0(1.2) modemptyarg/restore 'space yc/5' -advvers2/6.2 advvers6/1.4 autosym3/1(default) extdfl2/3.0.0 hide2/1.1(@) modemptyarg/save 'space yd/2.1' -advvers2/6.3 advvers6/1.5.1 autosym3/2(latest) extdfl2/3.0.2 hide2/1.5 modemptyarg/savelist 'space yd/2.2' -advvers2/6.4 advvers6/1.5.2 autosym4/1 extdfl2/3.0.15 hide3/1.0 modemptyarg/saverm 'space yd/2.10' -advvers2/6.5 advvers6/1.6 autosym4/2 extdfl2/3.1.3 hide3/al1(@) modemptyarg/saveshow 'space yd/3.0' -advvers2/6.6 advvers6/1.7 autosym4/latest(@) extdfl2/3.1.7 hide3/al2(@) modemptyarg/swap 'space yd/4.1' -advvers2/6.7 advvers6/1.8 autosym5/1 extdfl2/3.9.2 hide3/sub1/(default) modemptyarg/swap2 'space yd/5.0' -advvers2/7.0 advvers6/2.0 autosym5/2 extdfl2/3.09.3 hide3/sub1/2.0 modemptyarg/swap3 'space ye/1.0' -advvers2/8.1.1 advvers6/2.1 autosym5/default extdfl2/3.010.1 hide3/sub1/3.0 modemptyarg/test 'space ye/1.1' -advvers2/8.1.2 advvers6/3.0 autosym6/1(zzz) extdfl2/3.10.2 hide3/sub2/(sym) modemptyarg/try-load 'space ye/1.2' -advvers2/8.2.1 advvers6/3.1 autosym6/2(yyy) extdfl3/1.0 hide3/sub2/4.0(default:sym) modemptyarg/unload 'space ye/1.3' -advvers2/8.2.2 advvers6/3.2 autosym6/default(@) extdfl3/1.00(@) hide3/sub2/5.0(new) modemptyarg/unuse 'space ye/1.4' -advvers2/8.3.1 advvers7/0.9 autosym6/latest extdfl3/1.1/(1.2) hidereq/1.0 modemptyarg/use 'space ye/1.5' -advvers2/8.3.2 advvers7/1.0 autosym7/dir1/1 extdfl3/1.1/3 hidereq/1.1 modemptyarg/whatis 'space ye/1.6' -advvers2/8.4.1 advvers7/1.1 autosym7/dir1/2 extdfl3/1.3/3(@) hidereq/1.2 NaN 'space ye/1.7' -advvers2/8.4.2 advvers7/1.2 autosym7/dir2/1 extdfl3/1.3/4 hidereq/1.3 nanbar/1 'space ye/1.8' -advvers2/8.5.1 advvers7/1.3.1 autosym7/dir2/2 extdfl6/conflict hidereq/1.4 nanbar/2 'space ye/1.9' -advvers2/8.5.2 advvers7/1.3.2 autosym8/1 extdfl6/conflict2 hidereq/1.5 nanbar/nan 'space ye/2.0' -advvers3(@) advvers7/2.0 autosym8/2 extdfl6/conflicta hidereq/2.0 nanfoo/1(nan) 'space ye/2.1' -advvers4/1.1 advvers7/2.1 autosym8/3(@) extdfl6/conflicts hidereq/2.1 nocase/1(vers) 'space ye/2.2' -advvers4/1.2 advvers7/2.2 autosym9/1 extdfl6/info hidereq/2.2 nocase/alias(@) 'space ye/2.3' -advvers4/1.3 advvers7/3.0 bad3/bodyfor extdfl6/info2 hidereq/2.3 nocase/deep/(dirsym) 'space ye/2.4' -advvers4/1.4 advvers7/3.1 bad3/bodyif extdfl6/isloaded hidereq/2.4 nocase/deep/2 'space ye/2.5' -advvers4/1.5.1 advvers7/3.2 bad3/bodyproc extdfl6/isloaded2 hidereq/2.5 nocase/deep/3 'space ye/2.6' -advvers4/1.5.2 advvers7/3.3 bad3/bodysource extdfl6/load hidereq/2.6 nocase/ialias(@) 'space ye/2.7' -advvers4/1.6 advvers7/4.0 bad3/bodywhile extdfl6/load2 hidereq/3.0 nocase/regular 'space ye/2.8' -advvers4/1.7 advvers7/4.1 bad3/proc2 extdfl6/load3 hidereq/4.0 nocase/virt 'space ye/2.9' -advvers4/1.8 advvers7/4.2 bad3/proc3 extdfl6/prereq hidereq/4.1 nocase2 spacen/1(w s) -advvers4/2.0 advvers7/5.0 bad3/procproc extdfl6/prereq2 hidereq/4.2 nocase3(@) 'spacen/2 s' -advvers4/2.1 advvers7/5.1 bad3/procsource extdfl6/prereqc hidereq/4.3 nocase5(@) spacen/al(@) -advvers5/0.9 advvers7/5.2 badrc3/1 extdfl6/prereqi hidereq/4.4 nocase6(@) spacen/vns -advvers5/1.0 advvers7/5.3 bar/0.1 extdfl6/prereqi2 ICASE/1 nocase7/conflictim1 'spacen/vw s' -advvers5/1.1 advvers7/6.0 bar/0.2 extdfl6/unload IcAsE/1 nocase7/conflictim2 spacenb/(dw s) -advvers5/1.2 advvers7/6.1 bar/1 extdfl6/unload2 iCaSe/1 nocase7/prereqim1 spacenb/1 -advvers5/1.3.1 advvers7/6.2 bar/2 extdfl7/1.1 icASE/1 nocase7/prereqim2 spacenc/2 -advvers5/1.3.2 advvers7/6.3 baz/1 extdfl7/1.3(@) icase/1 nocase8(@) spacenc/3 -advvers5/2.0 advvers7/6.4 baz/2 extdfl7/2.1 icase/conflict nocase9(@) spacenc/4 -advvers5/2.1 advvers7/6.5 clear/1 extdfl7/2.10(3.0) icase/conflicta putsvar t -advvers5/2.2 advvers7/6.6 clear/2 extdfl7/3.1 icase/conflictp quar unloc -advvers5/3.0 advvers7/6.7 clear/3 extdfl7/4.1 icase/conflicts quux/1(default:sym) veryveryveryveryveryveryveryverylong/name(sym) +1.1/version advvers5/3.3 advvers7/8.1.2 deepvirt1/dir3/1.0(@) extdfl7/7.0 icase/isloaded restore +1.2/version advvers5/4.0 advvers7/8.2.1 deepvirt1/dir3/2.0 extdfl7/7.1 icase/load setenv/0.1 +1.3/version advvers5/4.1 advvers7/8.2.2 deepvirt1/dir4/1.0 extdfl7/8.1(@) icase/loadi source-sh/1 +advvers/1.2 advvers5/4.2 advvers7/8.3.1 deepvirt1/dir4/2.0(@) extdfl7/9.1 icase/prereq source-sh/2 +advvers/1.3 advvers5/5.0 advvers7/8.3.2 deepvirt1/dir5/1.0(default:@) extdfl7/10a icase/prereqc source-sh/3 +advvers/1.4 advvers5/5.1 advvers7/8.4.1 deepvirt1/dir5/2.0(sym) extdfl7/10foo icase/unload source-sh/4.0 +advvers/1.5 advvers5/5.2 advvers7/8.4.2 deepvirt1/dir6/1.0(sym:@) extdfl7/10g icase/z source-sh/4.1 +advvers/1.6 advvers5/5.3 advvers7/8.5.1 deepvirt1/dir6/2.0(default) extdfl7/cross(@) ICASE2/1 source-sh/4.2 +advvers/1.7 advvers5/6.0 advvers7/8.5.2 deepvirt1/dir7/(sym) extdfl8/1.3.1 iCaSe2/1 source-sh/4.3 +advvers/1.8 advvers5/6.1 advvers7/9.0 deepvirt1/dir7/1.0(@) extdfl8/1.3.7 ICASE3/1.1 source-sh/5.0 +advvers/deep/1/1.2 advvers5/6.2 advvers7/9.2(@) deepvirt1/dir7/2.0 extdfl8/1.4.5 icase3/1.2 source-sh/5.1 +advvers2/1.0 advvers5/6.3 advvers8/1 deepvirt2/dir6/1.0(sym:@) extdfl8/1.33 iCaSe3/1.3 source-sh/6.0 +advvers2/1.1 advvers5/6.4 advvers8/2 deepvirt2/dir6/2.0(default) extdflb.4.0 iCaSe3/1.4 source-sh/7.0 +advvers2/1.2 advvers5/6.5 advvers8/3 e.t.fl/1.3.1 extdflb.4.1/1 ICASE3/VERS.1 source-sh/7.1 +advvers2/1.3 advvers5/6.6 advvers9/1(default) e.t.fl/1.3.7 extdflc-4/1 ICASE3/vers.1 source-sh/7.2 +advvers2/2.0 advvers5/6.7 advvers9/2 e.t.fl/1.4.5 extdflc-5/1 info/usergroups source-sh/8.0 +advvers2/2.1 advvers5/7.0 advvers9/3 extdfl/1.0.0-alpha.1 f info/username 'sp.ce y+/0 2' +advvers2/2.2 advvers5/8.1.1 advvers10/1 extdfl/1.0.0-alpha.beta foo/0.1 load 'sp.ce y+/1.2' +advvers2/3.0 advvers5/8.1.2 advvers10/2 extdfl/1.0.0-beta foo/0.2 loc 'sp.ce y+/2.4' +advvers2/3.1 advvers5/8.2.1 advvers10/3 extdfl/1.0.2 foo/1 longerrword 'sp.ce y+/2.6' +advvers2/3.2 advvers5/8.2.2 advvers10/4 extdfl/1.1.0 foo/2 mlinmod 'sp.ce y+/2.7' +advvers2/3.3 advvers5/8.3.1 advvers10/5 extdfl/1.1.0-beta hide1/1.0 modemptyarg/aliases 'sp.ce y+/2.10' +advvers2/4.0 advvers5/8.3.2 advvers10/6 extdfl/1.2.3 hide1/2.0 modemptyarg/apropos 'space ya/1'(ns) +advvers2/4.1 advvers5/8.4.1 advvers10/7 extdfl/1.2.10 hide1/2.1 modemptyarg/avail 'space ya/2'(default) +advvers2/4.2 advvers5/8.4.2 advvers10/8 extdfl/1.3.1(default) hide1/2.2 modemptyarg/display 'space ya/al'(@) +advvers2/5.0 advvers5/8.5.1 advvers@2.1 extdfl/1.3.7 hide1/3.0 modemptyarg/list 'space yb'/(dns) +advvers2/5.1 advvers5/8.5.2 advvers@2.2 extdfl/1.4.5 hide1/3.1(default) modemptyarg/load 'space yb/1' +advvers2/5.2 advvers5/9.0 autosym1/1(default) extdfl/2.0 hide1/3.2 modemptyarg/load-any 'space yc/2' +advvers2/5.3 advvers5/9.2(@) autosym1/2 extdfl/2.0.1 hide1/4.0 modemptyarg/purge 'space yc/3' +advvers2/6.0 advvers6/1.2 autosym2/1 extdfl2/2.rc.1 hide1/5.0 modemptyarg/reload 'space yc/4' +advvers2/6.1 advvers6/1.3 autosym2/2(bar:latest) extdfl2/2.rc.2 hide2/1.0(1.2) modemptyarg/restore 'space yc/5' +advvers2/6.2 advvers6/1.4 autosym3/1(default) extdfl2/3.0.0 hide2/1.1(@) modemptyarg/save 'space yd/2.1' +advvers2/6.3 advvers6/1.5.1 autosym3/2(latest) extdfl2/3.0.2 hide2/1.5 modemptyarg/savelist 'space yd/2.2' +advvers2/6.4 advvers6/1.5.2 autosym4/1 extdfl2/3.0.15 hide3/1.0 modemptyarg/saverm 'space yd/2.10' +advvers2/6.5 advvers6/1.6 autosym4/2 extdfl2/3.1.3 hide3/al1(@) modemptyarg/saveshow 'space yd/3.0' +advvers2/6.6 advvers6/1.7 autosym4/latest(@) extdfl2/3.1.7 hide3/al2(@) modemptyarg/swap 'space yd/4.1' +advvers2/6.7 advvers6/1.8 autosym5/1 extdfl2/3.9.2 hide3/sub1/(default) modemptyarg/swap2 'space yd/5.0' +advvers2/7.0 advvers6/2.0 autosym5/2 extdfl2/3.09.3 hide3/sub1/2.0 modemptyarg/swap3 'space ye/1.0' +advvers2/8.1.1 advvers6/2.1 autosym5/default extdfl2/3.010.1 hide3/sub1/3.0 modemptyarg/test 'space ye/1.1' +advvers2/8.1.2 advvers6/3.0 autosym6/1(zzz) extdfl2/3.10.2 hide3/sub2/(sym) modemptyarg/try-load 'space ye/1.2' +advvers2/8.2.1 advvers6/3.1 autosym6/2(yyy) extdfl3/1.0 hide3/sub2/4.0(default:sym) modemptyarg/unload 'space ye/1.3' +advvers2/8.2.2 advvers6/3.2 autosym6/default(@) extdfl3/1.00(@) hide3/sub2/5.0(new) modemptyarg/unuse 'space ye/1.4' +advvers2/8.3.1 advvers7/0.9 autosym6/latest extdfl3/1.1/(1.2) hidereq/1.0 modemptyarg/use 'space ye/1.5' +advvers2/8.3.2 advvers7/1.0 autosym7/dir1/1 extdfl3/1.1/3 hidereq/1.1 modemptyarg/whatis 'space ye/1.6' +advvers2/8.4.1 advvers7/1.1 autosym7/dir1/2 extdfl3/1.3/3(@) hidereq/1.2 NaN 'space ye/1.7' +advvers2/8.4.2 advvers7/1.2 autosym7/dir2/1 extdfl3/1.3/4 hidereq/1.3 nanbar/1 'space ye/1.8' +advvers2/8.5.1 advvers7/1.3.1 autosym7/dir2/2 extdfl6/conflict hidereq/1.4 nanbar/2 'space ye/1.9' +advvers2/8.5.2 advvers7/1.3.2 autosym8/1 extdfl6/conflict2 hidereq/1.5 nanbar/nan 'space ye/2.0' +advvers3(@) advvers7/2.0 autosym8/2 extdfl6/conflicta hidereq/2.0 nanfoo/1(nan) 'space ye/2.1' +advvers4/1.1 advvers7/2.1 autosym8/3(@) extdfl6/conflicts hidereq/2.1 nocase/1(vers) 'space ye/2.2' +advvers4/1.2 advvers7/2.2 autosym9/1 extdfl6/info hidereq/2.2 nocase/alias(@) 'space ye/2.3' +advvers4/1.3 advvers7/3.0 bad3/bodyfor extdfl6/info2 hidereq/2.3 nocase/deep/(dirsym) 'space ye/2.4' +advvers4/1.4 advvers7/3.1 bad3/bodyif extdfl6/isloaded hidereq/2.4 nocase/deep/2 'space ye/2.5' +advvers4/1.5.1 advvers7/3.2 bad3/bodyproc extdfl6/isloaded2 hidereq/2.5 nocase/deep/3 'space ye/2.6' +advvers4/1.5.2 advvers7/3.3 bad3/bodysource extdfl6/load hidereq/2.6 nocase/ialias(@) 'space ye/2.7' +advvers4/1.6 advvers7/4.0 bad3/bodywhile extdfl6/load2 hidereq/3.0 nocase/regular 'space ye/2.8' +advvers4/1.7 advvers7/4.1 bad3/proc2 extdfl6/load3 hidereq/4.0 nocase/virt 'space ye/2.9' +advvers4/1.8 advvers7/4.2 bad3/proc3 extdfl6/prereq hidereq/4.1 nocase2 spacen/1(w s) +advvers4/2.0 advvers7/5.0 bad3/procproc extdfl6/prereq2 hidereq/4.2 nocase3(@) 'spacen/2 s' +advvers4/2.1 advvers7/5.1 bad3/procsource extdfl6/prereqc hidereq/4.3 nocase5(@) spacen/al(@) +advvers5/0.9 advvers7/5.2 badrc3/1 extdfl6/prereqi hidereq/4.4 nocase6(@) spacen/vns +advvers5/1.0 advvers7/5.3 bar/0.1 extdfl6/prereqi2 ICASE/1 nocase7/conflictim1 'spacen/vw s' +advvers5/1.1 advvers7/6.0 bar/0.2 extdfl6/unload IcAsE/1 nocase7/conflictim2 spacenb/(dw s) +advvers5/1.2 advvers7/6.1 bar/1 extdfl6/unload2 iCaSe/1 nocase7/prereqim1 spacenb/1 +advvers5/1.3.1 advvers7/6.2 bar/2 extdfl7/1.1 icASE/1 nocase7/prereqim2 spacenc/2 +advvers5/1.3.2 advvers7/6.3 baz/1 extdfl7/1.3(@) icase/1 nocase8(@) spacenc/3 +advvers5/2.0 advvers7/6.4 baz/2 extdfl7/2.1 icase/conflict nocase9(@) spacenc/4 +advvers5/2.1 advvers7/6.5 clear/1 extdfl7/2.10(3.0) icase/conflicta putsvar t +advvers5/2.2 advvers7/6.6 clear/2 extdfl7/3.1 icase/conflictp quar unloc +advvers5/3.0 advvers7/6.7 clear/3 extdfl7/4.1 icase/conflicts quux/1(default:sym) veryveryveryveryveryveryveryverylong/name(sym) advvers5/3.1 advvers7/7.0 deepvirt1/dir1/1.0(@) extdfl7/5.1 icase/info qux/1 advvers5/3.2 advvers7/8.1.1 deepvirt1/dir2/1.0 extdfl7/6.1 icase/infoloaded qux/2 " @@ -2129,93 +2129,93 @@ set ts_sh_all_json "{\"$modpath\": { }}" set ts_sh_small "- $modpath.deep - -badmodvers/dir1/2.0 -badmodvers/foo -dir2/1.0(d1) -dir2/3.0(d3) -modalias/1.0(@) -modalias/3.0 -modalias/dir1/1.0 -modalias/dir1/2.0(@) -modalias/dir2/2.0 -modalias/dir2/3.0(@) -moddalias(@) -moddalias/dir1/1 -moddef/dir2/1.0(default) -moddef/dir2/2.0 -modload/dir2/1.0(md1) -modload/dir2/3.0(md3) -modsym/dir1/1.0(3.0) -modsym/dir2/2.0(3.0) -modtr/3.0(bar:exp:foo:reg:tr2bar:trbar) -modtr/al1(unstable:@) -modtr/al4(default:reg:@) -modtr/al5(fld:@) -modtr/al6(sfld:@) -modtr/dir1/1.0(cur:stable) -modtr/dir2/2.0(next:tr2unstable:trunstable:unstable) -modtr/dir3/al2(bar:default:exp:reg:tr2bar:trbar:@) -modtr/dir3/al3(default:exp:reg:@) -modtr/dir4/(default:fld:reg:trfld:trreg) -modtr/dir4/al7(madj:@) -modtr/dir4/al8(dadj:@) -modtr/dir4/mod4.0 -modtr/dir5/subdir/(dadj:sfld) -modtr/dir5/subdir/mod5.0(madj) -modulerc/dir1/(default) -modulerc/dir1/1.0(default) -modulerc/dir1/2.0 -modulerc/dir2/(foo) -modulerc/dir2/1.0/(default:foo) -modulerc/dir2/1.0/rc1(default:foo) -modulerc/dir2/1.0/rc2 -modulerc/dir2/2.0 -modulerc/dir2/3.0 -modvirt/1.0(@) -modvirt/3.0 -modvirt/dir0/sub1/4.0 -modvirt/dir0/sub1/5.0(@) -modvirt/dir0/sub1/6.0 -modvirt/dir1/1.0 -modvirt/dir1/2.0(@) -modvirt/dir2/2.0 -modvirt/dir2/3.0(@) -plain/dir1/1.0 -plain/dir1/2.0 -plain/dir2/1.0 -plain/dir2/2.0 -tr2mod/al1(tr2unstable:@) -tr2mod/al5(tr2fld:@) -tr2mod/dir3/al2(tr2bar:@) -trmod/(trreg) -trmod/al1(tr2unstable:trunstable:@) -trmod/al5(default:trfld:trreg:@) -trmod/dir3/(tr2fld) -trmod/dir3/al2(tr2bar:trbar:@) -version/dir1/(default) -version/dir1/1.0(default) -version/dir1/2.0 -version/dir2/1.0 -version/dir2/2.0/(default) -version/dir2/2.0/rc1(default) -version/dir2/2.0/rc2 -version/dir2/3.0 " +badmodvers/dir1/2.0 +badmodvers/foo +dir2/1.0(d1) +dir2/3.0(d3) +modalias/1.0(@) +modalias/3.0 +modalias/dir1/1.0 +modalias/dir1/2.0(@) +modalias/dir2/2.0 +modalias/dir2/3.0(@) +moddalias(@) +moddalias/dir1/1 +moddef/dir2/1.0(default) +moddef/dir2/2.0 +modload/dir2/1.0(md1) +modload/dir2/3.0(md3) +modsym/dir1/1.0(3.0) +modsym/dir2/2.0(3.0) +modtr/3.0(bar:exp:foo:reg:tr2bar:trbar) +modtr/al1(unstable:@) +modtr/al4(default:reg:@) +modtr/al5(fld:@) +modtr/al6(sfld:@) +modtr/dir1/1.0(cur:stable) +modtr/dir2/2.0(next:tr2unstable:trunstable:unstable) +modtr/dir3/al2(bar:default:exp:reg:tr2bar:trbar:@) +modtr/dir3/al3(default:exp:reg:@) +modtr/dir4/(default:fld:reg:trfld:trreg) +modtr/dir4/al7(madj:@) +modtr/dir4/al8(dadj:@) +modtr/dir4/mod4.0 +modtr/dir5/subdir/(dadj:sfld) +modtr/dir5/subdir/mod5.0(madj) +modulerc/dir1/(default) +modulerc/dir1/1.0(default) +modulerc/dir1/2.0 +modulerc/dir2/(foo) +modulerc/dir2/1.0/(default:foo) +modulerc/dir2/1.0/rc1(default:foo) +modulerc/dir2/1.0/rc2 +modulerc/dir2/2.0 +modulerc/dir2/3.0 +modvirt/1.0(@) +modvirt/3.0 +modvirt/dir0/sub1/4.0 +modvirt/dir0/sub1/5.0(@) +modvirt/dir0/sub1/6.0 +modvirt/dir1/1.0 +modvirt/dir1/2.0(@) +modvirt/dir2/2.0 +modvirt/dir2/3.0(@) +plain/dir1/1.0 +plain/dir1/2.0 +plain/dir2/1.0 +plain/dir2/2.0 +tr2mod/al1(tr2unstable:@) +tr2mod/al5(tr2fld:@) +tr2mod/dir3/al2(tr2bar:@) +trmod/(trreg) +trmod/al1(tr2unstable:trunstable:@) +trmod/al5(default:trfld:trreg:@) +trmod/dir3/(tr2fld) +trmod/dir3/al2(tr2bar:trbar:@) +version/dir1/(default) +version/dir1/1.0(default) +version/dir1/2.0 +version/dir2/1.0 +version/dir2/2.0/(default) +version/dir2/2.0/rc1(default) +version/dir2/2.0/rc2 +version/dir2/3.0" set len [string length $modpath.deep] set lrep [expr {($test_cols_othos - $len - 2)/2}] set rrep [expr {$test_cols_othos - $len - 2 - $lrep}] set ts_sh_noflag_othos "[string repeat {-} $lrep] $modpath.deep [string repeat {-} $rrep] -badmodvers/dir1/2.0 modload/dir2/3.0 modtr/dir4/mod4.0 modvirt/dir0/sub1/5.0 trmod/al5 -badmodvers/foo modsym/dir1/1.0 modtr/dir5/subdir/ modvirt/dir0/sub1/6.0 trmod/dir3/ -dir2/1.0 modsym/dir2/2.0 modtr/dir5/subdir/mod5.0 modvirt/dir1/1.0 trmod/dir3/al2 -dir2/3.0 modtr/3.0 modulerc/dir1/ modvirt/dir1/2.0 version/dir1/ -modalias/1.0 modtr/al1 modulerc/dir1/1.0 modvirt/dir2/2.0 version/dir1/1.0 -modalias/3.0 modtr/al4 modulerc/dir1/2.0 modvirt/dir2/3.0 version/dir1/2.0 -modalias/dir1/1.0 modtr/al5 modulerc/dir2/ plain/dir1/1.0 version/dir2/1.0 -modalias/dir1/2.0 modtr/al6 modulerc/dir2/1.0/ plain/dir1/2.0 version/dir2/2.0/ -modalias/dir2/2.0 modtr/dir1/1.0 modulerc/dir2/1.0/rc1 plain/dir2/1.0 version/dir2/2.0/rc1 -modalias/dir2/3.0 modtr/dir2/2.0 modulerc/dir2/1.0/rc2 plain/dir2/2.0 version/dir2/2.0/rc2 -moddalias modtr/dir3/al2 modulerc/dir2/2.0 tr2mod/al1 version/dir2/3.0 +badmodvers/dir1/2.0 modload/dir2/3.0 modtr/dir4/mod4.0 modvirt/dir0/sub1/5.0 trmod/al5 +badmodvers/foo modsym/dir1/1.0 modtr/dir5/subdir/ modvirt/dir0/sub1/6.0 trmod/dir3/ +dir2/1.0 modsym/dir2/2.0 modtr/dir5/subdir/mod5.0 modvirt/dir1/1.0 trmod/dir3/al2 +dir2/3.0 modtr/3.0 modulerc/dir1/ modvirt/dir1/2.0 version/dir1/ +modalias/1.0 modtr/al1 modulerc/dir1/1.0 modvirt/dir2/2.0 version/dir1/1.0 +modalias/3.0 modtr/al4 modulerc/dir1/2.0 modvirt/dir2/3.0 version/dir1/2.0 +modalias/dir1/1.0 modtr/al5 modulerc/dir2/ plain/dir1/1.0 version/dir2/1.0 +modalias/dir1/2.0 modtr/al6 modulerc/dir2/1.0/ plain/dir1/2.0 version/dir2/2.0/ +modalias/dir2/2.0 modtr/dir1/1.0 modulerc/dir2/1.0/rc1 plain/dir2/1.0 version/dir2/2.0/rc1 +modalias/dir2/3.0 modtr/dir2/2.0 modulerc/dir2/1.0/rc2 plain/dir2/2.0 version/dir2/2.0/rc2 +moddalias modtr/dir3/al2 modulerc/dir2/2.0 tr2mod/al1 version/dir2/3.0 moddalias/dir1/1 modtr/dir3/al3 modulerc/dir2/3.0 tr2mod/al5 moddef/dir2/1.0 modtr/dir4/ modvirt/1.0 tr2mod/dir3/al2 moddef/dir2/2.0 modtr/dir4/al7 modvirt/3.0 trmod/ diff --git a/testsuite/modules.92-spider/100-spider-tags.exp b/testsuite/modules.92-spider/100-spider-tags.exp index 05a84d6e8..604b19952 100644 --- a/testsuite/modules.92-spider/100-spider-tags.exp +++ b/testsuite/modules.92-spider/100-spider-tags.exp @@ -31,10 +31,10 @@ setenv_var MODULES_TAG_ABBREV {auto-loaded=aL:loaded=L:hidden=H:hidden-loaded=H: # test with regular modulefile set tserr "$modlin $mpre $modlin -tag/1.0 +tag/1.0 Key: - =forbidden " + =forbidden" testouterr_cmd_re sh {spider tag/1.0} OK $tserr # terse output @@ -57,10 +57,10 @@ skip_if_quick_mode setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0] set tserr "$modlin $mpre $modlin -tag/1.0 +tag/1.0 Key: - =loaded =forbidden " + =loaded =forbidden" testouterr_cmd_re sh {spider tag/1.0} OK $tserr set tserr "{\"$mp\": { @@ -70,10 +70,10 @@ testouterr_cmd sh {spider -j tag/1.0} OK $tserr setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0] [list tag/1.0] set tserr "$modlin $mpre $modlin -tag/1.0 +tag/1.0 Key: - =auto-loaded =forbidden " + =auto-loaded =forbidden" testouterr_cmd_re sh {spider tag/1.0} OK $tserr set tserr "{\"$mp\": { @@ -84,10 +84,10 @@ testouterr_cmd sh {spider -j tag/1.0} OK $tserr # test with virtual module unsetenv_loaded_module set tserr "$modlin $mpre $modlin -tag/2.0 +tag/2.0 Key: - =forbidden " + =forbidden" testouterr_cmd_re sh {spider tag/2.0} OK $tserr set tserr "{\"$mp\": { @@ -97,10 +97,10 @@ testouterr_cmd sh {spider -j tag/2.0} OK $tserr setenv_loaded_module [list tag/2.0] [list $mp/tag/1.0] set tserr "$modlin $mpre $modlin -tag/2.0 +tag/2.0 Key: - =loaded =forbidden " + =loaded =forbidden" testouterr_cmd_re sh {spider tag/2.0} OK $tserr set tserr "{\"$mp\": { @@ -110,10 +110,10 @@ testouterr_cmd sh {spider -j tag/2.0} OK $tserr setenv_loaded_module [list tag/2.0] [list $mp/tag/1.0] [list tag/2.0] set tserr "$modlin $mpre $modlin -tag/2.0 +tag/2.0 Key: - =auto-loaded =forbidden " + =auto-loaded =forbidden" testouterr_cmd_re sh {spider tag/2.0} OK $tserr set tserr "{\"$mp\": { @@ -124,10 +124,10 @@ testouterr_cmd sh {spider -j tag/2.0} OK $tserr # test with module alias unsetenv_loaded_module set tserr "$modlin $mpre $modlin -tag/3.0\\(@\\) +tag/3.0\\(@\\) Key: -\\(@\\)=module-alias =forbidden " +\\(@\\)=module-alias =forbidden" testouterr_cmd_re sh {spider tag/3.0} OK $tserr set tserr "{\"$mp\": { @@ -138,10 +138,10 @@ testouterr_cmd sh {spider -j tag/3.0} OK $tserr setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0] setenv_var __MODULES_LMALTNAME tag/1.0&al|tag/3.0 set tserr "$modlin $mpre $modlin -tag/3.0\\(@\\) +tag/3.0\\(@\\) Key: -\\(@\\)=module-alias =forbidden " +\\(@\\)=module-alias =forbidden" testouterr_cmd_re sh {spider tag/3.0} OK $tserr set tserr "{\"$mp\": { @@ -151,10 +151,10 @@ testouterr_cmd sh {spider -j tag/3.0} OK $tserr setenv_loaded_module [list tag/1.0] [list $mp/tag/1.0] [list tag/1.0] set tserr "$modlin $mpre $modlin -tag/3.0\\(@\\) +tag/3.0\\(@\\) Key: -\\(@\\)=module-alias =forbidden " +\\(@\\)=module-alias =forbidden" testouterr_cmd_re sh {spider tag/3.0} OK $tserr set tserr "{\"$mp\": { @@ -166,15 +166,15 @@ testouterr_cmd sh {spider -j tag/3.0} OK $tserr setenv_var MODULES_TAG_ABBREV {auto-loaded=aL:loaded=L:hidden=H:hidden-loaded=Hl:forbidden=F:nearly-forbidden=nF} setenv_var TESTSUITE_MODULE_TAG_SET13 1 set tserr "$modlin $mpre $modlin -tag/5.0 " +tag/5.0" testouterr_cmd_re sh {spider tag/5.0} OK $tserr unsetenv_var TESTSUITE_MODULE_TAG_SET13 setenv_var TESTSUITE_MODULE_TAG_SET14 1 set tserr "$modlin $mpre $modlin -tag/5.0 +tag/5.0 Key: - =hidden " + =hidden" testouterr_cmd_re sh {spider tag/5.0} OK $tserr unsetenv_var TESTSUITE_MODULE_TAG_SET14