soft-serve

Fork https://github.com/charmbracelet/soft-serve

git clone git://git.lin.moe/fork/soft-serve.git

  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 SSH server to start
  9ensureserverrunning SSH_PORT
 10
 11# import a repo
 12soft repo import --mirror charmbracelet/wizard-tutorial https://github.com/charmbracelet/wizard-tutorial.git
 13
 14# check empty description file
 15readfile $DATA_PATH/repos/charmbracelet/wizard-tutorial.git/description ''
 16
 17# check repo info
 18soft repo info charmbracelet/wizard-tutorial
 19cmp stdout info1.txt
 20
 21# check repo list
 22soft repo list
 23stdout charmbracelet/wizard-tutorial
 24
 25# create a non-mirror repo
 26soft repo create test-normal
 27soft repo mirror test-normal
 28stdout false
 29# try to enable mirror on repo without remote - should fail
 30! soft repo mirror test-normal true
 31
 32# disable mirror
 33soft repo mirror charmbracelet/wizard-tutorial false
 34soft repo mirror charmbracelet/wizard-tutorial
 35stdout false
 36# verify git config no longer has mirror
 37readfile $DATA_PATH/repos/charmbracelet/wizard-tutorial.git/config
 38! stdout 'mirror = true'
 39
 40# re-enable mirror
 41soft repo mirror charmbracelet/wizard-tutorial true
 42soft repo mirror charmbracelet/wizard-tutorial
 43stdout true
 44# verify git config has mirror again
 45readfile $DATA_PATH/repos/charmbracelet/wizard-tutorial.git/config
 46stdout 'mirror = true'
 47
 48# set project name
 49soft repo project-name charmbracelet/wizard-tutorial wizard-tutorial
 50soft repo list
 51stdout wizard-tutorial
 52
 53
 54# check description
 55soft repo description charmbracelet/wizard-tutorial
 56! stdout .
 57
 58# set description
 59soft repo description charmbracelet/wizard-tutorial "testing repo"
 60soft repo description charmbracelet/wizard-tutorial
 61stdout 'testing repo'
 62readfile $DATA_PATH/repos/charmbracelet/wizard-tutorial.git/description 'testing repo'
 63
 64# rename
 65soft repo rename charmbracelet/wizard-tutorial charmbracelet/test
 66soft repo list
 67stdout charmbracelet/test # TODO: shouldn't this still show the project-name?
 68
 69# check its not private
 70soft repo private charmbracelet/test
 71stdout false
 72exists $DATA_PATH/repos/charmbracelet/test.git/git-daemon-export-ok
 73
 74# make it private
 75soft repo private charmbracelet/test  true
 76soft repo private charmbracelet/test
 77stdout true
 78! exists $DATA_PATH/repos/charmbracelet/test.git/git-daemon-export-ok
 79
 80# check its not hidden
 81soft repo hidden charmbracelet/test
 82stdout false
 83
 84# make it hidden
 85soft repo hidden charmbracelet/test  true
 86soft repo hidden charmbracelet/test
 87stdout true
 88
 89# print tree
 90soft repo tree charmbracelet/test
 91cmp stdout tree.txt
 92
 93# check repo info again
 94soft repo info charmbracelet/test
 95cmp stdout info2.txt
 96
 97# get a file
 98soft repo blob charmbracelet/test README.md
 99stdout '.*Wizard.*'
100
101# stop the server
102[windows] stopserver
103[windows] ! stderr .
104
105
106-- info1.txt --
107Project Name:
108Repository: charmbracelet/wizard-tutorial
109Description:
110Private: false
111Hidden: false
112Mirror: true
113Owner: admin
114Default Branch: main
115Branches:
116  - main
117-- info2.txt --
118Project Name: wizard-tutorial
119Repository: charmbracelet/test
120Description: testing repo
121Private: true
122Hidden: true
123Mirror: true
124Owner: admin
125Default Branch: main
126Branches:
127  - main
128-- tree.txt --
129-rw-r--r--	10 B	 .gitignore
130-rw-r--r--	1.3 kB	 README.md
131-rw-r--r--	970 B	 go.mod
132-rw-r--r--	5.3 kB	 go.sum
133-rw-r--r--	2.2 kB	 input.go
134-rw-r--r--	2.9 kB	 main.go