This repository was archived by the owner on Jan 16, 2021. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 140
/
Copy pathconfig_test.go
72 lines (54 loc) · 2.21 KB
/
config_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
package parsecli
import (
"io/ioutil"
"os"
"path/filepath"
"testing"
"github.com/facebookgo/ensure"
)
func TestGetConfigFile(t *testing.T) {
t.Parallel()
h := NewHarness(t)
defer h.Stop()
h.Env.Type = LegacyParseFormat
ensure.DeepEqual(t, GetConfigFile(h.Env), filepath.Join(h.Env.Root, LegacyConfigFile))
h.Env.Type = ParseFormat
ensure.DeepEqual(t, GetConfigFile(h.Env), filepath.Join(h.Env.Root, ParseLocal))
}
func TestConfigFromDirFormatType(t *testing.T) {
t.Parallel()
h := NewHarness(t)
h.MakeEmptyRoot()
defer h.Stop()
ensure.Nil(t, CloneSampleCloudCode(h.Env, true))
c, err := ConfigFromDir(h.Env.Root)
ensure.Nil(t, err)
ensure.DeepEqual(t, c.GetProjectConfig().Type, ParseFormat)
ensure.Nil(t, os.MkdirAll(filepath.Join(h.Env.Root, ConfigDir), 0755))
ensure.Nil(t, ioutil.WriteFile(filepath.Join(h.Env.Root, LegacyConfigFile),
[]byte("{}"),
0600),
)
c, err = ConfigFromDir(h.Env.Root)
ensure.Nil(t, err)
ensure.DeepEqual(t, c.GetProjectConfig().Type, LegacyParseFormat)
}
func TestGetProjectRoot(t *testing.T) {
t.Parallel()
h := NewHarness(t)
h.MakeEmptyRoot()
defer h.Stop()
ensure.Nil(t, os.Mkdir(filepath.Join(h.Env.Root, "parse"), 0755))
ensure.Nil(t, os.Mkdir(filepath.Join(h.Env.Root, "parse", "config"), 0755))
f, err := os.Create(filepath.Join(h.Env.Root, "parse", LegacyConfigFile))
ensure.Nil(t, err)
defer f.Close()
ensure.Nil(t, os.Mkdir(filepath.Join(h.Env.Root, "parse", "cloud"), 0755))
ensure.Nil(t, os.Mkdir(filepath.Join(h.Env.Root, "parse", "public"), 0755))
ensure.Nil(t, os.MkdirAll(filepath.Join(h.Env.Root, "parse", "cloud", "other", "config"), 0755))
ensure.DeepEqual(t, GetLegacyProjectRoot(h.Env, h.Env.Root), h.Env.Root)
ensure.DeepEqual(t, GetLegacyProjectRoot(h.Env, filepath.Join(h.Env.Root, "parse", "config")), filepath.Join(h.Env.Root, "parse"))
ensure.DeepEqual(t, GetLegacyProjectRoot(h.Env, filepath.Join(h.Env.Root, "parse", "cloud")), filepath.Join(h.Env.Root, "parse"))
ensure.DeepEqual(t, GetLegacyProjectRoot(h.Env, filepath.Join(h.Env.Root, "parse", "public")), filepath.Join(h.Env.Root, "parse"))
ensure.DeepEqual(t, GetLegacyProjectRoot(h.Env, filepath.Join(h.Env.Root, "parse", "cloud", "other")), filepath.Join(h.Env.Root, "parse"))
}