diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/sh.testcases | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/sh.testcases b/tests/sh.testcases index 88e709f87..e2a75873e 100644 --- a/tests/sh.testcases +++ b/tests/sh.testcases | |||
@@ -28,6 +28,35 @@ if false; then tr 'A-Z' 'a-z'; else echo bar4; fi <foo | |||
28 | if true || false; then echo foo; else echo bar5; fi | 28 | if true || false; then echo foo; else echo bar5; fi |
29 | if true && false; then echo bar6; else echo foo; fi | 29 | if true && false; then echo bar6; else echo foo; fi |
30 | 30 | ||
31 | # basic distinction between local and env variables | ||
32 | unset FOO | ||
33 | FOO=bar env | grep FOO | ||
34 | echo "but not here: $FOO" | ||
35 | FOO=bar | ||
36 | env | grep FOO | ||
37 | echo "yes, here: $FOO" | ||
38 | FOO= | ||
39 | echo a $FOO b | ||
40 | echo "a $FOO b" | ||
41 | |||
42 | # not quite so basic variables. Credit to Matt Kraai. | ||
43 | unset FOO | ||
44 | FOO=bar | ||
45 | export FOO | ||
46 | env | grep FOO | ||
47 | unset FOO | ||
48 | export FOO=bar | ||
49 | FOO=baz | ||
50 | env | grep FOO | ||
51 | |||
52 | # interaction between environment variables and if/then and subshells | ||
53 | FOO=default | ||
54 | if true; then FOO=new; fi | ||
55 | echo $FOO | ||
56 | FOO=default | ||
57 | (FOO=bogus) | ||
58 | echo $FOO | ||
59 | |||
31 | # make sure we can duplicate file descriptors properly | 60 | # make sure we can duplicate file descriptors properly |
32 | echo replacement >foo 2>&1 | 61 | echo replacement >foo 2>&1 |
33 | cat foo | 62 | cat foo |