mirror of
https://github.com/arnaucube/mirror-to-gitea.git
synced 2026-02-06 19:16:42 +01:00
refactoring
This commit is contained in:
13
internal/app/app_suite_test.go
Normal file
13
internal/app/app_suite_test.go
Normal file
@@ -0,0 +1,13 @@
|
||||
package app_test
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
. "github.com/onsi/ginkgo"
|
||||
. "github.com/onsi/gomega"
|
||||
)
|
||||
|
||||
func TestApp(t *testing.T) {
|
||||
RegisterFailHandler(Fail)
|
||||
RunSpecs(t, "App Suite")
|
||||
}
|
||||
7
internal/app/mirror.go
Normal file
7
internal/app/mirror.go
Normal file
@@ -0,0 +1,7 @@
|
||||
package app
|
||||
|
||||
import "github.com/jaedle/mirror-to-gitea/internal/config"
|
||||
|
||||
type ConfigReader interface {
|
||||
Read() (*config.Config, error)
|
||||
}
|
||||
9
internal/app/mirror_test.go
Normal file
9
internal/app/mirror_test.go
Normal file
@@ -0,0 +1,9 @@
|
||||
package app_test
|
||||
|
||||
import (
|
||||
. "github.com/onsi/ginkgo"
|
||||
)
|
||||
|
||||
var _ = Describe("Mirror", func() {
|
||||
|
||||
})
|
||||
@@ -25,29 +25,6 @@ type Github struct {
|
||||
Token *string
|
||||
}
|
||||
|
||||
func Read() (*Config, error) {
|
||||
mirrorMode, err := readMirrorMode()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
gitea, err := readGiteaConfig()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
github, err := readGithubConfig()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return &Config{
|
||||
MirrorMode: mirrorMode,
|
||||
Gitea: gitea,
|
||||
Github: github,
|
||||
}, nil
|
||||
}
|
||||
|
||||
func readGiteaConfig() (Gitea, error) {
|
||||
url, a := os.LookupEnv("GITEA_URL")
|
||||
if !a {
|
||||
@@ -99,3 +76,33 @@ func readMirrorMode() (string, error) {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
type Reader struct {
|
||||
}
|
||||
|
||||
func (r Reader) Read() (*Config, error) {
|
||||
mirrorMode, err := readMirrorMode()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
gitea, err := readGiteaConfig()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
github, err := readGithubConfig()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return &Config{
|
||||
MirrorMode: mirrorMode,
|
||||
Gitea: gitea,
|
||||
Github: github,
|
||||
}, nil
|
||||
}
|
||||
|
||||
func NewReader() *Reader {
|
||||
return &Reader{}
|
||||
}
|
||||
|
||||
@@ -23,14 +23,18 @@ const aGithubUsername = "a-github-user"
|
||||
const aGithubToken = "a-github-token"
|
||||
|
||||
var _ = Describe("Read", func() {
|
||||
|
||||
var reader *config.Reader
|
||||
|
||||
BeforeEach(func() {
|
||||
os.Clearenv()
|
||||
reader = config.NewReader()
|
||||
})
|
||||
|
||||
It("parses valid configuration", func() {
|
||||
aValidEnv()
|
||||
|
||||
c, err := config.Read()
|
||||
c, err := reader.Read()
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
Expect(c).ToNot(BeNil())
|
||||
})
|
||||
@@ -41,7 +45,7 @@ var _ = Describe("Read", func() {
|
||||
setEnv(githubUsername, aGithubUsername)
|
||||
unsetEnv(githubToken)
|
||||
|
||||
c, err := config.Read()
|
||||
c, err := reader.Read()
|
||||
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
Expect(c.Github.Username).To(Equal(aGithubUsername))
|
||||
@@ -53,7 +57,7 @@ var _ = Describe("Read", func() {
|
||||
setEnv(githubUsername, aGithubUsername)
|
||||
setEnv(githubToken, aGithubToken)
|
||||
|
||||
c, err := config.Read()
|
||||
c, err := reader.Read()
|
||||
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
Expect(c.Github.Username).To(Equal(aGithubUsername))
|
||||
@@ -64,7 +68,7 @@ var _ = Describe("Read", func() {
|
||||
aValidEnv()
|
||||
unsetEnv(githubUsername)
|
||||
|
||||
c, err := config.Read()
|
||||
c, err := reader.Read()
|
||||
|
||||
Expect(err).To(HaveOccurred())
|
||||
Expect(c).To(BeNil())
|
||||
@@ -78,7 +82,7 @@ var _ = Describe("Read", func() {
|
||||
setEnv(giteaUrl, "https://gitea.url/api")
|
||||
setEnv(giteaToken, "a-gitea-token")
|
||||
|
||||
c, err := config.Read()
|
||||
c, err := reader.Read()
|
||||
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
Expect(c.Gitea.Url).To(Equal("https://gitea.url/api"))
|
||||
@@ -89,7 +93,7 @@ var _ = Describe("Read", func() {
|
||||
aValidEnv()
|
||||
unsetEnv(giteaUrl)
|
||||
|
||||
c, err := config.Read()
|
||||
c, err := reader.Read()
|
||||
|
||||
Expect(err).To(HaveOccurred())
|
||||
Expect(c).To(BeNil())
|
||||
@@ -100,7 +104,7 @@ var _ = Describe("Read", func() {
|
||||
aValidEnv()
|
||||
unsetEnv(giteaToken)
|
||||
|
||||
c, err := config.Read()
|
||||
c, err := reader.Read()
|
||||
|
||||
Expect(err).To(HaveOccurred())
|
||||
Expect(c).To(BeNil())
|
||||
@@ -114,7 +118,7 @@ var _ = Describe("Read", func() {
|
||||
aValidEnv()
|
||||
unsetEnv(mirrorMode)
|
||||
|
||||
c, err := config.Read()
|
||||
c, err := reader.Read()
|
||||
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
Expect(c.MirrorMode).To(Equal(config.MirrorModePublic))
|
||||
@@ -124,7 +128,7 @@ var _ = Describe("Read", func() {
|
||||
aValidEnv()
|
||||
setEnv(mirrorMode, in)
|
||||
|
||||
c, err := config.Read()
|
||||
c, err := reader.Read()
|
||||
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
Expect(c.MirrorMode).To(Equal(exp))
|
||||
@@ -137,7 +141,7 @@ var _ = Describe("Read", func() {
|
||||
aValidEnv()
|
||||
setEnv(mirrorMode, unknownMirrorMode)
|
||||
|
||||
c, err := config.Read()
|
||||
c, err := reader.Read()
|
||||
|
||||
Expect(err).To(HaveOccurred())
|
||||
Expect(c).To(BeNil())
|
||||
|
||||
Reference in New Issue
Block a user