Use require for Error and NoError

Assert keeps going after failure, but require immediately fails
the tests, making it easier to find the output related to the test
failure, rather than having to comb through a bunch of subsequent
assertion failures. For equality tests, we may or may not want to
continue, but for error checks we almost always want to immediately
fail the test. Exceptions can be changed as-needed.
This commit is contained in:
Karl Isenberg
2024-03-20 13:19:18 -07:00
parent a6ea3e2bb6
commit 43868688d5
53 changed files with 751 additions and 721 deletions

View File

@@ -9,6 +9,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"sigs.k8s.io/kustomize/api/internal/loader"
. "sigs.k8s.io/kustomize/api/resource"
"sigs.k8s.io/kustomize/api/types"
@@ -360,9 +361,9 @@ kind: List
assert.Equal(t, len(test.expectedOut), len(rs))
for i := range rs {
expYaml, err := test.expectedOut[i].AsYAML()
assert.NoError(t, err)
require.NoError(t, err)
actYaml, err := rs[i].AsYAML()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, expYaml, actYaml)
}
})
@@ -634,7 +635,7 @@ data:
assert.Equal(t, len(tc.exp.out), len(rs))
for i := range rs {
actual, err := rs[i].String()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(
t, strings.TrimSpace(tc.exp.out[i]), strings.TrimSpace(actual))
}
@@ -721,7 +722,7 @@ metadata:
t.Run(n, func(t *testing.T) {
nin, _ := kio.FromBytes(tc.input)
res, err := factory.DropLocalNodes(nin)
assert.NoError(t, err)
require.NoError(t, err)
if tc.expected == nil {
assert.Equal(t, 0, len(res))
} else {

View File

@@ -7,6 +7,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
. "sigs.k8s.io/kustomize/api/resource"
kyaml "sigs.k8s.io/kustomize/kyaml/yaml"
)
@@ -37,7 +38,7 @@ repo: https://github.com/kubernetes-sigs/kustomize
}
for _, test := range tests {
actual, err := test.in.Append(test.path).String()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, test.expected, actual)
}
}
@@ -78,7 +79,7 @@ repo: github.com/kubernetes-sigs/kustomize/examples/multibases/dev/
for _, test := range tests {
actual, err := test.in.String()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, test.expected, actual)
}
}
@@ -154,7 +155,7 @@ func TestTransformationsString(t *testing.T) {
}
for _, test := range tests {
actual, err := test.in.String()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, test.expected, actual)
}
}

View File

@@ -157,7 +157,7 @@ spec:
ports:
- containerPort: 80
`))
assert.NoError(t, err)
require.NoError(t, err)
patch, err := factory.FromBytes([]byte(`
apiVersion: apps/v1
kind: Deployment
@@ -172,11 +172,11 @@ spec:
ports:
- containerPort: 777
`))
assert.NoError(t, err)
require.NoError(t, err)
assert.NoError(t, resource.ApplySmPatch(patch))
require.NoError(t, resource.ApplySmPatch(patch))
bytes, err := resource.AsYAML()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, `apiVersion: apps/v1
kind: Deployment
metadata:
@@ -219,7 +219,7 @@ spec:
A: X
B: Y
`))
assert.NoError(t, err)
require.NoError(t, err)
patch, err := factory.FromBytes([]byte(`
apiVersion: example.com/v1
kind: Foo
@@ -233,10 +233,10 @@ spec:
baz:
hello: world
`))
assert.NoError(t, err)
assert.NoError(t, resource.ApplySmPatch(patch))
require.NoError(t, err)
require.NoError(t, resource.ApplySmPatch(patch))
bytes, err := resource.AsYAML()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, `apiVersion: example.com/v1
kind: Foo
metadata:
@@ -260,7 +260,7 @@ metadata:
spec:
numReplicas: 1
`))
assert.NoError(t, err)
require.NoError(t, err)
patch, err := factory.FromBytes([]byte(`
apiVersion: v1
kind: Deployment
@@ -269,10 +269,10 @@ metadata:
spec:
numReplicas: 999
`))
assert.NoError(t, err)
assert.NoError(t, resource.ApplySmPatch(patch))
require.NoError(t, err)
require.NoError(t, resource.ApplySmPatch(patch))
bytes, err := resource.AsYAML()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, `apiVersion: v1
kind: Deployment
metadata:
@@ -448,13 +448,13 @@ spec:
- name: foo
- name: bar
`))
assert.NoError(t, err)
require.NoError(t, err)
patch, err := factory.FromBytes([]byte(tc.patch))
assert.NoError(t, err)
assert.NoError(t, resource.ApplySmPatch(patch))
require.NoError(t, err)
require.NoError(t, resource.ApplySmPatch(patch))
bytes, err := resource.AsYAML()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, tc.expectedOutput, string(bytes))
})
}
@@ -567,13 +567,13 @@ metadata:
name: test
finalizers: ["foo", "bar"]
`))
assert.NoError(t, err)
require.NoError(t, err)
patch, err := factory.FromBytes([]byte(tc.patch))
assert.NoError(t, err)
assert.NoError(t, resource.ApplySmPatch(patch))
require.NoError(t, err)
require.NoError(t, resource.ApplySmPatch(patch))
bytes, err := resource.AsYAML()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, tc.expectedOutput, string(bytes))
})
}
@@ -604,7 +604,7 @@ data:
}
resource.MergeDataMapFrom(patch)
bytes, err := resource.AsYAML()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, `apiVersion: v1
data:
fruit: pear
@@ -650,19 +650,19 @@ spec:
hello: world
`
r1, err := factory.FromBytes([]byte(s1))
assert.NoError(t, err)
require.NoError(t, err)
r2, err := factory.FromBytes([]byte(s2))
assert.NoError(t, err)
assert.NoError(t, r1.ApplySmPatch(r2))
require.NoError(t, err)
require.NoError(t, r1.ApplySmPatch(r2))
bytes, err := r1.AsYAML()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, expected, string(bytes))
r1, _ = factory.FromBytes([]byte(s1))
r2, _ = factory.FromBytes([]byte(s2))
assert.NoError(t, r2.ApplySmPatch(r1))
require.NoError(t, r2.ApplySmPatch(r1))
bytes, err = r2.AsYAML()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, expected, string(bytes))
}
@@ -977,17 +977,17 @@ spec:
for name, test := range tests {
resource, err := factory.FromBytes([]byte(test.base))
assert.NoError(t, err)
require.NoError(t, err)
for _, p := range test.patch {
patch, err := factory.FromBytes([]byte(p))
assert.NoError(t, err, name)
assert.NoError(t, resource.ApplySmPatch(patch), name)
require.NoError(t, err, name)
require.NoError(t, resource.ApplySmPatch(patch), name)
}
bytes, err := resource.AsYAML()
if test.errorExpected {
assert.Error(t, err, name)
require.Error(t, err, name)
} else {
assert.NoError(t, err, name)
require.NoError(t, err, name)
assert.Equal(t, test.expected, string(bytes), name)
}
}
@@ -1387,7 +1387,7 @@ metadata:
spec:
numReplicas: 1
`))
assert.NoError(t, err)
require.NoError(t, err)
gvk := r.GetGvk()
expected := "apps"
@@ -1415,7 +1415,7 @@ metadata:
spec:
numReplicas: 1
`))
assert.NoError(t, err)
require.NoError(t, err)
r.SetGvk(resid.GvkFromString("knd.ver.grp"))
gvk := r.GetGvk()
if expected, actual := "grp", gvk.Group; expected != actual {
@@ -1438,7 +1438,7 @@ metadata:
spec:
numReplicas: 1
`))
assert.NoError(t, err)
require.NoError(t, err)
r.AppendRefBy(resid.FromString("knd1.ver1.gr1/name1.ns1"))
assert.Equal(t, `apiVersion: v1
kind: Deployment
@@ -1476,13 +1476,13 @@ metadata:
spec:
numReplicas: 1
`))
assert.NoError(t, err)
require.NoError(t, err)
origin := &Origin{
Path: "deployment.yaml",
Repo: "github.com/myrepo",
Ref: "master",
}
assert.NoError(t, r.SetOrigin(origin))
require.NoError(t, r.SetOrigin(origin))
assert.Equal(t, `apiVersion: v1
kind: Deployment
metadata:
@@ -1496,7 +1496,7 @@ spec:
numReplicas: 1
`, r.MustString())
or, err := r.GetOrigin()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, origin, or)
}
@@ -1509,7 +1509,7 @@ metadata:
spec:
numReplicas: 1
`))
assert.NoError(t, err)
require.NoError(t, err)
origin1 := &Origin{
Repo: "github.com/myrepo",
Ref: "master",
@@ -1538,7 +1538,7 @@ spec:
},
},
}
assert.NoError(t, r.AddTransformation(origin1))
require.NoError(t, r.AddTransformation(origin1))
assert.Equal(t, `apiVersion: v1
kind: Deployment
metadata:
@@ -1556,7 +1556,7 @@ metadata:
spec:
numReplicas: 1
`, r.MustString())
assert.NoError(t, r.AddTransformation(origin2))
require.NoError(t, r.AddTransformation(origin2))
assert.Equal(t, `apiVersion: v1
kind: Deployment
metadata:
@@ -1581,9 +1581,9 @@ spec:
numReplicas: 1
`, r.MustString())
transformations, err := r.GetTransformations()
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, Transformations{origin1, origin2}, transformations)
assert.NoError(t, r.ClearTransformations())
require.NoError(t, r.ClearTransformations())
assert.Equal(t, `apiVersion: v1
kind: Deployment
metadata: