...
1 package github
2
3 import (
4 "bytes"
5 "fmt"
6 "io/ioutil"
7 "testing"
8
9 st "github.com/golang-migrate/migrate/v4/source/testing"
10 "github.com/stretchr/testify/assert"
11 )
12
13 var GithubTestSecret = ""
14
15 func init() {
16 secrets, err := ioutil.ReadFile(".github_test_secrets")
17 if err == nil {
18 GithubTestSecret = string(bytes.TrimSpace(secrets)[:])
19 }
20 }
21
22 func Test(t *testing.T) {
23 if len(GithubTestSecret) == 0 {
24 t.Skip("test requires .github_test_secrets")
25 }
26
27 g := &Github{}
28 d, err := g.Open("github://" + GithubTestSecret + "@mattes/migrate_test_tmp/test#452b8003e7")
29 if err != nil {
30 t.Fatal(err)
31 }
32
33 st.Test(t, d)
34 }
35
36 func TestDefaultClient(t *testing.T) {
37 g := &Github{}
38 owner := "golang-migrate"
39 repo := "migrate"
40 path := "source/github/examples/migrations"
41
42 url := fmt.Sprintf("github://%s/%s/%s", owner, repo, path)
43 d, err := g.Open(url)
44 if err != nil {
45 t.Fatal(err)
46 }
47
48 ver, err := d.First()
49 if err != nil {
50 t.Fatal(err)
51 }
52 assert.Equal(t, uint(1085649617), ver)
53
54 ver, err = d.Next(ver)
55 if err != nil {
56 t.Fatal(err)
57 }
58 assert.Equal(t, uint(1185749658), ver)
59 }
60
View as plain text