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
|
import config
from utils import suite, test
@suite
def suite_quote():
test("'echo' 'bonjour'")
test("'echo' 'je' 'suis' 'charles'")
test('"echo" "bonjour"')
test('"echo" "je" "suis" "charles"')
test('echo je\'suis\'"charles"')
test('echo "je"suis\'charles\'')
test('echo \'je\'"suis"charles')
test('echo "\\""')
test('echo "\\$"')
test('echo "\\\\"')
@suite
def suite_echo():
test("echo bonjour")
test("echo lalalala lalalalal alalalalal alalalala")
test("echo lalalala lalalalal alalalalal alalalala")
test("echo " + config.LOREM)
test("echo -n bonjour")
test("echo -n lalalala lalalalal alalalalal alalalala")
test("echo -n lalalala lalalalal alalalalal alalalala")
test("echo -n " + config.LOREM)
@suite
def suite_redirection():
test("echo bonjour > test", setup="", files=["test"])
test("echo > test bonjour", setup="", files=["test"])
test("> test echo bonjour", setup="", files=["test"])
test("echo bonjour >> test", setup="", files=["test"])
test("echo >> test bonjour", setup="", files=["test"])
test(">> test echo bonjour", setup="", files=["test"])
test("cat < test", setup="echo bonjour > test")
test("echo bonjour > test", setup="", files=["test"])
test("echo > test'sticked' bonjour", setup="", files=["teststicked"])
test("> test'sticked' echo bonjour", setup="", files=["teststicked"])
test("echo bonjour >> test'sticked'", setup="", files=["teststicked"])
test("echo >> test'sticked' bonjour", setup="", files=["teststicked"])
test(">> test'sticked' echo bonjour", setup="", files=["teststicked"])
test("cat < test'sticked'", setup="echo bonjour > test'sticked'")
test("< test'sticked' cat", setup="echo bonjour > test'sticked'")
test("echo > test\"sticked\" bonjour", setup="", files=["teststicked"])
test("> test\"sticked\" echo bonjour", setup="", files=["teststicked"])
test("echo bonjour >> test\"sticked\"", setup="", files=["teststicked"])
test("echo >> test\"sticked\" bonjour", setup="", files=["teststicked"])
test(">> test\"sticked\" echo bonjour", setup="", files=["teststicked"])
test("cat < test\"sticked\"", setup="echo bonjour > test\"sticked\"")
test("< test\"sticked\" cat", setup="echo bonjour > test\"sticked\"")
test("echo > test'yo'\"sticked\" bonjour", setup="", files=["testyosticked"])
test("> test'yo'\"sticked\" echo bonjour", setup="", files=["testyosticked"])
test("echo bonjour >> test'yo'\"sticked\"", setup="", files=["testyosticked"])
test("echo >> test'yo'\"sticked\" bonjour", setup="", files=["testyosticked"])
test(">> test'yo'\"sticked\" echo bonjour", setup="", files=["testyosticked"])
test("cat < test'yo'\"sticked\"", setup="echo bonjour > test'yo'\"sticked\"")
test("< test'yo'\"sticked\" cat", setup="echo bonjour > test'yo'\"sticked\"")
test("echo bonjour > test > je > suis", setup="", files=["test", "je", "suis"])
test("echo > test > je bonjour > suis", setup="", files=["test", "je", "suis"])
test("> test echo bonjour > je > suis", setup="", files=["test", "je", "suis"])
test("echo bonjour >> test > je >> suis", setup="", files=["test", "je", "suis"])
test("echo >> test bonjour > je > suis", setup="", files=["test", "je", "suis"])
test(">> test echo > je bonjour > suis", setup="", files=["test", "je", "suis"])
test("cat < test < je", setup="echo bonjour > test; echo salut > je")
test("echo bonjour>test>je>suis", setup="", files=["test", "je", "suis"])
test(">test echo bonjour>je>suis", setup="", files=["test", "je", "suis"])
test("echo bonjour>>test>je>>suis", setup="", files=["test", "je", "suis"])
test("cat<test<je", setup="echo bonjour > test; echo salut > je")
|