1package github
2
3import (
4 "fmt"
5 "os"
6 "testing"
7 "time"
8
9 "github.com/MichaelMure/git-bug/bridge/core"
10 "github.com/MichaelMure/git-bug/cache"
11 "github.com/MichaelMure/git-bug/repository"
12 "github.com/MichaelMure/git-bug/util/interrupt"
13 "github.com/stretchr/testify/require"
14)
15
16func TestExporter(t *testing.T) {
17 //TODO test strategy
18 tests := []struct {
19 name string
20 }{
21 {
22 name: "bug creation",
23 },
24 }
25
26 repo := repository.CreateTestRepo(false)
27 defer repository.CleanupTestRepos(t, repo)
28
29 backend, err := cache.NewRepoCache(repo)
30 require.NoError(t, err)
31
32 defer backend.Close()
33 interrupt.RegisterCleaner(backend.Close)
34
35 token := os.Getenv("GITHUB_TOKEN_PRIVATE")
36 if token == "" {
37 t.Skip("Env var GITHUB_TOKEN_PRIVATE missing")
38 }
39
40 exporter := &githubExporter{}
41 err = exporter.Init(core.Configuration{
42 keyOwner: "MichaelMure",
43 keyProject: "git-bug-exporter-tests",
44 keyToken: token,
45 })
46 require.NoError(t, err)
47
48 start := time.Now()
49
50 err = exporter.ExportAll(backend, time.Time{})
51 require.NoError(t, err)
52
53 fmt.Printf("test repository exported in %f seconds\n", time.Since(start).Seconds())
54
55 for _, tt := range tests {
56 t.Run(tt.name, func(t *testing.T) {
57
58 })
59 }
60}
61
62func genRepoName() {}
63
64func createRepository() {}
65
66func deleteRepository() {}
67
68// verifyIssue is full
69// comments
70func verifyIssue() {
71
72}