1# vi: set ft=conf
 2
 3# convert crlf to lf on windows
 4[windows] dos2unix tree1.txt tree2.txt tree3.txt
 5
 6# create a repo
 7soft repo create repo1
 8
 9# clone repo
10git clone ssh://localhost:$SSH_PORT/repo1 repo1
11
12# create some files, commits, tags...
13mkfile ./repo1/README.md '# Hello'
14mkfile ./repo1/b.md 'hi'
15mkfile ./repo1/.hidden ''
16mkdir ./repo1/folder
17mkdir ./repo1/.folder
18mkfile ./repo1/folder/aa.md 'hello'
19git -C repo1 add -A
20git -C repo1 commit -m 'first'
21git -C repo1 push origin HEAD
22
23# print root tree
24soft repo tree repo1
25cmp stdout tree1.txt
26
27# print folder tree
28soft repo tree repo1 folder
29cmp stdout tree2.txt
30
31# print file tree with revision
32soft repo tree repo1 master b.md
33cmp stdout tree3.txt
34
35# print tree of folder that does not exist
36! soft repo tree repo1 folder2
37! stdout .
38stderr 'file not found'
39
40# print tree of bad revision
41! soft repo tree repo1 badrev folder
42! stdout .
43stderr 'revision does not exist'
44
45-- tree1.txt --
46drwxrwxrwx	-	 folder
47-rw-r--r--	-	 .hidden
48-rw-r--r--	7 B	 README.md
49-rw-r--r--	2 B	 b.md
50-- tree2.txt --
51-rw-r--r--	5 B	 aa.md
52-- tree3.txt --
53-rw-r--r--	2 B	 b.md