From 9a7ce584a6b32233588cfef1a77cdab09fa3eedd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20Trma=C4=8D?= Date: Tue, 5 Sep 2023 21:24:04 +0200 Subject: [PATCH 1/2] Fix a pasto in a test MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Found by golangci-lint / staticcheck Signed-off-by: Miloslav Trmač --- storage/storage_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage/storage_test.go b/storage/storage_test.go index 247f0d4469..548353f982 100644 --- a/storage/storage_test.go +++ b/storage/storage_test.go @@ -185,7 +185,7 @@ func TestParseWithGraphDriverOptions(t *testing.T) { if err != nil { t.Fatalf("ParseReference(%q) returned error %v", "test", err) } - if ref == nil { + if ref2 == nil { t.Fatalf("ParseReference returned nil reference") } sref, ok := ref2.(*storageReference) From 9676d8bdebe8ef062b718cba5c7b260b11322cda Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20Trma=C4=8D?= Date: Tue, 5 Sep 2023 21:30:58 +0200 Subject: [PATCH 2/2] Use testify instead of manual t.Fatalf MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The primary reason is that golangci-lint 1.54.2 has a false positive about a nil dereference of "ref"; somehow it can't see the t.Fatalf() as a terminating call. Secondarily, testify is less verbose, so hopefully easier to follow. Signed-off-by: Miloslav Trmač --- storage/storage_test.go | 26 +++++++------------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/storage/storage_test.go b/storage/storage_test.go index 548353f982..e3214fc4c3 100644 --- a/storage/storage_test.go +++ b/storage/storage_test.go @@ -32,8 +32,8 @@ import ( "github.com/containers/storage/pkg/reexec" ddigest "github.com/opencontainers/go-digest" "github.com/sirupsen/logrus" + "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "golang.org/x/exp/slices" ) var ( @@ -174,28 +174,16 @@ func TestParseWithGraphDriverOptions(t *testing.T) { for _, optionList := range optionLists { store := newStoreWithGraphDriverOptions(t, optionList) ref, err := Transport.ParseStoreReference(store, "test") - if err != nil { - t.Fatalf("ParseStoreReference(%q, graph driver options %v) returned error %v", "test", optionList, err) - } - if ref == nil { - t.Fatalf("ParseStoreReference returned nil reference") - } + require.NoError(t, err, optionList) + require.NotNil(t, ref) spec := ref.StringWithinTransport() ref2, err := Transport.ParseReference(spec) - if err != nil { - t.Fatalf("ParseReference(%q) returned error %v", "test", err) - } - if ref2 == nil { - t.Fatalf("ParseReference returned nil reference") - } + require.NoError(t, err) + require.NotNil(t, ref) sref, ok := ref2.(*storageReference) - if !ok { - t.Fatalf("ParseReference returned a reference from transport %s, not one of ours", ref2.Transport().Name()) - } + require.True(t, ok, "transport %s", ref2.Transport().Name()) parsedOptions := sref.transport.store.GraphOptions() - if !slices.Equal(parsedOptions, optionList) { - t.Fatalf("Mismatched options: %#v and %#v", optionList, parsedOptions) - } + assert.Equal(t, optionList, parsedOptions) } }