OILS / spec / redir-order.test.sh View on Github | oils.pub

71 lines, 33 significant
1## oils_failures_allowed: 0
2
3#### echo `cat OSCFLAGS` "world" > OSCFLAGS (from Alpine imap)
4
5echo hello > OSCFLAGS
6echo `cat OSCFLAGS` "world" > OSCFLAGS
7#echo $(cat OSCFLAGS) "world" > OSCFLAGS
8cat OSCFLAGS
9
10## STDOUT:
11hello world
12## END
13
14#### subshell + redirect order
15
16echo hello > OSCFLAGS
17(echo `cat OSCFLAGS` "world") > OSCFLAGS
18cat OSCFLAGS
19
20## STDOUT:
21world
22## END
23
24#### for word + redirect order
25
26echo hello > OSCFLAGS
27for x in `cat OSCFLAGS` world; do
28 echo $x
29done > OSCFLAGS
30cat OSCFLAGS
31
32## STDOUT:
33world
34## END
35
36#### case word + redirect order
37
38echo hello > OSCFLAGS
39case `cat OSCFLAGS` in
40 hello)
41 echo hello
42 ;;
43 *)
44 echo other
45 ;;
46esac > OSCFLAGS
47cat OSCFLAGS
48
49## STDOUT:
50other
51## END
52
53#### [[ + redirect order
54case $SH in dash|ash) exit ;; esac
55
56echo hello > OSCFLAGS
57
58[[ `cat OSCFLAGS` = hello ]] > OSCFLAGS
59echo status=$?
60
61# it is the empty string!
62[[ `cat OSCFLAGS` = '' ]] > OSCFLAGS
63echo status=$?
64
65## STDOUT:
66status=1
67status=0
68## END
69
70## N-I dash/ash STDOUT:
71## END