mirror of
https://github.com/helm/helm.git
synced 2026-08-09 01:21:20 +00:00
chore(internal): refactor: finer tests conversions to testify part 1
#### Description refactor: finer tests conversions to testify in internal/chart/v3/util Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
This commit is contained in:
@@ -114,7 +114,7 @@ func TestBadValuesV3(t *testing.T) {
|
||||
func TestBadCrdFileV3(t *testing.T) {
|
||||
var values map[string]any
|
||||
m := RunAll(badCrdFileDir, values, namespace).Messages
|
||||
assert.Lenf(t, m, 2, "All didn't fail with expected errors, got %#v", m)
|
||||
require.Lenf(t, m, 2, "All didn't fail with expected errors, got %#v", m)
|
||||
require.ErrorContains(t, m[0].Err, "apiVersion is not in 'apiextensions.k8s.io'")
|
||||
assert.ErrorContains(t, m[1].Err, "object kind is not 'CustomResourceDefinition'")
|
||||
}
|
||||
@@ -122,8 +122,7 @@ func TestBadCrdFileV3(t *testing.T) {
|
||||
func TestGoodChart(t *testing.T) {
|
||||
var values map[string]any
|
||||
m := RunAll(goodChartDir, values, namespace).Messages
|
||||
if len(m) != 0 {
|
||||
t.Error("All returned linter messages when it shouldn't have")
|
||||
if !assert.Empty(t, m, "All returned linter messages when it shouldn't have") {
|
||||
for i, msg := range m {
|
||||
t.Logf("Message %d: %s", i, msg)
|
||||
}
|
||||
@@ -143,13 +142,12 @@ func TestHelmCreateChart(t *testing.T) {
|
||||
// Note: we test with strict=true here, even though others have
|
||||
// strict = false.
|
||||
m := RunAll(createdChart, values, namespace, WithSkipSchemaValidation(true)).Messages
|
||||
if ll := len(m); ll != 1 {
|
||||
t.Errorf("All should have had exactly 1 error. Got %d", ll)
|
||||
if !assert.Len(t, m, 1, "All should have had exactly 1 error") {
|
||||
for i, msg := range m {
|
||||
t.Logf("Message %d: %s", i, msg.Error())
|
||||
}
|
||||
} else if msg := m[0].Err.Error(); !strings.Contains(msg, "icon is recommended") {
|
||||
t.Errorf("Unexpected lint error: %s", msg)
|
||||
} else {
|
||||
assert.ErrorContains(t, m[0].Err, "icon is recommended")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -192,8 +190,7 @@ func TestHelmCreateChart_CheckDeprecatedWarnings(t *testing.T) {
|
||||
func TestSubChartValuesChart(t *testing.T) {
|
||||
var values map[string]any
|
||||
m := RunAll(subChartValuesDir, values, namespace).Messages
|
||||
if len(m) != 0 {
|
||||
t.Error("All returned linter messages when it shouldn't have")
|
||||
if !assert.Empty(t, m, "All returned linter messages when it shouldn't have") {
|
||||
for i, msg := range m {
|
||||
t.Logf("Message %d: %s", i, msg)
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"helm.sh/helm/v4/internal/chart/v3/lint/support"
|
||||
)
|
||||
@@ -33,7 +34,7 @@ func TestInvalidCrdsDir(t *testing.T) {
|
||||
Crds(&linter)
|
||||
res := linter.Messages
|
||||
|
||||
assert.Len(t, res, 1)
|
||||
require.Len(t, res, 1)
|
||||
assert.ErrorContains(t, res[0].Err, "not a directory")
|
||||
}
|
||||
|
||||
|
||||
@@ -199,12 +199,12 @@ func TestDeprecatedAPIFails(t *testing.T) {
|
||||
|
||||
linter := support.Linter{ChartDir: filepath.Join(tmpdir, mychart.Name())}
|
||||
Templates(&linter, values, namespace, strict)
|
||||
if l := len(linter.Messages); l != 1 {
|
||||
if !assert.Len(t, linter.Messages, 1) {
|
||||
for i, msg := range linter.Messages {
|
||||
t.Logf("Message %d: %s", i, msg)
|
||||
}
|
||||
t.Fatalf("Expected 1 lint error, got %d", l)
|
||||
}
|
||||
require.Len(t, linter.Messages, 1, "Expected 1 lint error")
|
||||
|
||||
var err deprecatedAPIError
|
||||
require.ErrorAs(t, linter.Messages[0].Err, &err, "Expected error to be of type deprecatedAPIError")
|
||||
@@ -252,8 +252,7 @@ func TestStrictTemplateParsingMapError(t *testing.T) {
|
||||
ChartDir: filepath.Join(dir, ch.Metadata.Name),
|
||||
}
|
||||
Templates(linter, ch.Values, namespace, strict)
|
||||
if len(linter.Messages) != 0 {
|
||||
t.Errorf("expected zero messages, got %d", len(linter.Messages))
|
||||
if !assert.Empty(t, linter.Messages, "expected zero messages") {
|
||||
for i, msg := range linter.Messages {
|
||||
t.Logf("Message %d: %q", i, msg)
|
||||
}
|
||||
@@ -376,12 +375,12 @@ func TestEmptyWithCommentsManifests(t *testing.T) {
|
||||
|
||||
linter := support.Linter{ChartDir: filepath.Join(tmpdir, mychart.Name())}
|
||||
Templates(&linter, values, namespace, strict)
|
||||
if l := len(linter.Messages); l > 0 {
|
||||
if !assert.Empty(t, linter.Messages) {
|
||||
for i, msg := range linter.Messages {
|
||||
t.Logf("Message %d: %s", i, msg)
|
||||
}
|
||||
t.Fatalf("Expected 0 lint errors, got %d", l)
|
||||
}
|
||||
require.Empty(t, linter.Messages, "Expected 0 lint errors")
|
||||
}
|
||||
func TestValidateListAnnotations(t *testing.T) {
|
||||
md := &k8sYamlStruct{
|
||||
|
||||
@@ -58,11 +58,11 @@ func TestRunLinterRule(t *testing.T) {
|
||||
|
||||
func TestMessage(t *testing.T) {
|
||||
m := Message{ErrorSev, "Chart.yaml", errors.New("Foo")}
|
||||
require.EqualErrorf(t, m, "[ERROR] Chart.yaml: Foo", "Unexpected output: %s", m.Error())
|
||||
require.EqualError(t, m, "[ERROR] Chart.yaml: Foo")
|
||||
|
||||
m = Message{WarningSev, "templates/", errors.New("Bar")}
|
||||
require.EqualErrorf(t, m, "[WARNING] templates/: Bar", "Unexpected output: %s", m.Error())
|
||||
require.EqualError(t, m, "[WARNING] templates/: Bar")
|
||||
|
||||
m = Message{InfoSev, "templates/rc.yaml", errors.New("FooBar")}
|
||||
assert.EqualErrorf(t, m, "[INFO] templates/rc.yaml: FooBar", "Unexpected output: %s", m.Error())
|
||||
assert.EqualError(t, m, "[INFO] templates/rc.yaml: FooBar")
|
||||
}
|
||||
|
||||
@@ -25,7 +25,6 @@ import (
|
||||
"log"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"reflect"
|
||||
"runtime"
|
||||
"strings"
|
||||
"testing"
|
||||
@@ -201,11 +200,9 @@ icon: https://example.com/64x64.png
|
||||
require.NoError(t, err, "Expected good files to be loaded")
|
||||
assert.Equal(t, "frobnitz", c.Name(), "Expected chart name to be 'frobnitz', got %s", c.Name())
|
||||
assert.Equal(t, "some values", c.Values["var"], "Expected chart values to be populated with default values")
|
||||
assert.Len(t, c.Raw, 5, "Expected %d files, got %d", 5, len(c.Raw))
|
||||
|
||||
assert.Len(t, c.Raw, 5, "Expected 5 files")
|
||||
assert.True(t, bytes.Equal(c.Schema, []byte("type: Values")), "Expected chart schema to be populated with default values")
|
||||
|
||||
assert.Len(t, c.Templates, 2, "Expected number of templates == 2, got %d", len(c.Templates))
|
||||
assert.Len(t, c.Templates, 2, "Expected 2 templates")
|
||||
|
||||
_, err = LoadFiles([]*archive.BufferedFile{})
|
||||
require.Error(t, err, "Expected err to be non-nil")
|
||||
@@ -417,7 +414,7 @@ foo:
|
||||
t.Run(testName, func(tt *testing.T) {
|
||||
values, err := LoadValues(bytes.NewReader(testCase.data))
|
||||
require.NoError(tt, err)
|
||||
assert.Truef(tt, reflect.DeepEqual(values, testCase.expctedValues), "Expected values: %v, got %v", testCase.expctedValues, values)
|
||||
assert.Equalf(tt, testCase.expctedValues, values, "Expected values: %v, got %v", testCase.expctedValues, values)
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -445,16 +442,13 @@ func TestMergeValuesV3(t *testing.T) {
|
||||
}
|
||||
|
||||
testMap := MergeMaps(flatMap, nestedMap)
|
||||
equal := reflect.DeepEqual(testMap, nestedMap)
|
||||
assert.True(t, equal, "Expected a nested map to overwrite a flat value. Expected: %v, got %v", nestedMap, testMap)
|
||||
assert.Equal(t, testMap, nestedMap, "Expected a nested map to overwrite a flat value. Expected: %v, got %v", nestedMap, testMap)
|
||||
|
||||
testMap = MergeMaps(nestedMap, flatMap)
|
||||
equal = reflect.DeepEqual(testMap, flatMap)
|
||||
assert.True(t, equal, "Expected a flat value to overwrite a map. Expected: %v, got %v", flatMap, testMap)
|
||||
assert.Equal(t, testMap, flatMap, "Expected a flat value to overwrite a map. Expected: %v, got %v", flatMap, testMap)
|
||||
|
||||
testMap = MergeMaps(nestedMap, anotherNestedMap)
|
||||
equal = reflect.DeepEqual(testMap, anotherNestedMap)
|
||||
assert.True(t, equal, "Expected a nested map to overwrite another nested map. Expected: %v, got %v", anotherNestedMap, testMap)
|
||||
assert.Equal(t, testMap, anotherNestedMap, "Expected a nested map to overwrite another nested map. Expected: %v, got %v", anotherNestedMap, testMap)
|
||||
|
||||
testMap = MergeMaps(anotherFlatMap, anotherNestedMap)
|
||||
expectedMap := map[string]any{
|
||||
@@ -465,26 +459,23 @@ func TestMergeValuesV3(t *testing.T) {
|
||||
"awesome": "stuff",
|
||||
},
|
||||
}
|
||||
equal = reflect.DeepEqual(testMap, expectedMap)
|
||||
assert.True(t, equal, "Expected a map with different keys to merge properly with another map. Expected: %v, got %v", expectedMap, testMap)
|
||||
assert.Equal(t, expectedMap, testMap, "Expected a map with different keys to merge properly with another map. Expected: %v, got %v", expectedMap, testMap)
|
||||
}
|
||||
|
||||
func verifyChart(t *testing.T, c *chart.Chart) {
|
||||
t.Helper()
|
||||
require.NotEmpty(t, c.Name(), "No chart metadata found on %v", c)
|
||||
t.Logf("Verifying chart %s", c.Name())
|
||||
assert.Len(t, c.Templates, 1, "Expected 1 template, got %d", len(c.Templates))
|
||||
assert.Len(t, c.Templates, 1, "Expected 1 template")
|
||||
|
||||
numfiles := 6
|
||||
if len(c.Files) != numfiles {
|
||||
t.Errorf("Expected %d extra files, got %d", numfiles, len(c.Files))
|
||||
if !assert.Len(t, c.Files, numfiles, "Expected %d extra files", numfiles) {
|
||||
for _, n := range c.Files {
|
||||
t.Logf("\t%s", n.Name)
|
||||
}
|
||||
}
|
||||
|
||||
if len(c.Dependencies()) != 2 {
|
||||
t.Errorf("Expected 2 dependencies, got %d (%v)", len(c.Dependencies()), c.Dependencies())
|
||||
if !assert.Len(t, c.Dependencies(), 2, "Expected 2 dependencies") {
|
||||
for _, d := range c.Dependencies() {
|
||||
t.Logf("\tSubchart: %s\n", d.Name())
|
||||
}
|
||||
@@ -509,7 +500,7 @@ func verifyChart(t *testing.T, c *chart.Chart) {
|
||||
|
||||
func verifyDependencies(t *testing.T, c *chart.Chart) {
|
||||
t.Helper()
|
||||
assert.Len(t, c.Metadata.Dependencies, 2, "Expected 2 dependencies, got %d", len(c.Metadata.Dependencies))
|
||||
assert.Len(t, c.Metadata.Dependencies, 2, "Expected 2 dependencies")
|
||||
tests := []*chart.Dependency{
|
||||
{Name: "alpine", Version: "0.1.0", Repository: "https://example.com/charts"},
|
||||
{Name: "mariner", Version: "4.3.2", Repository: "https://example.com/charts"},
|
||||
|
||||
@@ -36,36 +36,21 @@ func TestLoadChartfile(t *testing.T) {
|
||||
func verifyChartfile(t *testing.T, f *chart.Metadata, name string) {
|
||||
t.Helper()
|
||||
require.NotNil(t, f, "Failed verifyChartfile because f is nil")
|
||||
|
||||
assert.Equal(t, name, f.Name, "Expected %s, got %s", name, f.Name)
|
||||
|
||||
assert.Equal(t, "This is a frobnitz.", f.Description, "Unexpected description %q", f.Description)
|
||||
|
||||
assert.Equal(t, "1.2.3", f.Version, "Unexpected version %q", f.Version)
|
||||
|
||||
assert.Len(t, f.Maintainers, 2, "Expected 2 maintainers, got %d", len(f.Maintainers))
|
||||
|
||||
assert.Equal(t, "The Helm Team", f.Maintainers[0].Name, "Unexpected maintainer name.")
|
||||
|
||||
assert.Equal(t, "nobody@example.com", f.Maintainers[1].Email, "Unexpected maintainer email.")
|
||||
|
||||
require.Len(t, f.Sources, 1, "Unexpected number of sources")
|
||||
|
||||
assert.Equal(t, "https://example.com/foo/bar", f.Sources[0], "Expected https://example.com/foo/bar, got %s", f.Sources)
|
||||
|
||||
assert.Equal(t, "http://example.com", f.Home, "Unexpected home.")
|
||||
|
||||
assert.Equal(t, "https://example.com/64x64.png", f.Icon, "Unexpected icon: %q", f.Icon)
|
||||
|
||||
require.Len(t, f.Keywords, 3, "Unexpected keywords")
|
||||
|
||||
require.Len(t, f.Annotations, 2, "Unexpected annotations")
|
||||
|
||||
want, got := "extravalue", f.Annotations["extrakey"]
|
||||
assert.Equalf(t, want, got, "Want %q, but got %q", want, got)
|
||||
|
||||
want, got = "anothervalue", f.Annotations["anotherkey"]
|
||||
assert.Equalf(t, want, got, "Want %q, but got %q", want, got)
|
||||
assert.Equal(t, "extravalue", f.Annotations["extrakey"])
|
||||
assert.Equal(t, "anothervalue", f.Annotations["anotherkey"])
|
||||
|
||||
kk := []string{"frobnitz", "sprocket", "dodad"}
|
||||
for i, k := range f.Keywords {
|
||||
|
||||
@@ -101,7 +101,7 @@ func TestExpand(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
expectLen := 11
|
||||
assert.Len(t, fis, expectLen, "Expected %d files, but got %d", expectLen, len(fis))
|
||||
assert.Len(t, fis, expectLen, "Expected %d files", expectLen)
|
||||
|
||||
for _, fi := range fis {
|
||||
expect, err := os.Stat(filepath.Join("testdata", "frobnitz", fi.Name()))
|
||||
@@ -154,7 +154,7 @@ func TestExpandFile(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
expectLen := 11
|
||||
assert.Len(t, fis, expectLen, "Expected %d files, but got %d", expectLen, len(fis))
|
||||
assert.Len(t, fis, expectLen, "Expected %d files", expectLen)
|
||||
|
||||
for _, fi := range fis {
|
||||
expect, err := os.Stat(filepath.Join("testdata", "frobnitz", fi.Name()))
|
||||
|
||||
@@ -69,9 +69,8 @@ func TestSave(t *testing.T) {
|
||||
c2, err := loader.LoadFile(where)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, c.Name(), c2.Name(), "Expected chart archive to have %q, got %q", c.Name(), c2.Name())
|
||||
if len(c2.Files) != 1 || c2.Files[0].Name != "scheherazade/shahryar.txt" {
|
||||
t.Fatal("Files data did not match")
|
||||
}
|
||||
require.Len(t, c2.Files, 1, "Files data did not match")
|
||||
require.Equal(t, "scheherazade/shahryar.txt", c2.Files[0].Name, "Files data did not match")
|
||||
|
||||
if !bytes.Equal(c.Schema, c2.Schema) {
|
||||
indentation := 4
|
||||
|
||||
@@ -67,10 +67,10 @@ func mockArchiveServer() *httptest.Server {
|
||||
if !strings.HasSuffix(r.URL.Path, ".tar.gz") {
|
||||
w.Header().Add("Content-Type", "text/html")
|
||||
fmt.Fprintln(w, "broken")
|
||||
return
|
||||
} else {
|
||||
w.Header().Add("Content-Type", "application/gzip")
|
||||
fmt.Fprintln(w, "test")
|
||||
}
|
||||
w.Header().Add("Content-Type", "application/gzip")
|
||||
fmt.Fprintln(w, "test")
|
||||
}))
|
||||
}
|
||||
|
||||
@@ -221,22 +221,22 @@ func TestExtract(t *testing.T) {
|
||||
expectedReadmePerm := os.FileMode(0o777 &^ currentUmask)
|
||||
|
||||
pluginYAMLFullPath := filepath.Join(tempDir, "plugin.yaml")
|
||||
if info, err := os.Stat(pluginYAMLFullPath); err != nil {
|
||||
info, err := os.Stat(pluginYAMLFullPath)
|
||||
if err != nil {
|
||||
require.NotErrorIs(t, err, fs.ErrNotExist, "Expected %s to exist but doesn't", pluginYAMLFullPath)
|
||||
t.Fatal(err)
|
||||
} else {
|
||||
require.Equalf(t, expectedPluginYAMLPerm, info.Mode().Perm(), "Expected %s to have %o mode but has %o (umask: %o)",
|
||||
pluginYAMLFullPath, expectedPluginYAMLPerm, info.Mode().Perm(), currentUmask)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
require.Equalf(t, expectedPluginYAMLPerm, info.Mode().Perm(), "Expected %s to have %o mode but has %o (umask: %o)",
|
||||
pluginYAMLFullPath, expectedPluginYAMLPerm, info.Mode().Perm(), currentUmask)
|
||||
|
||||
readmeFullPath := filepath.Join(tempDir, "README.md")
|
||||
if info, err := os.Stat(readmeFullPath); err != nil {
|
||||
info, err = os.Stat(readmeFullPath)
|
||||
if err != nil {
|
||||
require.NotErrorIs(t, err, fs.ErrNotExist, "Expected %s to exist but doesn't", readmeFullPath)
|
||||
t.Fatal(err)
|
||||
} else {
|
||||
require.Equalf(t, expectedReadmePerm, info.Mode().Perm(), "Expected %s to have %o mode but has %o (umask: %o)",
|
||||
readmeFullPath, expectedReadmePerm, info.Mode().Perm(), currentUmask)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
require.Equalf(t, expectedReadmePerm, info.Mode().Perm(), "Expected %s to have %o mode but has %o (umask: %o)",
|
||||
readmeFullPath, expectedReadmePerm, info.Mode().Perm(), currentUmask)
|
||||
}
|
||||
|
||||
func TestCleanJoin(t *testing.T) {
|
||||
|
||||
@@ -34,8 +34,6 @@ func TestIsRemoteHTTPArchive(t *testing.T) {
|
||||
|
||||
// Test with invalid extension and unreachable server
|
||||
assert.False(t, isRemoteHTTPArchive("https://127.0.0.1:123/fake/plugin-1.2.3.notanarchive"), "Bad URL without valid extension should not succeed")
|
||||
|
||||
assert.True(t, isRemoteHTTPArchive(source), "Expected %q to be a valid archive URL", source)
|
||||
|
||||
assert.False(t, isRemoteHTTPArchive(source+"-not-an-extension"), "Expected media type match to fail")
|
||||
}
|
||||
|
||||
@@ -96,16 +96,14 @@ func TestVCSInstallerNonExistentVersion(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
// ensure a VCSInstaller was returned
|
||||
_, ok := i.(*VCSInstaller)
|
||||
require.True(t, ok, "expected a VCSInstaller")
|
||||
require.IsType(t, &VCSInstaller{}, i, "expected a VCSInstaller")
|
||||
|
||||
if err := Install(i); err == nil {
|
||||
t.Fatal("expected error for version does not exists, got none")
|
||||
} else if strings.Contains(err.Error(), "Could not resolve host: github.com") {
|
||||
err = Install(i)
|
||||
require.Error(t, err, "expected error for version does not exists, got none")
|
||||
if strings.Contains(err.Error(), "Could not resolve host: github.com") {
|
||||
t.Skip("Unable to run test without Internet access")
|
||||
} else {
|
||||
require.EqualErrorf(t, err, fmt.Sprintf("requested version %q does not exist for plugin %q", version, source), "expected error for version does not exists")
|
||||
}
|
||||
require.EqualErrorf(t, err, fmt.Sprintf("requested version %q does not exist for plugin %q", version, source), "expected error for version does not exists")
|
||||
}
|
||||
func TestVCSInstallerUpdate(t *testing.T) {
|
||||
ensure.HelmHome(t)
|
||||
@@ -116,19 +114,16 @@ func TestVCSInstallerUpdate(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
// ensure a VCSInstaller was returned
|
||||
_, ok := i.(*VCSInstaller)
|
||||
require.True(t, ok, "expected a VCSInstaller")
|
||||
require.IsType(t, &VCSInstaller{}, i, "expected a VCSInstaller")
|
||||
|
||||
require.EqualErrorf(t, Update(i), "plugin does not exist", "expected error for plugin does not exist")
|
||||
|
||||
// Install plugin before update
|
||||
if err := Install(i); err != nil {
|
||||
if strings.Contains(err.Error(), "Could not resolve host: github.com") {
|
||||
t.Skip("Unable to run test without Internet access")
|
||||
} else {
|
||||
t.Fatal(err)
|
||||
}
|
||||
err = Install(i)
|
||||
if err != nil && strings.Contains(err.Error(), "Could not resolve host: github.com") {
|
||||
t.Skip("Unable to run test without Internet access")
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
// Test FindSource method for positive result
|
||||
pluginInfo, err := FindSource(i.Path())
|
||||
|
||||
@@ -16,7 +16,6 @@ limitations under the License.
|
||||
package plugin
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
"runtime"
|
||||
"testing"
|
||||
|
||||
@@ -39,7 +38,7 @@ func TestPrepareCommand(t *testing.T) {
|
||||
cmd, args, err := PrepareCommands(platformCommand, true, []string{}, env)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, cmdMain, cmd, "Expected %q, got %q", cmdMain, cmd)
|
||||
require.Truef(t, reflect.DeepEqual(args, cmdArgs), "Expected %v, got %v", cmdArgs, args)
|
||||
require.Equalf(t, args, cmdArgs, "Expected %v, got %v", cmdArgs, args)
|
||||
}
|
||||
|
||||
func TestPrepareCommandExtraArgs(t *testing.T) {
|
||||
@@ -111,7 +110,7 @@ func TestPrepareCommands(t *testing.T) {
|
||||
cmd, args, err := PrepareCommands(cmds, true, []string{}, env)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, cmdMain, cmd, "Expected %q, got %q", cmdMain, cmd)
|
||||
require.Truef(t, reflect.DeepEqual(args, cmdArgs), "Expected %v, got %v", cmdArgs, args)
|
||||
require.Equalf(t, args, cmdArgs, "Expected %v, got %v", cmdArgs, args)
|
||||
}
|
||||
|
||||
func TestPrepareCommandsExtraArgs(t *testing.T) {
|
||||
@@ -132,7 +131,7 @@ func TestPrepareCommandsExtraArgs(t *testing.T) {
|
||||
cmd, args, err := PrepareCommands(cmds, true, extraArgs, env)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, cmdMain, cmd, "Expected %q, got %q", cmdMain, cmd)
|
||||
require.Truef(t, reflect.DeepEqual(args, expectedArgs), "Expected %v, got %v", expectedArgs, args)
|
||||
require.Equalf(t, expectedArgs, args, "Expected %v, got %v", expectedArgs, args)
|
||||
}
|
||||
|
||||
func TestPrepareCommandsNoArch(t *testing.T) {
|
||||
@@ -149,7 +148,7 @@ func TestPrepareCommandsNoArch(t *testing.T) {
|
||||
cmd, args, err := PrepareCommands(cmds, true, []string{}, env)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, cmdMain, cmd, "Expected %q, got %q", cmdMain, cmd)
|
||||
require.Truef(t, reflect.DeepEqual(args, cmdArgs), "Expected %v, got %v", cmdArgs, args)
|
||||
require.Equalf(t, args, cmdArgs, "Expected %v, got %v", cmdArgs, args)
|
||||
}
|
||||
|
||||
func TestPrepareCommandsNoOsNoArch(t *testing.T) {
|
||||
@@ -166,7 +165,7 @@ func TestPrepareCommandsNoOsNoArch(t *testing.T) {
|
||||
cmd, args, err := PrepareCommands(cmds, true, []string{}, env)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, cmdMain, cmd, "Expected %q, got %q", cmdMain, cmd)
|
||||
require.Truef(t, reflect.DeepEqual(args, cmdArgs), "Expected %v, got %v", cmdArgs, args)
|
||||
require.Equalf(t, args, cmdArgs, "Expected %v, got %v", cmdArgs, args)
|
||||
}
|
||||
|
||||
func TestPrepareCommandsNoMatch(t *testing.T) {
|
||||
@@ -206,7 +205,7 @@ func TestPrepareCommandsExpand(t *testing.T) {
|
||||
cmd, args, err := PrepareCommands(cmds, true, []string{}, env)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, cmdMain, cmd, "Expected %q, got %q", cmdMain, cmd)
|
||||
require.Truef(t, reflect.DeepEqual(args, expectedArgs), "Expected %v, got %v", expectedArgs, args)
|
||||
require.Equalf(t, expectedArgs, args, "Expected %v, got %v", expectedArgs, args)
|
||||
}
|
||||
|
||||
func TestPrepareCommandsNoExpand(t *testing.T) {
|
||||
@@ -223,5 +222,5 @@ func TestPrepareCommandsNoExpand(t *testing.T) {
|
||||
cmd, args, err := PrepareCommands(cmds, false, []string{}, env)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, cmdMain, cmd, "Expected %q, got %q", cmdMain, cmd)
|
||||
require.Truef(t, reflect.DeepEqual(args, cmdArgs), "Expected %v, got %v", cmdArgs, args)
|
||||
require.Equalf(t, args, cmdArgs, "Expected %v, got %v", cmdArgs, args)
|
||||
}
|
||||
|
||||
@@ -143,7 +143,6 @@ metadata:
|
||||
|
||||
// This test will fail if 'six' or 'seven' was added.
|
||||
assert.Len(t, generic, 2)
|
||||
|
||||
assert.Len(t, hs, 4)
|
||||
|
||||
for _, out := range hs {
|
||||
|
||||
@@ -148,28 +148,22 @@ func TestResolve(t *testing.T) {
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
l, err := r.Resolve(tt.req, repoNames)
|
||||
if err != nil {
|
||||
if tt.err {
|
||||
return
|
||||
}
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
if tt.err {
|
||||
require.Failf(t, "Expected error in test %q", tt.name)
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
require.NoError(t, err)
|
||||
h, err := HashReq(tt.req, tt.expect.Dependencies)
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, l.Digest, h, "%q: hashes don't match.", tt.name)
|
||||
|
||||
// Check fields.
|
||||
require.Len(t, l.Dependencies, len(tt.req), "%s: wrong number of dependencies in lock", tt.name)
|
||||
d0 := l.Dependencies[0]
|
||||
e0 := tt.expect.Dependencies[0]
|
||||
assert.Equal(t, e0.Name, d0.Name, tt.name)
|
||||
assert.Equal(t, e0.Repository, d0.Repository, tt.name)
|
||||
assert.Equal(t, e0.Version, d0.Version, tt.name)
|
||||
}
|
||||
|
||||
h, err := HashReq(tt.req, tt.expect.Dependencies)
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, l.Digest, h, "%q: hashes don't match.", tt.name)
|
||||
|
||||
// Check fields.
|
||||
assert.Len(t, l.Dependencies, len(tt.req), "%s: wrong number of dependencies in lock", tt.name)
|
||||
d0 := l.Dependencies[0]
|
||||
e0 := tt.expect.Dependencies[0]
|
||||
assert.Equal(t, e0.Name, d0.Name, tt.name)
|
||||
assert.Equal(t, e0.Repository, d0.Repository, tt.name)
|
||||
assert.Equal(t, e0.Version, d0.Version, tt.name)
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -280,20 +274,16 @@ func TestGetLocalPath(t *testing.T) {
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
p, err := GetLocalPath(tt.repo, tt.chartpath)
|
||||
if err != nil {
|
||||
if tt.err {
|
||||
return
|
||||
}
|
||||
require.NoError(t, err)
|
||||
}
|
||||
if tt.err {
|
||||
require.Failf(t, "Expected error in test %q", tt.name)
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
require.NoError(t, err)
|
||||
if runtime.GOOS == "windows" {
|
||||
assert.Equal(t, tt.winExpect, p, tt.name)
|
||||
} else {
|
||||
assert.Equal(t, tt.expect, p, tt.name)
|
||||
}
|
||||
}
|
||||
expect := tt.expect
|
||||
if runtime.GOOS == "windows" {
|
||||
expect = tt.winExpect
|
||||
}
|
||||
assert.Equal(t, expect, p, tt.name)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user