mirror of
https://github.com/TECHNOFAB11/jsonnet-bundler.git
synced 2025-12-11 23:50:05 +01:00
refactor: switch to pkg/jsonnetfile
So far, `pkg` and `pkg/jsonnetfile` had overlapping functionality when it came to choosing and loading jsonnetfiles. This fully switches to the separate package `pkg/jsonnetfile` that seems to be created for exactly this purpose
This commit is contained in:
parent
a718f48cd8
commit
71938456ae
10 changed files with 55 additions and 180 deletions
|
|
@ -15,18 +15,11 @@
|
|||
package pkg
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
|
||||
"github.com/jsonnet-bundler/jsonnet-bundler/pkg/jsonnetfile"
|
||||
"github.com/jsonnet-bundler/jsonnet-bundler/spec"
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
const NotExist = "/this/does/not/exist"
|
||||
|
||||
func TestInsertDependency(t *testing.T) {
|
||||
deps := []spec.Dependency{{Name: "test1", Version: "latest"}}
|
||||
dep := spec.Dependency{Name: "test2", Version: "latest"}
|
||||
|
|
@ -40,101 +33,3 @@ func TestInsertDependency(t *testing.T) {
|
|||
t.Fatal("Incorrectly inserted")
|
||||
}
|
||||
}
|
||||
|
||||
func TestFileExists(t *testing.T) {
|
||||
{
|
||||
exists, err := FileExists(NotExist)
|
||||
assert.False(t, exists)
|
||||
assert.Nil(t, err)
|
||||
}
|
||||
{
|
||||
tempFile, err := ioutil.TempFile("", "jb-exists")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
defer func() {
|
||||
err := os.Remove(tempFile.Name())
|
||||
assert.Nil(t, err)
|
||||
}()
|
||||
|
||||
exists, err := FileExists(tempFile.Name())
|
||||
assert.True(t, exists)
|
||||
assert.Nil(t, err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestLoadJsonnetfile(t *testing.T) {
|
||||
empty := spec.JsonnetFile{}
|
||||
|
||||
jsonnetfileContent := `{
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "foobar",
|
||||
"source": {
|
||||
"git": {
|
||||
"remote": "https://github.com/foobar/foobar",
|
||||
"subdir": ""
|
||||
}
|
||||
},
|
||||
"version": "master"
|
||||
}
|
||||
]
|
||||
}
|
||||
`
|
||||
jsonnetFileExpected := spec.JsonnetFile{
|
||||
Dependencies: []spec.Dependency{{
|
||||
Name: "foobar",
|
||||
Source: spec.Source{
|
||||
GitSource: &spec.GitSource{
|
||||
Remote: "https://github.com/foobar/foobar",
|
||||
Subdir: "",
|
||||
},
|
||||
},
|
||||
Version: "master",
|
||||
DepSource: "",
|
||||
}},
|
||||
}
|
||||
|
||||
{
|
||||
jf, err := LoadJsonnetfile(NotExist)
|
||||
assert.Equal(t, empty, jf)
|
||||
assert.Error(t, err)
|
||||
}
|
||||
{
|
||||
tempDir, err := ioutil.TempDir("", "jb-load-jsonnetfile")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer func() {
|
||||
err := os.RemoveAll(tempDir)
|
||||
assert.Nil(t, err)
|
||||
}()
|
||||
|
||||
tempFile := filepath.Join(tempDir, jsonnetfile.File)
|
||||
err = ioutil.WriteFile(tempFile, []byte(`{}`), os.ModePerm)
|
||||
assert.Nil(t, err)
|
||||
|
||||
jf, err := LoadJsonnetfile(tempFile)
|
||||
assert.Nil(t, err)
|
||||
assert.Equal(t, empty, jf)
|
||||
}
|
||||
{
|
||||
tempDir, err := ioutil.TempDir("", "jb-load-jsonnetfile")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer func() {
|
||||
err := os.RemoveAll(tempDir)
|
||||
assert.Nil(t, err)
|
||||
}()
|
||||
|
||||
tempFile := filepath.Join(tempDir, jsonnetfile.File)
|
||||
err = ioutil.WriteFile(tempFile, []byte(jsonnetfileContent), os.ModePerm)
|
||||
assert.Nil(t, err)
|
||||
|
||||
jf, err := LoadJsonnetfile(tempFile)
|
||||
assert.Nil(t, err)
|
||||
assert.Equal(t, jsonnetFileExpected, jf)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue