1147495Sgad#-
2147495Sgad# Copyright (c) 2005  - Garance Alistair Drosehn <gad@FreeBSD.org>.
3147495Sgad# All rights reserved.
4147495Sgad#
5147495Sgad#  Redistribution and use in source and binary forms, with or without
6147495Sgad#  modification, are permitted provided that the following conditions
7147495Sgad#  are met:
8147495Sgad#  1. Redistributions of source code must retain the above copyright
9147495Sgad#     notice, this list of conditions and the following disclaimer.
10147495Sgad#  2. Redistributions in binary form must reproduce the above copyright
11147495Sgad#     notice, this list of conditions and the following disclaimer in the
12147495Sgad#     documentation and/or other materials provided with the distribution.
13147495Sgad#
14147495Sgad#  THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15147495Sgad#  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16147495Sgad#  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17147495Sgad#  ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18147495Sgad#  FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19147495Sgad#  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20147495Sgad#  OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21147495Sgad#  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22147495Sgad#  LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23147495Sgad#  OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24147495Sgad#  SUCH DAMAGE.
25147495Sgad#
26147495Sgad# $FreeBSD$
27147495Sgad#
28147495Sgad
29147495Sgadtestpgm=/usr/bin/env
30147495Sgadgblenv=PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
31147495Sgadgblenv=TESTVAR=Global-TV-Value
32147495Sgadgblenv=OUTSIDEVAR=OutsideValue
33147495Sgad
34147495Sgad#  These first two tests are testing how well the regression-script itself is
35147495Sgad#  handling environment-variables, as much as testing the `env' program.
36147495Sgad[test]
37147495Sgad   sb_args:/bin/sh
38147495Sgad   setenv:TESTVAR=a1a
39147495Sgad   script:/bin/echo A-${TESTVAR}-Z
40147495Sgad   stdout:A-a1a-Z
41147495Sgad[run]
42147495Sgad[test]
43147495Sgad   sb_args:-S /bin/sh
44147495Sgad   script:/bin/echo A-${TESTVAR}-Z
45147495Sgad   stdout:A-Global-TV-Value-Z
46147495Sgad[run]
47147495Sgad
48147495Sgad[test]
49147495Sgad   sb_args:-S TESTVAR=bb22bb /bin/sh
50147495Sgad   script:/bin/echo A-${TESTVAR}-Z
51147495Sgad   stdout:A-bb22bb-Z
52147495Sgad[run]
53147495Sgad[test]
54147495Sgad   sb_args:-S\_TESTVAR=ab22ab\_/bin/sh
55147495Sgad   script:/bin/echo A-${TESTVAR}-Z
56147495Sgad   stdout:A-ab22ab-Z
57147495Sgad[run]
58147495Sgad[test]
59147495Sgad   sb_args:-S\_TESTVAR="abc\_33\_abc"\_/bin/sh
60147495Sgad   script:/bin/echo A-${TESTVAR}-Z
61147495Sgad   stdout:A-abc 33 abc-Z
62147495Sgad[run]
63147495Sgad
64147495Sgad#   First we see that 'sh' can not be found in /usr/sbin, and then
65147495Sgad#   we show that it can be found without changing PATH by using -P
66147495Sgad#   And then show that it can be NOT found by using -P...
67147495Sgad[test]
68147495Sgad   sb_args:-S sh
69147495Sgad   setenv:PATH=/usr/sbin
70147495Sgad   script:/bin/echo A-${PATH}-Z
71147495Sgad   $?:127
72147495Sgad   stderr:[%-testpgm.basename-%]: sh: No such file or directory
73147495Sgad[run]
74147495Sgad[test]
75147495Sgad   sb_args:-S -P/bin sh
76147495Sgad   setenv:PATH=/usr/sbin
77147495Sgad   script:/bin/echo A-${PATH}-Z
78147495Sgad   stdout:A-/usr/sbin-Z
79147495Sgad[run]
80147495Sgad[test]
81147495Sgad   sb_args:-S -P/sbin:/usr/sbin sh
82147495Sgad   script:/bin/echo A-${PATH}-Z
83147495Sgad   $?:127
84147495Sgad   stderr:[%-testpgm.basename-%]: sh: No such file or directory
85147495Sgad[run]
86147495Sgad
87147495Sgad#  Hmm.  I wonder if -P should always set an 'ENV_PATH' variable?
88147495Sgad[test]
89147495Sgad   sb_args:-S -P/bin:/usr/bin:${PATH} ENV_PATH=/bin:/usr/bin:${PATH} sh
90147495Sgad   setenv:PATH=/usr/sbin
91147495Sgad   script:/bin/echo A-${PATH}-Z
92147495Sgad   script:/bin/echo B-${ENV_PATH}-Y
93147495Sgad   stdout:A-/usr/sbin-Z
94147495Sgad   stdout:B-/bin:/usr/bin:/usr/sbin-Y
95147495Sgad[run]
96147495Sgad
97147495Sgad#   Show that the comment-characters are working, both for where they are
98147495Sgad#   recognized and where they are ignored.
99147495Sgad[test]
100147495Sgad   sb_args:-STESTVAR="abc44abc" /bin/sh # This is some arbitrary text
101147495Sgad   user_args:us11er us22er
102147495Sgad   script:/bin/echo A-${TESTVAR}-Z B-$1-Y
103147495Sgad   stdout:A-abc44abc-Z B-us11er-Y
104147495Sgad[run]
105147495Sgad[test]
106147495Sgad   sb_args:-STESTVAR="abc55abc" /bin/sh \c This is some arbitrary text
107147495Sgad   user_args:us11er us22er
108147495Sgad   script:/bin/echo A-${TESTVAR}-Z B-$1-Y
109147495Sgad   stdout:A-abc55abc-Z B-us11er-Y
110147495Sgad[run]
111147495Sgad[test]
112147495Sgad   sb_args:-STESTVAR=abc#44#abc /bin/sh
113147495Sgad   user_args:us11er us22er
114147495Sgad   script:/bin/echo A-${TESTVAR}-Z B-$1-Y
115147495Sgad   stdout:A-abc#44#abc-Z B-us11er-Y
116147495Sgad[run]
117147495Sgad[test]
118147495Sgad   sb_args:-STESTVAR='abc\c55\cabc' /bin/sh
119147495Sgad   user_args:us11er us22er
120147495Sgad   script:/bin/echo A-${TESTVAR}-Z B-$1-Y
121147495Sgad   stdout:A-abc\c55\cabc-Z B-us11er-Y
122147495Sgad[run]
123147495Sgad
124147495Sgad#   Test various aspects of quoted strings
125147495Sgad[test]
126147495Sgad   sb_args:-STESTVAR="abc'def" /bin/sh
127147495Sgad   script:/bin/echo A-${TESTVAR}-Z
128147495Sgad   stdout:A-abc'def-Z
129147495Sgad[run]
130147495Sgad[test]
131147495Sgad   sb_args:-STESTVAR='abc"def' /bin/sh
132147495Sgad   script:/bin/echo A-${TESTVAR}-Z
133147495Sgad   stdout:A-abc"def-Z
134147495Sgad[run]
135147495Sgad[test]
136147495Sgad   sb_args:-STESTVAR='ab\'cd\'ef' /bin/sh
137147495Sgad   script:/bin/echo A-${TESTVAR}-Z
138147495Sgad   stdout:A-ab'cd'ef-Z
139147495Sgad[run]
140147495Sgad[test]
141147495Sgad   sb_args:-STESTVAR='abc\"def\'ghi' /bin/sh
142147495Sgad   script:/bin/echo A-${TESTVAR}-Z
143147495Sgad   stdout:A-abc\"def'ghi-Z
144147495Sgad[run]
145147495Sgad[test]
146147495Sgad   sb_args:-STESTVAR='abc''def''ghi' /bin/sh
147147495Sgad   script:/bin/echo A-${TESTVAR}-Z
148147495Sgad   stdout:A-abcdefghi-Z
149147495Sgad[run]
150147495Sgad[test]
151147495Sgad   sb_args:-STESTVAR='abc\ndef\nghi' /bin/sh
152147495Sgad   script:/bin/echo "A-${TESTVAR}-Z"
153147495Sgad   stdout:A-abc\ndef\nghi-Z
154147495Sgad[run]
155147495Sgad[test]
156147495Sgad   sb_args:-STESTVAR="abc\ndef\nghi" /bin/sh
157147495Sgad   script:/bin/echo "A-${TESTVAR}-Z"
158147495Sgad   stdout:A-abc
159147495Sgad   stdout:def
160147495Sgad   stdout:ghi-Z
161147495Sgad[run]
162147495Sgad[test]
163147495Sgad   sb_args:-STESTVAR=""\_OTHERVAR=""\_/bin/sh
164147495Sgad   script:/bin/echo A-${TESTVAR}-M-${OTHERVAR}-Z
165147495Sgad   stdout:A--M--Z
166147495Sgad[run]
167147495Sgad[test]
168147495Sgad   sb_args:-STESTVAR=no-term-"-dq... /bin/sh
169147495Sgad   script:/bin/echo "A-${TESTVAR}-Z"
170147495Sgad   $?:1
171147495Sgad   stderr:[%-testpgm.basename-%]: No terminating quote for string: TESTVAR=no-term-"-dq... /bin/sh
172147495Sgad[run]
173147495Sgad[test]
174147495Sgad   sb_args:-STESTVAR=no-term-'-sq... /bin/sh
175147495Sgad   script:/bin/echo "A-${TESTVAR}-Z"
176147495Sgad   $?:1
177147495Sgad   stderr:[%-testpgm.basename-%]: No terminating quote for string: TESTVAR=no-term-'-sq... /bin/sh
178147495Sgad[run]
179147495Sgad
180147495Sgad# Some tests of variable-substitution.
181147495Sgad[test]
182147495Sgad   sb_args:-S TESTVAR=${TEST7} /bin/sh
183147495Sgad   setenv:TEST7=a23456a
184147495Sgad   script:/bin/echo "A-${TESTVAR}-Z"
185147495Sgad   stdout:A-a23456a-Z
186147495Sgad[run]
187147495Sgad[test]
188147495Sgad   sb_args:-S TESTVAR=${TEST8} /bin/sh
189147495Sgad   setenv:TEST8=b234567b
190147495Sgad   script:/bin/echo "A-${TESTVAR}-Z"
191147495Sgad   stdout:A-b234567b-Z
192147495Sgad[run]
193147495Sgad[test]
194147495Sgad   sb_args:-S TESTVAR=${TEST9} /bin/sh
195147495Sgad   setenv:TEST9=c2345678c
196147495Sgad   script:/bin/echo "A-${TESTVAR}-Z"
197147495Sgad   stdout:A-c2345678c-Z
198147495Sgad[run]
199147495Sgad[test]
200147495Sgad   sb_args:-S TESTVAR=${TEST8}+${TEST9}+${TEST10} /bin/sh
201147495Sgad   setenv:TEST8=a234567z
202147495Sgad   setenv:TEST9=a2345678z
203147495Sgad   setenv:TEST10=a23456789z
204147495Sgad   script:/bin/echo "A-${TESTVAR}-Z"
205147495Sgad   stdout:A-a234567z+a2345678z+a23456789z-Z
206147495Sgad[run]
207147495Sgad[test]
208147495Sgad   sb_args:-S TESTVAR=$* /bin/sh
209147495Sgad   script:/bin/echo "A-${TESTVAR}-Z"
210147495Sgad   $?:1
211147495Sgad   stderr:[%-testpgm.basename-%]: Only ${VARNAME} expansion is supported, error at: $* /bin/sh
212147495Sgad[run]
213147495Sgad[test]
214147495Sgad   sb_args:-S TESTVAR=/usr/bin:$PATH /bin/sh
215147495Sgad   script:/bin/echo "A-${TESTVAR}-Z"
216147495Sgad   $?:1
217147495Sgad   stderr:[%-testpgm.basename-%]: Only ${VARNAME} expansion is supported, error at: $PATH /bin/sh
218147495Sgad[run]
219147495Sgad
220147522Sgad#  For a short time `env' was changed to recognize 'something=value' as a
221147522Sgad#  valid utility name if 'something' begins with a '/'.  However, that was
222147522Sgad#  a bad idea, since variable-names with a '/' -- while rare -- are still
223147522Sgad#  more blessed by standards than a filename with an '=' in it.  So, this
224147522Sgad#  test goes back to expecting an error...
225147495Sgad[test]
226147495Sgad   symlink:/bin/echo /tmp/envtest=echo
227147495Sgad   sb_args:-S/tmp/envtest=echo false
228147522Sgad   $?:1
229147495Sgad[run]
230147495Sgad
231147495Sgad# Show interactions between -i (clear environment), and ${VAR} substitution,
232147495Sgad# and that -i will clear the environment at the right point in processing...
233147495Sgad[test]
234147495Sgad   sb_args:-iS PATH=/bin:/usr/bin:/Not WASPATH=${PATH} WASOUT=${OUTSIDEVAR} TESTVAR=SbValue WASTEST=${TESTVAR} /bin/sh
235147495Sgad   script:/bin/echo "=== set ==="
236147495Sgad   script:# drop some environment variables that 'sh' itself sets, and
237147495Sgad   script:# then have 'set' print out all remaining environment variables.
238279722Sjilles   script:# (can't unset OPTIND/PWD, so we use grep to get rid of those)
239279722Sjilles   script:unset -v IFS PS1 PS2 PS4 PPID
240279722Sjilles   script:set | grep -Ev '^(OPTIND|PWD)=' | sort
241147495Sgad   stdout:=== set ===
242147495Sgad   stdout:PATH=/bin:/usr/bin:/Not
243147495Sgad   stdout:TESTVAR=SbValue
244147495Sgad   stdout:WASOUT=OutsideValue
245147495Sgad   stdout:WASPATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
246147495Sgad   stdout:WASTEST=Global-TV-Value
247147495Sgad[run]
248147522Sgad
249147522Sgad# Had a bug with ${VAR} expansion if the character before the $ was
250147522Sgad# one of the argument-separator characters.  So the first of the
251147522Sgad# following worked, but the second one failed:
252147522Sgad[test]
253147522Sgad   sb_args:-Secho Testv:${TESTV} Scriptname:
254147522Sgad   setenv:TESTV=ab/ba
255147522Sgad   stdout:Testv:ab/ba Scriptname: [%-script.pathname-%]
256147522Sgad[run]
257147522Sgad[test]
258147522Sgad   sb_args:-Secho testV: ${TESTV} scriptname:
259147522Sgad   setenv:TESTV=cd/dc
260147522Sgad   stdout:testV: cd/dc scriptname: [%-script.pathname-%]
261147522Sgad[run]
262147522Sgad
263147522Sgad#  A "nothing variable" inside a quoted string should produce a zero-length
264147522Sgad#  argument, but if it's outside of quotes then it should result in, well,
265147522Sgad#  nothing.  Note the tricks we play with [%-script.pathname-%] so that we
266147522Sgad#  can supply parameters *to* the script, even though the kernel is always
267147522Sgad#  going to stick the script name on as ARG[2] when invoking `env'.
268147522Sgad[test]
269147522Sgad   sb_args:-S/bin/sh [%-script.pathname-%] userDQ: "" SQ: '' scriptname:
270147522Sgad   setenv:TNADA=
271147522Sgad   script:printf "list_args.sh with \$# = $#\n"
272147522Sgad   script:# Process all parameters.
273147522Sgad   script:N=0
274147522Sgad   script:while test $# != 0 ; do
275147522Sgad   script:    N=$(($N+1))
276147522Sgad   script:    printf "....\$$N = [%3d] '$1'\n" ${#1}
277147522Sgad   script:    shift
278147522Sgad   script:done
279147522Sgad   stdout:list_args.sh with $# = 6
280147522Sgad   stdout:....$1 = [  7] 'userDQ:'
281147522Sgad   stdout:....$2 = [  0] ''
282147522Sgad   stdout:....$3 = [  3] 'SQ:'
283147522Sgad   stdout:....$4 = [  0] ''
284147522Sgad   stdout:....$5 = [ 11] 'scriptname:'
285147522Sgad   stdout:....$6 = [ 16] '/tmp/env-regress'
286147522Sgad[run]
287147522Sgad[test]
288147522Sgad   sb_args:-S/bin/sh [%-script.pathname-%] userB "${TNADA}" scriptname:
289147522Sgad   setenv:TNADA=
290147522Sgad   script:printf "list_args.sh with \$# = $#\n"
291147522Sgad   script:# Process all parameters.
292147522Sgad   script:N=0
293147522Sgad   script:while test $# != 0 ; do
294147522Sgad   script:    N=$(($N+1))
295147522Sgad   script:    printf "....\$$N = [%3d] '$1'\n" ${#1}
296147522Sgad   script:    shift
297147522Sgad   script:done
298147522Sgad   stdout:list_args.sh with $# = 4
299147522Sgad   stdout:....$1 = [  5] 'userB'
300147522Sgad   stdout:....$2 = [  0] ''
301147522Sgad   stdout:....$3 = [ 11] 'scriptname:'
302147522Sgad   stdout:....$4 = [ 16] '/tmp/env-regress'
303147522Sgad[run]
304147522Sgad[test]
305147522Sgad   sb_args:-S/bin/sh [%-script.pathname-%] userA ${TNADA} scriptname:
306147522Sgad   setenv:TNADA=
307147522Sgad   script:printf "list_args.sh with \$# = $#\n"
308147522Sgad   script:# Process all parameters.
309147522Sgad   script:N=0
310147522Sgad   script:while test $# != 0 ; do
311147522Sgad   script:    N=$(($N+1))
312147522Sgad   script:    printf "....\$$N = [%3d] '$1'\n" ${#1}
313147522Sgad   script:    shift
314147522Sgad   script:done
315147522Sgad   stdout:list_args.sh with $# = 3
316147522Sgad   stdout:....$1 = [  5] 'userA'
317148024Sgad   stdout:....$2 = [ 11] 'scriptname:'
318147522Sgad   stdout:....$3 = [ 16] '[%-script.pathname-%]'
319147522Sgad[run]
320148024Sgad[test]
321148024Sgad   sb_args:-S/bin/sh [%-script.pathname-%] ${A} ${NB} ${C} ${ND} ${NE} ${F} S:
322148024Sgad   setenv:A=A_ThisisAlongstring_A1
323148024Sgad   setenv:NB=
324148024Sgad   setenv:C=C_ThisisAlongstring_C1
325148024Sgad   setenv:ND=
326148024Sgad   setenv:NE=
327148024Sgad   setenv:F=F_ThisisAlongstring_F1
328148024Sgad   script:printf "list_args.sh with \$# = $#\n"
329148024Sgad   script:# Process all parameters.
330148024Sgad   script:N=0
331148024Sgad   script:while test $# != 0 ; do
332148024Sgad   script:    N=$(($N+1))
333148024Sgad   script:    printf "....\$$N = [%3d] '$1'\n" ${#1}
334148024Sgad   script:    shift
335148024Sgad   script:done
336148024Sgad   stdout:list_args.sh with $# = 5
337148024Sgad   stdout:....$1 = [ 22] 'A_ThisisAlongstring_A1'
338148024Sgad   stdout:....$2 = [ 22] 'C_ThisisAlongstring_C1'
339148024Sgad   stdout:....$3 = [ 22] 'F_ThisisAlongstring_F1'
340148024Sgad   stdout:....$4 = [  2] 'S:'
341148024Sgad   stdout:....$5 = [ 16] '/tmp/env-regress'
342148024Sgad[run]
343148024Sgad[test]
344148024Sgad   sb_args:-S/bin/sh [%-script.pathname-%] ${A} ${NB} "${NB}" ${NB} ${C} "${ND}" ${NE} ${F} S:
345148024Sgad   setenv:A=A_ThisisAlongstring_A1
346148024Sgad   setenv:NB=
347148024Sgad   setenv:C=C_ThisisAlongstring_C1
348148024Sgad   setenv:ND=
349148024Sgad   setenv:NE=
350148024Sgad   setenv:F=F_ThisisAlongstring_F1
351148024Sgad   script:printf "list_args.sh with \$# = $#\n"
352148024Sgad   script:# Process all parameters.
353148024Sgad   script:N=0
354148024Sgad   script:while test $# != 0 ; do
355148024Sgad   script:    N=$(($N+1))
356148024Sgad   script:    printf "....\$$N = [%3d] '$1'\n" ${#1}
357148024Sgad   script:    shift
358148024Sgad   script:done
359148024Sgad   stdout:list_args.sh with $# = 7
360148024Sgad   stdout:....$1 = [ 22] 'A_ThisisAlongstring_A1'
361148024Sgad   stdout:....$2 = [  0] ''
362148024Sgad   stdout:....$3 = [ 22] 'C_ThisisAlongstring_C1'
363148024Sgad   stdout:....$4 = [  0] ''
364148024Sgad   stdout:....$5 = [ 22] 'F_ThisisAlongstring_F1'
365148024Sgad   stdout:....$6 = [  2] 'S:'
366148024Sgad   stdout:....$7 = [ 16] '/tmp/env-regress'
367148024Sgad[run]
368148024Sgad
369148024Sgad[test]
370148024Sgad   sb_args:-S/bin/echo ${A} ${B} ${C} ${D} ScriptName:
371148024Sgad   setenv:A=A_ThisisAlongstring_A1
372148024Sgad   setenv:B=B_ThisisAlongstring_B1
373148024Sgad   setenv:C=C_ThisisAlongstring_C1
374148024Sgad   setenv:D=D_ThisisAlongstring_D1
375148024Sgad   stdout:A_ThisisAlongstring_A1 B_ThisisAlongstring_B1 C_ThisisAlongstring_C1 D_ThisisAlongstring_D1 ScriptName: [%-script.pathname-%]
376148024Sgad[run]
377148024Sgad[test]
378148024Sgad   sb_args:-S/bin/echo ${A} "${B}" ${C} "${D}" ScriptName:
379148024Sgad   setenv:A=A_ThisisAlongstring_A1
380148024Sgad   setenv:B=B_ThisisAlongstring_B1
381148024Sgad   setenv:C=C_ThisisAlongstring_C1
382148024Sgad   setenv:D=D_ThisisAlongstring_D1
383148024Sgad   stdout:A_ThisisAlongstring_A1 B_ThisisAlongstring_B1 C_ThisisAlongstring_C1 D_ThisisAlongstring_D1 ScriptName: [%-script.pathname-%]
384148024Sgad[run]
385279779Sjilles
386279779Sjilles[test]
387279779Sjilles   sb_args:sh
388279779Sjilles   script:[%-testpgm.pathname-%] -S '\c' >/dev/null
389279779Sjilles[run]
390279779Sjilles[test]
391279779Sjilles   sb_args:sh
392279779Sjilles   script:[%-testpgm.pathname-%] -S'\c' >/dev/null
393279779Sjilles[run]
394279779Sjilles[test]
395279779Sjilles   sb_args:sh
396279779Sjilles   script:[%-testpgm.pathname-%] -u foo -S '\c' >/dev/null
397279779Sjilles[run]
398279779Sjilles[test]
399279779Sjilles   sb_args:sh
400279779Sjilles   script:[%-testpgm.pathname-%] -u foo -S'\c' >/dev/null
401279779Sjilles[run]
402279779Sjilles[test]
403279779Sjilles   sb_args:sh
404279779Sjilles   script:[%-testpgm.pathname-%] -S '-u bar \c' >/dev/null
405279779Sjilles[run]
406279779Sjilles[test]
407279779Sjilles   sb_args:sh
408279779Sjilles   script:[%-testpgm.pathname-%] -S'-u bar \c' >/dev/null
409279779Sjilles[run]
410279779Sjilles[test]
411279779Sjilles   sb_args:sh
412279779Sjilles   script:[%-testpgm.pathname-%] -u foo -S '-u bar \c' >/dev/null
413279779Sjilles[run]
414279779Sjilles[test]
415279779Sjilles   sb_args:sh
416279779Sjilles   script:[%-testpgm.pathname-%] -u foo -S'-u bar \c' >/dev/null
417279779Sjilles[run]
418