From c2642e0c5299c0ac402d55d1f7a09e0eb182198e Mon Sep 17 00:00:00 2001 From: Carlos Alexandro Becker Date: Sat, 22 Apr 2017 10:58:29 -0300 Subject: [PATCH] added more tests to the checksums --- checksum/checksum.go | 4 ++++ checksum/checksum_test.go | 14 ++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/checksum/checksum.go b/checksum/checksum.go index c85ba5016..0684d2e12 100644 --- a/checksum/checksum.go +++ b/checksum/checksum.go @@ -21,6 +21,10 @@ func calculate(hash hash.Hash, path string) (result string, err error) { } defer func() { _ = file.Close() }() + return doCalculate(hash, file) +} + +func doCalculate(hash hash.Hash, file *os.File) (result string, err error) { _, err = io.Copy(hash, file) if err != nil { return diff --git a/checksum/checksum_test.go b/checksum/checksum_test.go index 393f37306..5f1025a90 100644 --- a/checksum/checksum_test.go +++ b/checksum/checksum_test.go @@ -1,7 +1,9 @@ package checksum import ( + "crypto/sha256" "io/ioutil" + "os" "path/filepath" "testing" @@ -25,3 +27,15 @@ func TestOpenFailure(t *testing.T) { assert.Empty(sum) assert.Error(err) } + +func TestFileDoesntExist(t *testing.T) { + var assert = assert.New(t) + folder, err := ioutil.TempDir("", "goreleasertest") + assert.NoError(err) + var path = filepath.Join(folder, "subject") + file, err := os.Create(path) + assert.NoError(err) + assert.NoError(file.Close()) + _, err = doCalculate(sha256.New(), file) + assert.Error(err) +}