Merge pull request #32256 from gjenkins8/refactor/testify-internal-util

refactor(internal): convert tests to testify assert/require
pull/32156/merge
Terry Howe 3 months ago committed by GitHub
commit dd31a27000
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -22,6 +22,9 @@ import (
"path/filepath" "path/filepath"
"strings" "strings"
"testing" "testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
) )
// TestAtomicWriteFile tests the happy path of AtomicWriteFile function. // TestAtomicWriteFile tests the happy path of AtomicWriteFile function.
@ -35,28 +38,17 @@ func TestAtomicWriteFile(t *testing.T) {
mode := os.FileMode(0644) mode := os.FileMode(0644)
err := AtomicWriteFile(testpath, reader, mode) err := AtomicWriteFile(testpath, reader, mode)
if err != nil { assert.NoError(t, err)
t.Errorf("AtomicWriteFile error: %s", err)
}
got, err := os.ReadFile(testpath) got, err := os.ReadFile(testpath)
if err != nil { require.NoError(t, err)
t.Fatal(err)
}
if stringContent != string(got) { require.Equal(t, stringContent, string(got))
t.Fatalf("expected: %s, got: %s", stringContent, string(got))
}
gotinfo, err := os.Stat(testpath) gotinfo, err := os.Stat(testpath)
if err != nil { require.NoError(t, err)
t.Fatal(err)
} require.Equal(t, mode, gotinfo.Mode())
if mode != gotinfo.Mode() {
t.Fatalf("expected %s: to be the same mode as %s",
mode, gotinfo.Mode())
}
} }
// TestAtomicWriteFile_CreateTempError tests the error path when os.CreateTemp fails // TestAtomicWriteFile_CreateTempError tests the error path when os.CreateTemp fails
@ -67,9 +59,7 @@ func TestAtomicWriteFile_CreateTempError(t *testing.T) {
mode := os.FileMode(0644) mode := os.FileMode(0644)
err := AtomicWriteFile(invalidPath, reader, mode) err := AtomicWriteFile(invalidPath, reader, mode)
if err == nil { assert.Error(t, err, "Expected error when CreateTemp fails")
t.Error("Expected error when CreateTemp fails, but got nil")
}
} }
// TestAtomicWriteFile_EmptyContent tests with empty content // TestAtomicWriteFile_EmptyContent tests with empty content
@ -81,18 +71,12 @@ func TestAtomicWriteFile_EmptyContent(t *testing.T) {
mode := os.FileMode(0644) mode := os.FileMode(0644)
err := AtomicWriteFile(testpath, reader, mode) err := AtomicWriteFile(testpath, reader, mode)
if err != nil { assert.NoError(t, err, "AtomicWriteFile error with empty content")
t.Errorf("AtomicWriteFile error with empty content: %s", err)
}
got, err := os.ReadFile(testpath) got, err := os.ReadFile(testpath)
if err != nil { require.NoError(t, err)
t.Fatal(err)
}
if len(got) != 0 { require.Empty(t, got)
t.Fatalf("expected empty content, got: %s", string(got))
}
} }
// TestAtomicWriteFile_LargeContent tests with large content // TestAtomicWriteFile_LargeContent tests with large content
@ -106,18 +90,12 @@ func TestAtomicWriteFile_LargeContent(t *testing.T) {
mode := os.FileMode(0644) mode := os.FileMode(0644)
err := AtomicWriteFile(testpath, reader, mode) err := AtomicWriteFile(testpath, reader, mode)
if err != nil { assert.NoError(t, err, "AtomicWriteFile error with large content")
t.Errorf("AtomicWriteFile error with large content: %s", err)
}
got, err := os.ReadFile(testpath) got, err := os.ReadFile(testpath)
if err != nil { require.NoError(t, err)
t.Fatal(err)
}
if largeContent != string(got) { require.Equal(t, largeContent, string(got))
t.Fatalf("expected large content to match, got different length: %d vs %d", len(largeContent), len(got))
}
} }
// TestPlatformAtomicWriteFile_OverwritesExisting verifies that the platform // TestPlatformAtomicWriteFile_OverwritesExisting verifies that the platform
@ -127,21 +105,13 @@ func TestPlatformAtomicWriteFile_OverwritesExisting(t *testing.T) {
path := filepath.Join(dir, "overwrite_test") path := filepath.Join(dir, "overwrite_test")
first := bytes.NewReader([]byte("first")) first := bytes.NewReader([]byte("first"))
if err := PlatformAtomicWriteFile(path, first, 0644); err != nil { require.NoError(t, PlatformAtomicWriteFile(path, first, 0644), "first write failed")
t.Fatalf("first write failed: %v", err)
}
second := bytes.NewReader([]byte("second")) second := bytes.NewReader([]byte("second"))
if err := PlatformAtomicWriteFile(path, second, 0644); err != nil { require.NoError(t, PlatformAtomicWriteFile(path, second, 0644), "second write failed")
t.Fatalf("second write failed: %v", err)
}
contents, err := os.ReadFile(path) contents, err := os.ReadFile(path)
if err != nil { require.NoError(t, err, "failed reading result")
t.Fatalf("failed reading result: %v", err)
}
if string(contents) != "second" { require.Equal(t, "second", string(contents))
t.Fatalf("expected file to be overwritten, got %q", string(contents))
}
} }

@ -19,6 +19,9 @@ import (
"runtime" "runtime"
"testing" "testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
chart "helm.sh/helm/v4/pkg/chart/v2" chart "helm.sh/helm/v4/pkg/chart/v2"
"helm.sh/helm/v4/pkg/registry" "helm.sh/helm/v4/pkg/registry"
) )
@ -149,34 +152,24 @@ func TestResolve(t *testing.T) {
if tt.err { if tt.err {
return return
} }
t.Fatal(err) require.NoError(t, err)
} }
if tt.err { if tt.err {
t.Fatalf("Expected error in test %q", tt.name) require.Failf(t, "Expected error in test %q", tt.name)
} }
if h, err := HashReq(tt.req, tt.expect.Dependencies); err != nil { h, err := HashReq(tt.req, tt.expect.Dependencies)
t.Fatal(err) require.NoError(t, err)
} else if h != l.Digest { assert.Equal(t, l.Digest, h, "%q: hashes don't match.", tt.name)
t.Errorf("%q: hashes don't match.", tt.name)
}
// Check fields. // Check fields.
if len(l.Dependencies) != len(tt.req) { assert.Len(t, l.Dependencies, len(tt.req), "%s: wrong number of dependencies in lock", tt.name)
t.Errorf("%s: wrong number of dependencies in lock", tt.name)
}
d0 := l.Dependencies[0] d0 := l.Dependencies[0]
e0 := tt.expect.Dependencies[0] e0 := tt.expect.Dependencies[0]
if d0.Name != e0.Name { assert.Equal(t, e0.Name, d0.Name, tt.name)
t.Errorf("%s: expected name %s, got %s", tt.name, e0.Name, d0.Name) assert.Equal(t, e0.Repository, d0.Repository, tt.name)
} assert.Equal(t, e0.Version, d0.Version, tt.name)
if d0.Repository != e0.Repository {
t.Errorf("%s: expected repo %s, got %s", tt.name, e0.Repository, d0.Repository)
}
if d0.Version != e0.Version {
t.Errorf("%s: expected version %s, got %s", tt.name, e0.Version, d0.Version)
}
}) })
} }
} }
@ -231,13 +224,11 @@ func TestHashReq(t *testing.T) {
{Name: "alpine", Version: tt.lockVersion, Repository: "http://localhost:8879/charts"}, {Name: "alpine", Version: tt.lockVersion, Repository: "http://localhost:8879/charts"},
} }
h, err := HashReq(req, lock) h, err := HashReq(req, lock)
if err != nil { require.NoError(t, err)
t.Fatal(err) if !tt.wantError {
} assert.Equal(t, expect, h)
if !tt.wantError && expect != h { } else {
t.Errorf("Expected %q, got %q", expect, h) assert.NotEqual(t, expect, h, "Expected not %q, but same", expect)
} else if tt.wantError && expect == h {
t.Errorf("Expected not %q, but same", expect)
} }
}) })
} }
@ -293,18 +284,16 @@ func TestGetLocalPath(t *testing.T) {
if tt.err { if tt.err {
return return
} }
t.Fatal(err) require.NoError(t, err)
} }
if tt.err { if tt.err {
t.Fatalf("Expected error in test %q", tt.name) require.Failf(t, "Expected error in test %q", tt.name)
} }
expect := tt.expect expect := tt.expect
if runtime.GOOS == "windows" { if runtime.GOOS == "windows" {
expect = tt.winExpect expect = tt.winExpect
} }
if p != expect { assert.Equal(t, expect, p, tt.name)
t.Errorf("%q: expected %q, got %q", tt.name, expect, p)
}
}) })
} }
} }

@ -19,6 +19,9 @@ package tlsutil
import ( import (
"path/filepath" "path/filepath"
"testing" "testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
) )
const tlsTestDir = "../../testdata" const tlsTestDir = "../../testdata"
@ -32,9 +35,7 @@ const (
func testfile(t *testing.T, file string) (path string) { func testfile(t *testing.T, file string) (path string) {
t.Helper() t.Helper()
path, err := filepath.Abs(filepath.Join(tlsTestDir, file)) path, err := filepath.Abs(filepath.Join(tlsTestDir, file))
if err != nil { require.NoError(t, err, "error getting absolute path to test file %q", file)
t.Fatalf("error getting absolute path to test file %q: %v", file, err)
}
return path return path
} }
@ -50,38 +51,22 @@ func TestNewTLSConfig(t *testing.T) {
WithCertKeyPairFiles(certFile, keyFile), WithCertKeyPairFiles(certFile, keyFile),
WithCAFile(caCertFile), WithCAFile(caCertFile),
) )
if err != nil { assert.NoError(t, err)
t.Error(err)
}
if got := len(cfg.Certificates); got != 1 { require.Len(t, cfg.Certificates, 1)
t.Fatalf("expecting 1 client certificates, got %d", got) require.False(t, cfg.InsecureSkipVerify, "insecure skip verify mismatch, expecting false")
} require.NotNil(t, cfg.RootCAs, "mismatch tls RootCAs, expecting non-nil")
if cfg.InsecureSkipVerify {
t.Fatal("insecure skip verify mismatch, expecting false")
}
if cfg.RootCAs == nil {
t.Fatal("mismatch tls RootCAs, expecting non-nil")
}
} }
{ {
cfg, err := NewTLSConfig( cfg, err := NewTLSConfig(
WithInsecureSkipVerify(insecureSkipTLSVerify), WithInsecureSkipVerify(insecureSkipTLSVerify),
WithCAFile(caCertFile), WithCAFile(caCertFile),
) )
if err != nil { assert.NoError(t, err)
t.Error(err)
}
if got := len(cfg.Certificates); got != 0 { require.Empty(t, cfg.Certificates)
t.Fatalf("expecting 0 client certificates, got %d", got) require.False(t, cfg.InsecureSkipVerify, "insecure skip verify mismatch, expecting false")
} require.NotNil(t, cfg.RootCAs, "mismatch tls RootCAs, expecting non-nil")
if cfg.InsecureSkipVerify {
t.Fatal("insecure skip verify mismatch, expecting false")
}
if cfg.RootCAs == nil {
t.Fatal("mismatch tls RootCAs, expecting non-nil")
}
} }
{ {
@ -89,18 +74,10 @@ func TestNewTLSConfig(t *testing.T) {
WithInsecureSkipVerify(insecureSkipTLSVerify), WithInsecureSkipVerify(insecureSkipTLSVerify),
WithCertKeyPairFiles(certFile, keyFile), WithCertKeyPairFiles(certFile, keyFile),
) )
if err != nil { assert.NoError(t, err)
t.Error(err)
}
if got := len(cfg.Certificates); got != 1 { require.Len(t, cfg.Certificates, 1)
t.Fatalf("expecting 1 client certificates, got %d", got) require.False(t, cfg.InsecureSkipVerify, "insecure skip verify mismatch, expecting false")
} require.Nil(t, cfg.RootCAs, "mismatch tls RootCAs, expecting nil")
if cfg.InsecureSkipVerify {
t.Fatal("insecure skip verify mismatch, expecting false")
}
if cfg.RootCAs != nil {
t.Fatal("mismatch tls RootCAs, expecting nil")
}
} }
} }

Loading…
Cancel
Save