Skip to content

Commit d8e8b8e

Browse files
committed
Refactor tests
1 parent 872de85 commit d8e8b8e

File tree

1 file changed

+42
-52
lines changed

1 file changed

+42
-52
lines changed

integrations/git_test.go

Lines changed: 42 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ package integrations
66

77
import (
88
"context"
9+
"fmt"
910
"io/ioutil"
1011
"math/rand"
1112
"net"
@@ -45,6 +46,44 @@ func onGiteaWebRun(t *testing.T, callback func(*testing.T, *url.URL)) {
4546
callback(t, u)
4647
}
4748

49+
func generateCommit(repoPath, email, fullName string) error {
50+
//Generate random file
51+
data := make([]byte, 1024)
52+
_, err := rand.Read(data)
53+
if err != nil {
54+
return err
55+
}
56+
tmpFile, err := ioutil.TempFile(repoPath, "data-file-")
57+
if err != nil {
58+
return err
59+
}
60+
defer tmpFile.Close()
61+
_, err = tmpFile.Write(data)
62+
if err != nil {
63+
return err
64+
}
65+
66+
//Commit
67+
err = git.AddChanges(repoPath, false, filepath.Base(tmpFile.Name()))
68+
if err != nil {
69+
return err
70+
}
71+
err = git.CommitChanges(repoPath, git.CommitChangesOptions{
72+
Committer: &git.Signature{
73+
Email: email,
74+
Name: fullName,
75+
When: time.Now(),
76+
},
77+
Author: &git.Signature{
78+
Email: email,
79+
Name: fullName,
80+
When: time.Now(),
81+
},
82+
Message: fmt.Sprintf("Testing commit @ %v", time.Now()),
83+
})
84+
return err
85+
}
86+
4887
func TestGit(t *testing.T) {
4988
prepareTestEnv(t)
5089

@@ -55,7 +94,6 @@ func TestGit(t *testing.T) {
5594
u.Path = "user2/repo1.git"
5695

5796
t.Run("Standard", func(t *testing.T) {
58-
5997
t.Run("CloneNoLogin", func(t *testing.T) {
6098
dstLocalPath, err := ioutil.TempDir("", "repo1")
6199
assert.NoError(t, err)
@@ -88,32 +126,8 @@ func TestGit(t *testing.T) {
88126
})
89127

90128
t.Run("PushCommit", func(t *testing.T) {
91-
data := make([]byte, 1024)
92-
_, err := rand.Read(data)
129+
err = generateCommit(dstPath, "[email protected]", "User Two")
93130
assert.NoError(t, err)
94-
tmpFile, err := ioutil.TempFile(dstPath, "data-file-")
95-
defer tmpFile.Close()
96-
_, err = tmpFile.Write(data)
97-
assert.NoError(t, err)
98-
99-
//Commit
100-
err = git.AddChanges(dstPath, false, filepath.Base(tmpFile.Name()))
101-
assert.NoError(t, err)
102-
err = git.CommitChanges(dstPath, git.CommitChangesOptions{
103-
Committer: &git.Signature{
104-
105-
Name: "User Two",
106-
When: time.Now(),
107-
},
108-
Author: &git.Signature{
109-
110-
Name: "User Two",
111-
When: time.Now(),
112-
},
113-
Message: "Testing commit",
114-
})
115-
assert.NoError(t, err)
116-
117131
//Push
118132
err = git.Push(dstPath, git.PushOptions{
119133
Branch: "master",
@@ -125,39 +139,15 @@ func TestGit(t *testing.T) {
125139
})
126140
t.Run("LFS", func(t *testing.T) {
127141
t.Run("PushCommit", func(t *testing.T) {
128-
/* Generate random file */
129-
data := make([]byte, 1024)
130-
_, err := rand.Read(data)
131-
assert.NoError(t, err)
132-
tmpFile, err := ioutil.TempFile(dstPath, "data-file-")
133-
defer tmpFile.Close()
134-
_, err = tmpFile.Write(data)
135-
assert.NoError(t, err)
136-
137142
//Setup git LFS
138143
_, err = git.NewCommand("lfs").AddArguments("install").RunInDir(dstPath)
139144
assert.NoError(t, err)
140145
_, err = git.NewCommand("lfs").AddArguments("track", "data-file-*").RunInDir(dstPath)
141146
assert.NoError(t, err)
142-
143-
//Commit
144-
err = git.AddChanges(dstPath, false, ".gitattributes", filepath.Base(tmpFile.Name()))
145-
assert.NoError(t, err)
146-
err = git.CommitChanges(dstPath, git.CommitChangesOptions{
147-
Committer: &git.Signature{
148-
149-
Name: "User Two",
150-
When: time.Now(),
151-
},
152-
Author: &git.Signature{
153-
154-
Name: "User Two",
155-
When: time.Now(),
156-
},
157-
Message: "Testing LFS ",
158-
})
147+
err = git.AddChanges(dstPath, false, ".gitattributes")
159148
assert.NoError(t, err)
160149

150+
err = generateCommit(dstPath, "[email protected]", "User Two")
161151
//Push
162152
u.User = url.UserPassword("user2", userPassword)
163153
err = git.Push(dstPath, git.PushOptions{

0 commit comments

Comments
 (0)