about summary refs log tree commit diff
path: root/t/1500-long.t
blob: cf6da52db7f392b99fb938dbf6a400ad9fd42d9f (plain) (blame)
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
79
80
81
82
83
84
85
#!/bin/sh
. ./t/lib.sh

plan 8

check 'long output' <<'EOF'
treegen
lr -l
<<<
f:a
f:b
f:c
>>> /drwx------ \d .* \d+-\d+-\d+ \d+:\d+ \.\//
>>> /-rw-r--r-- \d .* \d+-\d+-\d+ \d+:\d+ a/
>>> /-rw-r--r-- \d .* \d+-\d+-\d+ \d+:\d+ b/
>>> /-rw-r--r-- \d .* \d+-\d+-\d+ \d+:\d+ c/
EOF

check 'no arguments, recurse' <<'EOF'
treegen
lr -l
<<<
f:a/b/c
>>> /drwx------ \d .* \d+-\d+-\d+ \d+:\d+ \.\//
>>> /drwxrwxr-x \d .* \d+-\d+-\d+ \d+:\d+ a/
>>> /drwxrwxr-x \d .* \d+-\d+-\d+ \d+:\d+ a\/b/
>>> /-rw-r--r-- \d .* \d+-\d+-\d+ \d+:\d+ a\/b\/c/
EOF

check 'simple argument' <<'EOF'
treegen
lr -l a
<<<
f:a/b/c
>>> /drwxrwxr-x \d .* \d+-\d+-\d+ \d+:\d+ a/
>>> /drwxrwxr-x \d .* \d+-\d+-\d+ \d+:\d+ a\/b/
>>> /-rw-r--r-- \d .* \d+-\d+-\d+ \d+:\d+ a\/b\/c/
EOF

check 'simple arguments' <<'EOF'
treegen
lr -l a d
<<<
f:a/b/c
f:d/e/f
>>> /drwxrwxr-x \d .* \d+-\d+-\d+ \d+:\d+ a/
>>> /drwxrwxr-x \d .* \d+-\d+-\d+ \d+:\d+ a\/b/
>>> /-rw-r--r-- \d .* \d+-\d+-\d+ \d+:\d+ a\/b\/c/
>>> /drwxrwxr-x \d .* \d+-\d+-\d+ \d+:\d+ d/
>>> /drwxrwxr-x \d .* \d+-\d+-\d+ \d+:\d+ d\/e/
>>> /-rw-r--r-- \d .* \d+-\d+-\d+ \d+:\d+ d\/e\/f/
EOF

# NB: two spaces for inode count due to -U
check 'unsorted' <<'EOF'
treegen
lr -l -U
<<<
f:a/b/c
f:a/d
>>> /drwxrwxr-x  \d .* \d+-\d+-\d+ \d+:\d+ a/
EOF

check 'fifo' <<'EOF'
mkfifo fifo
lr -l
>>> /prw-rw-r-- .* fifo\|/
EOF

check 'symlink' <<'EOF'
treegen
lr -l
<<<
f:a/b
l:b:a/c
>>> /lrw.* .* a\/c -> b$/
EOF

check 'executable' <<'EOF'
treegen
lr -l
<<<
f:a/b:0:711
>>> /-rwx--x--x .* a\/b\*$/
EOF