Handle errors

This commit is contained in:
Mikhail Mazurskiy
2021-06-05 09:43:13 +10:00
parent 0305860078
commit a3ed120efb
25 changed files with 232 additions and 126 deletions

View File

@@ -8,6 +8,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"sigs.k8s.io/kustomize/api/filesys"
"sigs.k8s.io/kustomize/kustomize/v4/commands/internal/kustfile"
testutils_test "sigs.k8s.io/kustomize/kustomize/v4/commands/internal/testutils"
@@ -21,7 +22,8 @@ func TestAddBaseHappyPath(t *testing.T) {
fSys := filesys.MakeFsInMemory()
bases := strings.Split(baseDirectoryPaths, ",")
for _, base := range bases {
fSys.Mkdir(base)
err := fSys.Mkdir(base)
require.NoError(t, err)
}
testutils_test.WriteTestKustomization(fSys)
@@ -41,7 +43,8 @@ func TestAddBaseAlreadyThere(t *testing.T) {
// Create fake directories
bases := strings.Split(baseDirectoryPaths, ",")
for _, base := range bases {
fSys.Mkdir(base)
err := fSys.Mkdir(base)
require.NoError(t, err)
}
testutils_test.WriteTestKustomization(fSys)

View File

@@ -7,6 +7,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"sigs.k8s.io/kustomize/api/filesys"
testutils_test "sigs.k8s.io/kustomize/kustomize/v4/commands/internal/testutils"
)
@@ -21,8 +22,10 @@ sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
func TestAddComponentHappyPath(t *testing.T) {
fSys := filesys.MakeEmptyDirInMemory()
fSys.WriteFile(componentFileName, []byte(componentFileContent))
fSys.WriteFile(componentFileName+"another", []byte(componentFileContent))
err := fSys.WriteFile(componentFileName, []byte(componentFileContent))
require.NoError(t, err)
err = fSys.WriteFile(componentFileName+"another", []byte(componentFileContent))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddComponent(fSys)
@@ -36,7 +39,8 @@ func TestAddComponentHappyPath(t *testing.T) {
func TestAddComponentAlreadyThere(t *testing.T) {
fSys := filesys.MakeFsInMemory()
fSys.WriteFile(componentFileName, []byte(componentFileContent))
err := fSys.WriteFile(componentFileName, []byte(componentFileContent))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddComponent(fSys)
@@ -49,15 +53,16 @@ func TestAddComponentAlreadyThere(t *testing.T) {
func TestAddKustomizationFileAsComponent(t *testing.T) {
fSys := filesys.MakeFsInMemory()
fSys.WriteFile(componentFileName, []byte(componentFileContent))
err := fSys.WriteFile(componentFileName, []byte(componentFileContent))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddComponent(fSys)
args := []string{componentFileName}
assert.NoError(t, cmd.RunE(cmd, args))
require.NoError(t, cmd.RunE(cmd, args))
content, err := testutils_test.ReadTestKustomization(fSys)
assert.NoError(t, err)
require.NoError(t, err)
assert.NotContains(t, string(content), componentFileName)
}
@@ -66,6 +71,5 @@ func TestAddComponentNoArgs(t *testing.T) {
cmd := newCmdAddComponent(fSys)
err := cmd.Execute()
assert.Error(t, err)
assert.Equal(t, "must specify a component file", err.Error())
assert.EqualError(t, err, "must specify a component file")
}

View File

@@ -7,6 +7,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"sigs.k8s.io/kustomize/api/filesys"
valtest_test "sigs.k8s.io/kustomize/api/testutils/valtest"
"sigs.k8s.io/kustomize/api/types"
@@ -163,8 +164,9 @@ func TestAddAnnotationForce(t *testing.T) {
// but trying to add it with --force should
v = valtest_test.MakeHappyMapValidator(t)
cmd = newCmdAddAnnotation(fSys, v.Validator)
cmd.Flag("force").Value.Set("true")
assert.NoError(t, cmd.RunE(cmd, args))
err = cmd.Flag("force").Value.Set("true")
require.NoError(t, err)
require.NoError(t, cmd.RunE(cmd, args))
v.VerifyCall()
}
@@ -266,7 +268,8 @@ func TestAddLabelForce(t *testing.T) {
// but trying to add it with --force should
v = valtest_test.MakeHappyMapValidator(t)
cmd = newCmdAddLabel(fSys, v.Validator)
cmd.Flag("force").Value.Set("true")
err = cmd.Flag("force").Value.Set("true")
require.NoError(t, err)
assert.NoError(t, cmd.RunE(cmd, args))
v.VerifyCall()
}

View File

@@ -8,6 +8,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"sigs.k8s.io/kustomize/api/filesys"
testutils_test "sigs.k8s.io/kustomize/kustomize/v4/commands/internal/testutils"
)
@@ -28,7 +29,8 @@ Lorem ipsum dolor sit amet, consectetur adipiscing elit,
func TestAddPatchWithFilePath(t *testing.T) {
fSys := filesys.MakeEmptyDirInMemory()
fSys.WriteFile(patchFileName, []byte(patchFileContent))
err := fSys.WriteFile(patchFileName, []byte(patchFileContent))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddPatch(fSys)
@@ -53,7 +55,8 @@ func TestAddPatchWithFilePath(t *testing.T) {
func TestAddPatchWithPatchContent(t *testing.T) {
fSys := filesys.MakeEmptyDirInMemory()
fSys.WriteFile(patchFileName, []byte(patchFileContent))
err := fSys.WriteFile(patchFileName, []byte(patchFileContent))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddPatch(fSys)
@@ -78,7 +81,8 @@ func TestAddPatchWithPatchContent(t *testing.T) {
func TestAddPatchAlreadyThere(t *testing.T) {
fSys := filesys.MakeEmptyDirInMemory()
fSys.WriteFile(patchFileName, []byte(patchFileContent))
err := fSys.WriteFile(patchFileName, []byte(patchFileContent))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddPatch(fSys)

View File

@@ -7,6 +7,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"sigs.k8s.io/kustomize/api/filesys"
testutils_test "sigs.k8s.io/kustomize/kustomize/v4/commands/internal/testutils"
)
@@ -21,8 +22,10 @@ sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
func TestAddResourceHappyPath(t *testing.T) {
fSys := filesys.MakeEmptyDirInMemory()
fSys.WriteFile(resourceFileName, []byte(resourceFileContent))
fSys.WriteFile(resourceFileName+"another", []byte(resourceFileContent))
err := fSys.WriteFile(resourceFileName, []byte(resourceFileContent))
require.NoError(t, err)
err = fSys.WriteFile(resourceFileName+"another", []byte(resourceFileContent))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddResource(fSys)
@@ -36,7 +39,8 @@ func TestAddResourceHappyPath(t *testing.T) {
func TestAddResourceAlreadyThere(t *testing.T) {
fSys := filesys.MakeFsInMemory()
fSys.WriteFile(resourceFileName, []byte(resourceFileContent))
err := fSys.WriteFile(resourceFileName, []byte(resourceFileContent))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddResource(fSys)
@@ -49,7 +53,8 @@ func TestAddResourceAlreadyThere(t *testing.T) {
func TestAddKustomizationFileAsResource(t *testing.T) {
fSys := filesys.MakeFsInMemory()
fSys.WriteFile(resourceFileName, []byte(resourceFileContent))
err := fSys.WriteFile(resourceFileName, []byte(resourceFileContent))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddResource(fSys)

View File

@@ -7,6 +7,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"sigs.k8s.io/kustomize/api/filesys"
"sigs.k8s.io/kustomize/kustomize/v4/commands/internal/kustfile"
testutils_test "sigs.k8s.io/kustomize/kustomize/v4/commands/internal/testutils"
@@ -22,8 +23,10 @@ sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
func TestAddTransformerHappyPath(t *testing.T) {
fSys := filesys.MakeEmptyDirInMemory()
fSys.WriteFile(transformerFileName, []byte(transformerFileContent))
fSys.WriteFile(transformerFileName+"another", []byte(transformerFileContent))
err := fSys.WriteFile(transformerFileName, []byte(transformerFileContent))
require.NoError(t, err)
err = fSys.WriteFile(transformerFileName+"another", []byte(transformerFileContent))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddTransformer(fSys)
@@ -37,7 +40,8 @@ func TestAddTransformerHappyPath(t *testing.T) {
func TestAddTransformerAlreadyThere(t *testing.T) {
fSys := filesys.MakeEmptyDirInMemory()
fSys.WriteFile(transformerFileName, []byte(transformerFileName))
err := fSys.WriteFile(transformerFileName, []byte(transformerFileName))
require.NoError(t, err)
testutils_test.WriteTestKustomization(fSys)
cmd := newCmdAddTransformer(fSys)
@@ -61,18 +65,18 @@ func TestAddTransformerNoArgs(t *testing.T) {
cmd := newCmdAddTransformer(fSys)
err := cmd.Execute()
assert.Error(t, err)
assert.Equal(t, "must specify a transformer file", err.Error())
assert.EqualError(t, err, "must specify a transformer file")
}
func TestAddTransformerMissingKustomizationYAML(t *testing.T) {
fSys := filesys.MakeEmptyDirInMemory()
fSys.WriteFile(transformerFileName, []byte(transformerFileContent))
fSys.WriteFile(transformerFileName+"another", []byte(transformerFileContent))
err := fSys.WriteFile(transformerFileName, []byte(transformerFileContent))
require.NoError(t, err)
err = fSys.WriteFile(transformerFileName+"another", []byte(transformerFileContent))
require.NoError(t, err)
cmd := newCmdAddTransformer(fSys)
args := []string{transformerFileName + "*"}
err := cmd.RunE(cmd, args)
assert.Error(t, err)
assert.Equal(t, "Missing kustomization file 'kustomization.yaml'.\n", err.Error())
err = cmd.RunE(cmd, args)
assert.EqualError(t, err, "Missing kustomization file 'kustomization.yaml'.\n")
}

View File

@@ -8,7 +8,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"sigs.k8s.io/kustomize/api/filesys"
)
@@ -88,13 +88,17 @@ func TestDataConfigValidation_Flags(t *testing.T) {
func TestExpandFileSource(t *testing.T) {
fSys := filesys.MakeEmptyDirInMemory()
fSys.Create("dir/fa1")
fSys.Create("dir/fa2")
fSys.Create("dir/readme")
_, err := fSys.Create("dir/fa1")
require.NoError(t, err)
_, err = fSys.Create("dir/fa2")
require.NoError(t, err)
_, err = fSys.Create("dir/readme")
require.NoError(t, err)
fa := flagsAndArgs{
FileSources: []string{"dir/fa*"},
}
fa.ExpandFileSource(fSys)
err = fa.ExpandFileSource(fSys)
require.NoError(t, err)
expected := []string{
"dir/fa1",
"dir/fa2",
@@ -106,14 +110,19 @@ func TestExpandFileSource(t *testing.T) {
func TestExpandFileSourceWithKey(t *testing.T) {
fSys := filesys.MakeEmptyDirInMemory()
fSys.Create("dir/faaaaaaaaaabbbbbbbbbccccccccccccccccc")
fSys.Create("dir/foobar")
fSys.Create("dir/simplebar")
fSys.Create("dir/readme")
_, err := fSys.Create("dir/faaaaaaaaaabbbbbbbbbccccccccccccccccc")
require.NoError(t, err)
_, err = fSys.Create("dir/foobar")
require.NoError(t, err)
_, err = fSys.Create("dir/simplebar")
require.NoError(t, err)
_, err = fSys.Create("dir/readme")
require.NoError(t, err)
fa := flagsAndArgs{
FileSources: []string{"foo-key=dir/fa*", "bar-key=dir/foobar", "dir/simplebar"},
}
fa.ExpandFileSource(fSys)
err = fa.ExpandFileSource(fSys)
require.NoError(t, err)
expected := []string{
"foo-key=dir/faaaaaaaaaabbbbbbbbbccccccccccccccccc",
"bar-key=dir/foobar",
@@ -126,13 +135,16 @@ func TestExpandFileSourceWithKey(t *testing.T) {
func TestExpandFileSourceWithKeyAndError(t *testing.T) {
fSys := filesys.MakeFsInMemory()
fSys.Create("dir/fa1")
fSys.Create("dir/fa2")
fSys.Create("dir/readme")
_, err := fSys.Create("dir/fa1")
require.NoError(t, err)
_, err = fSys.Create("dir/fa2")
require.NoError(t, err)
_, err = fSys.Create("dir/readme")
require.NoError(t, err)
fa := flagsAndArgs{
FileSources: []string{"foo-key=dir/fa*"},
}
err := fa.ExpandFileSource(fSys)
err = fa.ExpandFileSource(fSys)
if err == nil {
t.Fatalf("FileSources should not be correctly expanded: %v", fa.FileSources)
}

View File

@@ -9,7 +9,7 @@ import (
"testing"
"github.com/google/go-cmp/cmp"
"github.com/stretchr/testify/require"
"sigs.k8s.io/kustomize/api/filesys"
"sigs.k8s.io/kustomize/api/konfig"
"sigs.k8s.io/kustomize/api/types"
@@ -125,7 +125,8 @@ configMapGenerator:
`
for _, n := range konfig.RecognizedKustomizationFileNames() {
fSys := filesys.MakeFsInMemory()
fSys.WriteFile(n, []byte(kcontent))
err := fSys.WriteFile(n, []byte(kcontent))
require.NoError(t, err)
k, err := NewKustomizationFile(fSys)
if err != nil {
t.Fatalf("Unexpected Error: %v", err)