aboutsummaryrefslogtreecommitdiff
path: root/unit-tests/test/script/parser/redirect.test
blob: 3497fd9777d34070912c8a4f666bac37fec08892 (plain)
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
$* <<EOI >>EOO          # file
cmd 0<<<a 1>>>b 2>>>&c
EOI
cmd <<<a >>>b 2>>>&c
EOO

$* <<EOI >>EOO          # out-merge1
cmd 1>&2
EOI
cmd >&2
EOO

$* <<EOI >>EOO          # out-merge2
cmd 1>&2 2>&1 2>a
EOI
cmd >&2 2>a
EOO

$* <<EOI 2>>EOE != 0    # out-merge-fail1
cmd 1>&a
EOI
testscript:1:8: error: invalid stdout merge redirect file descriptor 'a'
  info: must be 2
EOE

$* <<EOI 2>>EOE != 0    # out-merge-fail2
cmd 1>&1
EOI
testscript:1:8: error: invalid stdout merge redirect file descriptor '1'
  info: must be 2
EOE

$* <<EOI 2>>EOE != 0    # out-merge-fail3
cmd 1>&
EOI
testscript:1:8: error: missing stdout file descriptor
EOE

$* <<EOI >>EOO          # err-merge1
cmd 2>&1
EOI
cmd 2>&1
EOO

$* <<EOI >>EOO          # err-merge2
cmd 1>&2 2>&1 >a
EOI
cmd >a 2>&1
EOO

$* <<EOI 2>>EOE != 0    # err-merge-fail1
cmd 2>&2
EOI
testscript:1:8: error: invalid stderr merge redirect file descriptor '2'
  info: must be 1
EOE

$* <<EOI 2>>EOE != 0    # err-merge-fail2
cmd 2>&2
EOI
testscript:1:8: error: invalid stderr merge redirect file descriptor '2'
  info: must be 1
EOE

$* <<EOI 2>>EOE != 0    # err-merge-fail3
cmd 2>&
EOI
testscript:1:8: error: missing stderr file descriptor
EOE

$* <<EOI 2>>EOE != 0    # merge-fail1
cmd 1>&2 2>&1
EOI
testscript:1:14: error: stdout and stderr merge redirects
  info: should not be specified both
EOE