mirror of https://github.com/gogs/gogs.git
gitutil: simplify mock with `t.Cleanup` (#6033)
* gitutil: simplify mock with t.Cleanup * Scope mock to tests onlypull/6036/head
parent
933206f1fe
commit
4cbb43b860
|
@ -5,6 +5,8 @@
|
||||||
package gitutil
|
package gitutil
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"testing"
|
||||||
|
|
||||||
"github.com/gogs/git-module"
|
"github.com/gogs/git-module"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -54,3 +56,11 @@ func (m *MockModuleStore) PullRequestMeta(headPath, basePath, headBranch, baseBr
|
||||||
func (m *MockModuleStore) ListTagsAfter(repoPath, after string, limit int) (*TagsPage, error) {
|
func (m *MockModuleStore) ListTagsAfter(repoPath, after string, limit int) (*TagsPage, error) {
|
||||||
return m.listTagsAfter(repoPath, after, limit)
|
return m.listTagsAfter(repoPath, after, limit)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func SetMockModuleStore(t *testing.T, mock ModuleStore) {
|
||||||
|
before := Module
|
||||||
|
Module = mock
|
||||||
|
t.Cleanup(func() {
|
||||||
|
Module = before
|
||||||
|
})
|
||||||
|
}
|
|
@ -24,7 +24,7 @@ func TestModuler_PullRequestMeta(t *testing.T) {
|
||||||
{ID: git.MustIDFromString("adfd6da3c0a3fb038393144becbf37f14f780087")},
|
{ID: git.MustIDFromString("adfd6da3c0a3fb038393144becbf37f14f780087")},
|
||||||
}
|
}
|
||||||
|
|
||||||
mockModule := &MockModuleStore{
|
SetMockModuleStore(t, &MockModuleStore{
|
||||||
repoAddRemote: func(repoPath, name, url string, opts ...git.AddRemoteOptions) error {
|
repoAddRemote: func(repoPath, name, url string, opts ...git.AddRemoteOptions) error {
|
||||||
if repoPath != headPath {
|
if repoPath != headPath {
|
||||||
return fmt.Errorf("repoPath: want %q but got %q", headPath, repoPath)
|
return fmt.Errorf("repoPath: want %q but got %q", headPath, repoPath)
|
||||||
|
@ -93,11 +93,6 @@ func TestModuler_PullRequestMeta(t *testing.T) {
|
||||||
},
|
},
|
||||||
|
|
||||||
pullRequestMeta: Module.PullRequestMeta,
|
pullRequestMeta: Module.PullRequestMeta,
|
||||||
}
|
|
||||||
beforeModule := Module
|
|
||||||
Module = mockModule
|
|
||||||
t.Cleanup(func() {
|
|
||||||
Module = beforeModule
|
|
||||||
})
|
})
|
||||||
|
|
||||||
meta, err := Module.PullRequestMeta(headPath, basePath, headBranch, baseBranch)
|
meta, err := Module.PullRequestMeta(headPath, basePath, headBranch, baseBranch)
|
||||||
|
|
|
@ -12,7 +12,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestModuler_ListTagsAfter(t *testing.T) {
|
func TestModuler_ListTagsAfter(t *testing.T) {
|
||||||
mockModule := &MockModuleStore{
|
SetMockModuleStore(t, &MockModuleStore{
|
||||||
repoTags: func(string, ...git.TagsOptions) ([]string, error) {
|
repoTags: func(string, ...git.TagsOptions) ([]string, error) {
|
||||||
return []string{
|
return []string{
|
||||||
"v2.3.0", "v2.2.1", "v2.1.0",
|
"v2.3.0", "v2.2.1", "v2.1.0",
|
||||||
|
@ -22,11 +22,6 @@ func TestModuler_ListTagsAfter(t *testing.T) {
|
||||||
},
|
},
|
||||||
|
|
||||||
listTagsAfter: Module.ListTagsAfter,
|
listTagsAfter: Module.ListTagsAfter,
|
||||||
}
|
|
||||||
beforeModule := Module
|
|
||||||
Module = mockModule
|
|
||||||
t.Cleanup(func() {
|
|
||||||
Module = beforeModule
|
|
||||||
})
|
})
|
||||||
|
|
||||||
tests := []struct {
|
tests := []struct {
|
||||||
|
|
Loading…
Reference in New Issue