1# vi: set ft=conf
2
3# convert crlf to lf on windows
4[windows] dos2unix info1.txt info2.txt tree.txt
5
6# start soft serve
7exec soft serve &
8# wait for server to start
9waitforserver
10
11# import a repo
12soft repo import --mirror charmbracelet/catwalk https://github.com/charmbracelet/catwalk.git
13
14# check empty description file
15readfile $DATA_PATH/repos/charmbracelet/catwalk.git/description ''
16
17# check repo info
18soft repo info charmbracelet/catwalk
19cmp stdout info1.txt
20
21# check repo list
22soft repo list
23stdout charmbracelet/catwalk
24
25# is-mirror?
26soft repo is-mirror charmbracelet/catwalk
27stdout true
28
29# set project name
30soft repo project-name charmbracelet/catwalk catwalk
31soft repo list
32stdout catwalk
33
34
35# check description
36soft repo description charmbracelet/catwalk
37! stdout .
38
39# set description
40soft repo description charmbracelet/catwalk "testing repo"
41soft repo description charmbracelet/catwalk
42stdout 'testing repo'
43readfile $DATA_PATH/repos/charmbracelet/catwalk.git/description 'testing repo'
44
45# rename
46soft repo rename charmbracelet/catwalk charmbracelet/test
47soft repo list
48stdout charmbracelet/test # TODO: shouldn't this still show the project-name?
49
50# check its not private
51soft repo private charmbracelet/test
52stdout false
53exists $DATA_PATH/repos/charmbracelet/test.git/git-daemon-export-ok
54
55# make it private
56soft repo private charmbracelet/test true
57soft repo private charmbracelet/test
58stdout true
59! exists $DATA_PATH/repos/charmbracelet/test.git/git-daemon-export-ok
60
61# check its not hidden
62soft repo hidden charmbracelet/test
63stdout false
64
65# make it hidden
66soft repo hidden charmbracelet/test true
67soft repo hidden charmbracelet/test
68stdout true
69
70# print tree
71soft repo tree charmbracelet/test
72cmp stdout tree.txt
73
74# check repo info again
75soft repo info charmbracelet/test
76cmp stdout info2.txt
77
78# get a file
79soft repo blob charmbracelet/test LICENSE
80stdout '.*Creative Commons.*'
81
82# stop the server
83[windows] stopserver
84[windows] ! stderr .
85
86
87-- info1.txt --
88Project Name:
89Repository: charmbracelet/catwalk
90Description:
91Private: false
92Hidden: false
93Mirror: true
94Owner: admin
95Default Branch: main
96Branches:
97 - main
98-- info2.txt --
99Project Name: catwalk
100Repository: charmbracelet/test
101Description: testing repo
102Private: true
103Hidden: true
104Mirror: true
105Owner: admin
106Default Branch: main
107Branches:
108 - main
109-- tree.txt --
110drwxrwxrwx - 30k
111drwxrwxrwx - 50k
112-rw-r--r-- 19 kB LICENSE
113-rw-r--r-- 1.1 kB README.md