diff options
| author | Dave Henderson <dhenderson@gmail.com> | 2020-05-20 21:35:00 -0400 |
|---|---|---|
| committer | Dave Henderson <dhenderson@gmail.com> | 2020-05-20 21:35:00 -0400 |
| commit | 291721ca318ab1a20d3da5b1ef0ffdbc36bf08bf (patch) | |
| tree | 174de5994f52805135c421ec6b2701d0b8779435 /data/datasource_merge_test.go | |
| parent | 5e6a0771201ec6ff67dfcd45447a2ba8be615ba3 (diff) | |
Add test for relative paths in merge datasources
Signed-off-by: Dave Henderson <dhenderson@gmail.com>
Diffstat (limited to 'data/datasource_merge_test.go')
| -rw-r--r-- | data/datasource_merge_test.go | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/data/datasource_merge_test.go b/data/datasource_merge_test.go index b08148d5..a7427154 100644 --- a/data/datasource_merge_test.go +++ b/data/datasource_merge_test.go @@ -2,6 +2,8 @@ package data import ( "net/url" + "os" + "path/filepath" "testing" "github.com/spf13/afero" @@ -28,6 +30,17 @@ func TestReadMerge(t *testing.T) { f, _ = fs.Create("/tmp/textfile.txt") _, _ = f.WriteString(`plain text...`) + wd, _ := os.Getwd() + _ = fs.Mkdir(wd, 0777) + f, _ = fs.Create(filepath.Join(wd, "jsonfile.json")) + _, _ = f.WriteString(jsonContent) + f, _ = fs.Create(filepath.Join(wd, "array.json")) + _, _ = f.WriteString(arrayContent) + f, _ = fs.Create(filepath.Join(wd, "yamlfile.yaml")) + _, _ = f.WriteString(yamlContent) + f, _ = fs.Create(filepath.Join(wd, "textfile.txt")) + _, _ = f.WriteString(`plain text...`) + source := &Source{Alias: "foo", URL: mustParseURL("merge:file:///tmp/jsonfile.json|file:///tmp/yamlfile.yaml")} source.fs = fs d := &Data{ @@ -51,6 +64,11 @@ func TestReadMerge(t *testing.T) { assert.NoError(t, err) assert.Equal(t, mergedContent, string(actual)) + source.URL = mustParseURL("merge:./jsonfile.json|baz") + actual, err = d.readMerge(source) + assert.NoError(t, err) + assert.Equal(t, mergedContent, string(actual)) + source.URL = mustParseURL("merge:file:///tmp/jsonfile.json") _, err = d.readMerge(source) assert.Error(t, err) |
