@@ -2,52 +2,50 @@ package tests
2
2
3
3
import (
4
4
"fmt"
5
+ git "github.com/libgit2/git2go/v31"
6
+ git2 "github.com/neel1996/gitconvex-server/git"
7
+ "github.com/neel1996/gitconvex-server/graph/model"
8
+ "github.com/stretchr/testify/assert"
5
9
"io/ioutil"
6
10
"os"
7
11
"path"
8
12
"strings"
9
13
"testing"
10
-
11
- git "github.com/libgit2/git2go/v31"
12
- git2 "github.com/neel1996/gitconvex-server/git"
13
- "github.com/neel1996/gitconvex-server/graph/model"
14
14
)
15
15
16
16
func TestChangedFiles (t * testing.T ) {
17
17
var repoPath string
18
18
var r * git.Repository
19
+ cwd , _ := os .Getwd ()
19
20
currentEnv := os .Getenv ("GOTESTENV" )
20
21
fmt .Println ("Environment : " + currentEnv )
21
22
22
23
if currentEnv == "ci" {
23
- repoPath = "/home/runner/work/gitconvex-server/starfleet"
24
+ repoPath = path . Join ( cwd , ".." )
24
25
r , _ = git .OpenRepository (repoPath )
25
26
} else {
26
- cwd , _ := os . Getwd ( )
27
- r , _ = git .OpenRepository (path . Join ( cwd , ".." ) )
27
+ repoPath = path . Join ( cwd , "../.." )
28
+ r , _ = git .OpenRepository (repoPath )
28
29
}
29
30
30
- untrackedResult := "untracked.txt"
31
- changedResult := "README.md"
32
- stagedResult := "README.md"
33
-
34
- uErr := ioutil .WriteFile (repoPath + "/" + untrackedResult , []byte {byte (63 )}, 0755 )
35
- cErr := ioutil .WriteFile (repoPath + "/" + changedResult , []byte {byte (83 )}, 0755 )
36
-
31
+ mockFile := "mockFile.txt"
32
+ _ = ioutil .WriteFile (repoPath + "/" + mockFile , []byte {byte (63 )}, 0755 )
37
33
var stageObject git2.StageItemInterface
38
34
stageObject = git2.StageItemStruct {
39
35
Repo : r ,
40
- FileItem : changedResult ,
36
+ FileItem : mockFile ,
41
37
}
38
+
42
39
stageObject .StageItem ()
40
+ _ = ioutil .WriteFile (repoPath + "/" + mockFile , []byte {byte (83 )}, 0755 )
43
41
44
- sErr := ioutil . WriteFile ( repoPath + "/" + changedResult , [] byte { byte ( 70 )}, 0755 )
45
- fmt . Println ( uErr , cErr , sErr )
42
+ untrackedMockFile := "mockFileTwo.txt"
43
+ _ = ioutil . WriteFile ( repoPath + "/" + untrackedMockFile , [] byte { byte ( 63 )}, 0755 )
46
44
47
45
expectedResults := & model.GitChangeResults {
48
- GitUntrackedFiles : []* string {& untrackedResult },
49
- GitChangedFiles : []* string {& changedResult },
50
- GitStagedFiles : []* string {& stagedResult },
46
+ GitUntrackedFiles : []* string {& untrackedMockFile },
47
+ GitChangedFiles : []* string {& mockFile },
48
+ GitStagedFiles : []* string {& mockFile },
51
49
}
52
50
53
51
type args struct {
@@ -67,22 +65,25 @@ func TestChangedFiles(t *testing.T) {
67
65
Repo : tt .args .repo ,
68
66
RepoPath : "" ,
69
67
}
68
+
70
69
got := testObj .ChangedFiles ()
71
70
72
71
stagedFile := * got .GitStagedFiles [0 ]
73
72
untrackedFile := * got .GitUntrackedFiles [0 ]
74
73
changedFile := * got .GitChangedFiles [0 ]
75
74
changedFile = strings .Split (changedFile , "," )[1 ]
76
75
77
- fmt . Println ( stagedFile )
78
- fmt . Println ( untrackedFile )
79
- fmt . Println ( changedFile )
76
+ assert . Equal ( t , * tt . want . GitStagedFiles [ 0 ], stagedFile )
77
+ assert . Equal ( t , * tt . want . GitChangedFiles [ 0 ], changedFile )
78
+ assert . Equal ( t , * tt . want . GitUntrackedFiles [ 0 ], untrackedFile )
80
79
81
- if stagedFile == * tt .want .GitStagedFiles [0 ] && untrackedFile == * tt .want .GitUntrackedFiles [0 ] && changedFile == * tt .want .GitChangedFiles [0 ] {
82
- fmt .Println ("Test Passed" )
83
- } else {
84
- t .Errorf ("ChangedFiles() = %v, want %v" , * got .GitStagedFiles [0 ], * tt .want .GitStagedFiles [0 ])
80
+ reset := git2.ResetAllStruct {
81
+ Repo : r ,
85
82
}
83
+ reset .ResetAllItems ()
84
+
85
+ fmt .Println (os .Remove (repoPath + "/" + mockFile ))
86
+ fmt .Println (os .Remove (repoPath + "/" + untrackedMockFile ))
86
87
})
87
88
}
88
89
}
0 commit comments