File: 700-module-warn.exp

package info (click to toggle)
modules 5.6.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 23,036 kB
  • sloc: exp: 79,659; sh: 6,142; tcl: 5,900; makefile: 1,492; ansic: 474; python: 265; csh: 202; perl: 47; ruby: 44; lisp: 13
file content (291 lines) | stat: -rw-r--r-- 8,620 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
##############################################################################
#   Modules Revision 3.0
#   Providing a flexible user environment
#
#   File:		modules.50-cmds/%M%
#   Revision:		%I%
#   First Edition:	2025/04/06
#   Last Mod.:		%U%, %G%
#
#   Authors:		Xavier Delaruelle, xavier.delaruelle@cea.fr
#
#   Description:	Testuite testsequence
#   Command:		load, unload, display, help, show, test,
#                   refresh, whatis
#   Modulefiles:    warn
#   Sub-Command:
#
#   Comment:	%C{
#         Test module-warn command
#		}C%
#
##############################################################################

set mp $modpath.4
setenv_var MODULEPATH $mp

setenv_var MODULES_TAG_ABBREV auto-loaded=aL:loaded=L:hidden=H:hidden-loaded=H:forbidden=F:nearly-forbidden=nF:sticky=S:super-sticky=sS:keep-loaded=kL:warning=W

setenv_var TESTSUITE_WARN rc_simple
set ans [list]
lappend ans [list set _LMFILES_ $mp/warn/1]
lappend ans [list set LOADEDMODULES warn/1]
lappend ans [list set __MODULES_LMTAG warn/1&warning]
set tserr [msg_load {warn/1 <W>} "$warn_msgs: Warning text printed"] 
testouterr_cmd bash {load warn/1} $ans $tserr

setenv_var TESTSUITE_WARN mf_simple
testouterr_cmd bash {load warn/1} $ans $tserr

skip_if_quick_mode


# display

setenv_var TESTSUITE_WARN rc_simple
set tserr "$modlin
$modpathre.4/warn/1:

module-whatis\twarn/1
module-help\thelp
$warn_msgs: Warning text printed
$modlin"
testouterr_cmd_re bash {display warn/1} OK $tserr

setenv_var TESTSUITE_WARN mf_simple
set tserr "$modlin
$modpathre.4/warn/1:

module-whatis\twarn/1
module-help\thelp
module-warn\t--message {Warning text printed} warn/1
$warn_msgs: Warning text printed
$modlin"
testouterr_cmd_re bash {display warn/1} OK $tserr


# help

setenv_var TESTSUITE_WARN rc_simple
set tserr "$modlin
Module Specific Help for $modpathre.4/warn/1:

help
$warn_msgs: Warning text printed
$modlin"
testouterr_cmd_re bash {help warn/1} OK $tserr

setenv_var TESTSUITE_WARN mf_simple
set tserr "$modlin
Module Specific Help for $modpathre.4/warn/1:

help
$warn_msgs: Warning text printed
$modlin"
testouterr_cmd_re bash {help warn/1} OK $tserr


# test

setenv_var TESTSUITE_WARN rc_simple
set tserr "$modlin
Module Specific Test for $modpathre.4/warn/1:

$warn_msgs: Unable to find ModulesTest in $modpathre.4/warn/1.
$warn_msgs: Warning text printed
$modlin"
testouterr_cmd_re bash {test warn/1} OK $tserr

setenv_var TESTSUITE_WARN mf_simple
set tserr "$modlin
Module Specific Test for $modpathre.4/warn/1:

$warn_msgs: Unable to find ModulesTest in $modpathre.4/warn/1.
$warn_msgs: Warning text printed
$modlin"
testouterr_cmd_re bash {test warn/1} OK $tserr


# whatis

setenv_var TESTSUITE_WARN rc_simple
set tserr "$modlin $modpathre.4 $modlin
\\s+warn/1: warn/1"
testouterr_cmd_re bash {whatis warn/1} OK $tserr

setenv_var TESTSUITE_WARN mf_simple
testouterr_cmd_re bash {whatis warn/1} OK $tserr


# unload

setenv_loaded_module [list warn/1] [list $mp/warn/1]
setenv_var __MODULES_LMTAG warn/1&warning

set ans [list]
lappend ans [list unset _LMFILES_]
lappend ans [list unset LOADEDMODULES]
lappend ans [list unset __MODULES_LMTAG]
testouterr_cmd bash {unload warn/1} $ans {}


# refresh

setenv_var __MODULES_LMREFRESH warn/1

set ans [list]
testouterr_cmd bash {refresh} $ans {}

unsetenv_loaded_module
unsetenv_var __MODULES_LMTAG
unsetenv_var __MODULES_LMREFRESH


# other warning in modulefile

setenv_var TESTSUITE_WARN rc_other_warning
set ans [list]
lappend ans [list set _LMFILES_ $mp/warn/1]
lappend ans [list set LOADEDMODULES warn/1]
lappend ans [list set __MODULES_LMTAG warn/1&warning]
set tserr [msg_load {warn/1 <W>} "$warn_msgs: other warning message" "$warn_msgs: Warning text printed"] 
testouterr_cmd bash {load warn/1} $ans $tserr

setenv_var TESTSUITE_WARN mf_other_warning
testouterr_cmd bash {load warn/1} $ans $tserr


# mix with forbidden tag

setenv_var TESTSUITE_WARN rc_with_forbidden

set tserr [err_accessdenied warn/1]
testouterr_cmd bash {load warn/1} ERR $tserr

testouterr_cmd bash {display warn/1} ERR $tserr


# mix with nearly-forbidden tag

setenv_var TESTSUITE_WARN rc_with_nearly_forbidden
set tomorrow [clock format [expr {[clock seconds]+86400}] -format %Y-%m-%d]

set ans [list]
lappend ans [list set _LMFILES_ $mp/warn/1]
lappend ans [list set LOADEDMODULES warn/1]
lappend ans [list set __MODULES_LMTAG warn/1&nearly-forbidden&warning]
set tserr [msg_load {warn/1 <nF:W>} [err_accessnearlydenied $tomorrow] "$warn_msgs: Warning text printed"] 
testouterr_cmd bash {load warn/1} $ans $tserr

set tserr "$modlin
$modpathre.4/warn/1:

module-whatis\twarn/1
module-help\thelp
[err_accessnearlydenied $tomorrow]
$warn_msgs: Warning text printed
$modlin"
testouterr_cmd_re bash {display warn/1} OK $tserr


# bad usages

setenv_var TESTSUITE_WARN rc_bad1

set ans [list]
lappend ans [list set _LMFILES_ $mp/warn/1]
lappend ans [list set LOADEDMODULES warn/1]
lappend ans [list ERR]
set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 20}]
set tserr [escre [msg_moderr {No message specified in argument} {module-warn<EXM>} $mp/warn/.modulerc $line_num {  }]]
testouterr_cmd_re bash {load warn/1} $ans $tserr

setenv_var TESTSUITE_WARN rc_bad2

set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 23}]
set tserr [escre [msg_moderr {No message specified in argument} {module-warn warn/1<EXM>} $mp/warn/.modulerc $line_num {  }]]
testouterr_cmd_re bash {load warn/1} $ans $tserr

setenv_var TESTSUITE_WARN rc_bad3

set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 26}]
set tserr [escre [msg_moderr {No module specified in argument} {module-warn --message text<EXM>} $mp/warn/.modulerc $line_num {  }]]
testouterr_cmd_re bash {load warn/1} $ans $tserr

setenv_var TESTSUITE_WARN rc_bad4

set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 2 : 29}]
set tserr [escre [msg_moderr {Invalid option '--unk'} {module-warn --message text --unk warn/1<EXM>} $mp/warn/.modulerc $line_num {  }]]
testouterr_cmd_re bash {load warn/1} $ans $tserr

setenv_var TESTSUITE_WARN mf_bad1
set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 4 : 17}]
set tserr [escre [msg_load warn/1 [msg_moderr {No message specified in argument} {module-warn<EXM>} $mp/warn/1 $line_num]]]
testouterr_cmd_re bash {load warn/1} ERR $tserr

setenv_var TESTSUITE_WARN mf_bad2
set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 4 : 20}]
set tserr [escre [msg_load warn/1 [msg_moderr {No message specified in argument} {module-warn warn/1<EXM>} $mp/warn/1 $line_num]]]
testouterr_cmd_re bash {load warn/1} ERR $tserr

setenv_var TESTSUITE_WARN mf_bad3
set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 4 : 23}]
set tserr [escre [msg_load warn/1 [msg_moderr {No module specified in argument} {module-warn --message text<EXM>} $mp/warn/1 $line_num]]]
testouterr_cmd_re bash {load warn/1} ERR $tserr

setenv_var TESTSUITE_WARN mf_bad4
set line_num [expr {[cmpversion $tclsh_version 8.6] == -1 ? 4 : 26}]
set tserr [escre [msg_load warn/1 [msg_moderr {Invalid option '--unk'} {module-warn --message text --unk warn/1<EXM>} $mp/warn/1 $line_num]]]
testouterr_cmd_re bash {load warn/1} ERR $tserr


# user/time selection

setenv_var TESTSUITE_WARN user1

set ans [list]
lappend ans [list set _LMFILES_ $mp/warn/1]
lappend ans [list set LOADEDMODULES warn/1]
lappend ans [list set __MODULES_LMTAG warn/1&warning]
set tserr [msg_load {warn/1 <W>} "$warn_msgs: text"] 
testouterr_cmd bash {load warn/1} $ans $tserr

setenv_var TESTSUITE_WARN time2
testouterr_cmd bash {load warn/1} $ans $tserr

setenv_var TESTSUITE_WARN user2

set ans [list]
lappend ans [list set _LMFILES_ $mp/warn/1]
lappend ans [list set LOADEDMODULES warn/1]
testouterr_cmd bash {load warn/1} $ans {}

setenv_var TESTSUITE_WARN time1
testouterr_cmd bash {load warn/1} $ans {}


# long text

setenv_var TESTSUITE_WARN long_text

set ans [list]
lappend ans [list set _LMFILES_ $mp/warn/1]
lappend ans [list set LOADEDMODULES warn/1]
lappend ans [list set __MODULES_LMTAG warn/1&warning]
set tserr [msg_load {warn/1 <W>} "$warn_msgs: long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long"] 
testouterr_cmd bash {load warn/1} $ans $tserr


# text with newline

setenv_var TESTSUITE_WARN new_line

set tserr [msg_load {warn/1 <W>} "$warn_msgs: long long long long\nlong long long"] 
testouterr_cmd bash {load warn/1} $ans $tserr


#
#  Cleanup
#

reset_test_env