Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorToon Claes <toon@gitlab.com>2021-04-01 16:09:17 +0300
committerToon Claes <toon@gitlab.com>2021-04-22 15:55:19 +0300
commit32576c95c320a45ea873c67f36bf755b3b26a151 (patch)
treec6b88e100d7ccdbb24529498acde8d2d953e8c98
parente660ef8ea350f695e13b10ec254f14e7131c3ba2 (diff)
gitaly-git2go: Test a few rebase error examples
This change adds a few examples to test rebase in error situations.
-rw-r--r--cmd/gitaly-git2go/rebase_test.go35
1 files changed, 25 insertions, 10 deletions
diff --git a/cmd/gitaly-git2go/rebase_test.go b/cmd/gitaly-git2go/rebase_test.go
index 899aaed63..afa703793 100644
--- a/cmd/gitaly-git2go/rebase_test.go
+++ b/cmd/gitaly-git2go/rebase_test.go
@@ -72,6 +72,7 @@ func TestRebase_rebase(t *testing.T) {
commitsAhead int
setupRepo func(testing.TB, *git.Repository)
expected string
+ expectedErr string
}{
{
desc: "Single commit rebase",
@@ -114,6 +115,16 @@ func TestRebase_rebase(t *testing.T) {
commitsAhead: 1,
expected: "591b29084164bcc58fa4fb851a3c409290b17bfe",
},
+ {
+ desc: "Rebase with conflict",
+ branch: "rebase-encoding-failure-trigger",
+ expectedErr: "rebase: commit \"eb8f5fb9523b868cef583e09d4bf70b99d2dd404\": conflicts have not been resolved",
+ },
+ {
+ desc: "Orphaned branch",
+ branch: "orphaned-branch",
+ expectedErr: "rebase: find merge base: no merge base found",
+ },
}
for _, tc := range testcases {
@@ -143,20 +154,24 @@ func TestRebase_rebase(t *testing.T) {
}
response, err := request.Run(ctx, cfg)
- require.NoError(t, err)
+ if tc.expectedErr != "" {
+ require.EqualError(t, err, tc.expectedErr)
+ } else {
+ require.NoError(t, err)
- result := response.String()
- require.Equal(t, tc.expected, result)
+ result := response.String()
+ require.Equal(t, tc.expected, result)
- commit, err := lookupCommit(repo, result)
- require.NoError(t, err)
+ commit, err := lookupCommit(repo, result)
+ require.NoError(t, err)
- for i := tc.commitsAhead; i > 0; i-- {
- commit = commit.Parent(0)
+ for i := tc.commitsAhead; i > 0; i-- {
+ commit = commit.Parent(0)
+ }
+ masterCommit, err := lookupCommit(repo, "master")
+ require.NoError(t, err)
+ require.Equal(t, masterCommit, commit)
}
- masterCommit, err := lookupCommit(repo, "master")
- require.NoError(t, err)
- require.Equal(t, masterCommit, commit)
})
}
}