|
1 | 1 | package gps
|
2 | 2 |
|
3 | 3 | import (
|
| 4 | + "io/ioutil" |
4 | 5 | "os"
|
5 | 6 | "path"
|
| 7 | + "path/filepath" |
6 | 8 | "testing"
|
7 | 9 | )
|
8 | 10 |
|
@@ -43,26 +45,54 @@ func TestWriteDepTree(t *testing.T) {
|
43 | 45 | t.Skip("Skipping dep tree writing test in short mode")
|
44 | 46 | }
|
45 | 47 |
|
46 |
| - r := basicResult |
| 48 | + tmp, err := ioutil.TempDir("", "writetree") |
| 49 | + if err != nil { |
| 50 | + t.Errorf("Failed to create temp dir: %s", err) |
| 51 | + t.FailNow() |
| 52 | + } |
| 53 | + defer os.RemoveAll(tmp) |
47 | 54 |
|
48 |
| - tmp := path.Join(os.TempDir(), "vsolvtest") |
49 |
| - os.RemoveAll(tmp) |
| 55 | + r := solution{ |
| 56 | + att: 1, |
| 57 | + p: []LockedProject{ |
| 58 | + pa2lp(atom{ |
| 59 | + id: pi("github.com/sdboyer/testrepo"), |
| 60 | + v: NewBranch("master").Is(Revision("4d59fb584b15a94d7401e356d2875c472d76ef45")), |
| 61 | + }, nil), |
| 62 | + pa2lp(atom{ |
| 63 | + id: pi("launchpad.net/govcstestbzrrepo"), |
| 64 | + v: NewVersion( "1.0.0"). Is( Revision( "[email protected]")), |
| 65 | + }, nil), |
| 66 | + pa2lp(atom{ |
| 67 | + id: pi("bitbucket.org/sdboyer/withbm"), |
| 68 | + v: NewVersion("v1.0.0").Is(Revision("aa110802a0c64195d0a6c375c9f66668827c90b4")), |
| 69 | + }, nil), |
| 70 | + }, |
| 71 | + } |
50 | 72 |
|
51 | 73 | sm, clean := mkNaiveSM(t)
|
52 | 74 | defer clean()
|
53 | 75 |
|
54 | 76 | // nil lock/result should err immediately
|
55 |
| - err := WriteDepTree(path.Join(tmp, "export"), nil, sm, true) |
| 77 | + err = WriteDepTree(tmp, nil, sm, true) |
56 | 78 | if err == nil {
|
57 | 79 | t.Errorf("Should error if nil lock is passed to WriteDepTree")
|
58 | 80 | }
|
59 | 81 |
|
60 |
| - err = WriteDepTree(path.Join(tmp, "export"), r, sm, true) |
| 82 | + err = WriteDepTree(tmp, r, sm, true) |
61 | 83 | if err != nil {
|
62 | 84 | t.Errorf("Unexpected error while creating vendor tree: %s", err)
|
63 | 85 | }
|
64 | 86 |
|
65 |
| - // TODO(sdboyer) add more checks |
| 87 | + if _, err = os.Stat(filepath.Join(tmp, "github.com", "sdboyer", "testrepo")); err != nil { |
| 88 | + t.Errorf("Directory for github.com/sdboyer/testrepo does not exist") |
| 89 | + } |
| 90 | + if _, err = os.Stat(filepath.Join(tmp, "launchpad.net", "govcstestbzrrepo")); err != nil { |
| 91 | + t.Errorf("Directory for launchpad.net/govcstestbzrrepo does not exist") |
| 92 | + } |
| 93 | + if _, err = os.Stat(filepath.Join(tmp, "bitbucket.org", "sdboyer", "withbm")); err != nil { |
| 94 | + t.Errorf("Directory for bitbucket.org/sdboyer/withbm does not exist") |
| 95 | + } |
66 | 96 | }
|
67 | 97 |
|
68 | 98 | func BenchmarkCreateVendorTree(b *testing.B) {
|
|
0 commit comments