summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVasilii Iakliushin <viakliushin@gitlab.com>2021-05-31 15:56:10 +0200
committerVasilii Iakliushin <viakliushin@gitlab.com>2021-06-01 14:36:50 +0200
commit2a0f7c59a4fbf042b1b12beeca863fdb8431e2ea (patch)
treec1abd85159f2fbe10501dc9e9d44046f5aea5259
parent4977d8a1fdaea474a5581d7dfef9475ae668fa56 (diff)
downloadgitlab-shell-2a0f7c59a4fbf042b1b12beeca863fdb8431e2ea.tar.gz
Add acceptance test for git-upload-pack
Contributes to https://gitlab.com/gitlab-org/gitlab-shell/-/issues/500
-rw-r--r--cmd/gitlab-sshd/acceptance_test.go23
1 files changed, 23 insertions, 0 deletions
diff --git a/cmd/gitlab-sshd/acceptance_test.go b/cmd/gitlab-sshd/acceptance_test.go
index 3590bc7..7cd1873 100644
--- a/cmd/gitlab-sshd/acceptance_test.go
+++ b/cmd/gitlab-sshd/acceptance_test.go
@@ -407,6 +407,29 @@ func TestGitReceivePackSuccess(t *testing.T) {
require.Equal(t, "0000", outputLines[len(outputLines)-1])
}
+func TestGitUploadPackSuccess(t *testing.T) {
+ ensureGitalyRepository(t)
+
+ client := runSSHD(t, successAPI(t))
+
+ session, err := client.NewSession()
+ require.NoError(t, err)
+ defer session.Close()
+
+ output, err := session.Output(fmt.Sprintf("git-upload-pack %s", testRepo))
+ require.NoError(t, err)
+
+ outputLines := strings.Split(string(output), "\n")
+
+ require.Regexp(t, "^[0-9a-f]{44} HEAD.+", outputLines[0])
+
+ for i := 1; i < (len(outputLines) - 1); i++ {
+ require.Regexp(t, "^[0-9a-f]{44} refs/(heads|tags)/[^ ]+", outputLines[i])
+ }
+
+ require.Equal(t, "0000", outputLines[len(outputLines)-1])
+}
+
func TestGitUploadArchiveSuccess(t *testing.T) {
ensureGitalyRepository(t)