Skip to content

Commit 5e384c8

Browse files
authored
Merge pull request #70 from ynden/feature/digger-conf
Return full path & refactor file creation in tests
2 parents 422acbf + 6672b8b commit 5e384c8

File tree

2 files changed

+44
-27
lines changed

2 files changed

+44
-27
lines changed

pkg/digger/digger_config.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -153,10 +153,10 @@ func retrieveConfigFile(workingDir string) (string, error) {
153153
// At this point we know there are no duplicates
154154
// Return the first one that exists
155155
if ymlCfg {
156-
return "digger.yml", nil
156+
return path.Join(workingDir, "digger.yml"), nil
157157
}
158158
if yamlCfg {
159-
return "digger.yaml", nil
159+
return path.Join(workingDir, "digger.yaml"), nil
160160
}
161161

162162
// Passing this point means digger config file is

pkg/digger/digger_config_test.go

Lines changed: 42 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -47,57 +47,55 @@ func TestDiggerConfigWhenOnlyYamlExists(t *testing.T) {
4747
tempDir, teardown := setUp()
4848
defer teardown()
4949

50-
_, err := os.Create(path.Join(tempDir, "digger.yaml"))
51-
if err != nil {
52-
t.Fatal(err)
53-
}
50+
diggerCfg := `
51+
projects:
52+
- name: prod
53+
branch: /main/
54+
dir: path/to/module/test
55+
workspace: default
56+
`
57+
deleteFile := createFile(path.Join(tempDir, "digger.yaml"), diggerCfg)
58+
defer deleteFile()
5459

5560
dg, err := NewDiggerConfig(tempDir)
5661
assert.NoError(t, err, "expected error to be nil")
5762
assert.NotNil(t, dg, "expected digger config to be not nil")
63+
assert.Equal(t, "path/to/module/test", dg.GetDirectory("prod"))
5864
}
5965

6066
func TestDiggerConfigWhenOnlyYmlExists(t *testing.T) {
6167
tempDir, teardown := setUp()
6268
defer teardown()
6369

64-
_, err := os.Create(path.Join(tempDir, "digger.yml"))
65-
if err != nil {
66-
t.Fatal(err)
67-
}
70+
diggerCfg := `
71+
projects:
72+
- name: dev
73+
branch: /main/
74+
dir: path/to/module
75+
workspace: default
76+
`
77+
deleteFile := createFile(path.Join(tempDir, "digger.yml"), diggerCfg)
78+
defer deleteFile()
6879

6980
dg, err := NewDiggerConfig(tempDir)
7081
assert.NoError(t, err, "expected error to be nil")
7182
assert.NotNil(t, dg, "expected digger config to be not nil")
83+
assert.Equal(t, "path/to/module", dg.GetDirectory("dev"))
7284
}
7385

7486
func TestDefaultValuesForWorkflowConfiguration(t *testing.T) {
7587
tempDir, teardown := setUp()
7688
defer teardown()
7789

78-
f, err := os.Create(path.Join(tempDir, "digger.yaml"))
79-
if err != nil {
80-
log.Fatal(err)
81-
}
82-
83-
defer func(f *os.File) {
84-
err := f.Close()
85-
if err != nil {
86-
87-
}
88-
}(f)
89-
90-
digger_yml := `
90+
diggerCfg := `
9191
projects:
9292
- name: dev
9393
branch: /main/
9494
dir: .
9595
workspace: default
9696
`
97-
_, err2 := f.WriteString(digger_yml)
98-
if err2 != nil {
99-
log.Fatal(err2)
100-
}
97+
deleteFile := createFile(path.Join(tempDir, "digger.yaml"), diggerCfg)
98+
defer deleteFile()
10199

102100
dg, err := NewDiggerConfig(tempDir)
103101
assert.NoError(t, err, "expected error to be nil")
@@ -120,3 +118,22 @@ func deleteTempDir(name string) {
120118
log.Fatal(err)
121119
}
122120
}
121+
122+
func createFile(filepath string, content string) func() {
123+
f, err := os.Create(filepath)
124+
if err != nil {
125+
log.Fatal(err)
126+
}
127+
128+
_, err = f.WriteString(content)
129+
if err != nil {
130+
log.Fatal(err)
131+
}
132+
133+
return func() {
134+
err := f.Close()
135+
if err != nil {
136+
log.Fatal(err)
137+
}
138+
}
139+
}

0 commit comments

Comments
 (0)