github.com/pkalwak/bagins@v0.0.0-20210317172317-694ac5ce2f54/bagutil/bagutil_test.go (about)

     1  // checksums_test
     2  package bagutil
     3  
     4  import (
     5  	"github.com/pkalwak/bagins"
     6  	"io/ioutil"
     7  	"os"
     8  	"testing"
     9  )
    10  
    11  var test_list = map[string]string{
    12  	"md5":    "9e107d9d372bb6826bd81d3542a419d6",
    13  	"sha1":   "2fd4e1c67a2d28fced849ee1bb76e7391b93eb12",
    14  	"sha256": "d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592",
    15  	"sha512": "07e547d9586f6a73f73fbac0435ed76951218fb7d0c8d788a309d785436bbb642e93a252a954f23912547d1e8a3b5ed6e1bfd7097821233fa0538f3db854fee6",
    16  	"sha224": "730e109bd7a8a32b1cb9d9a09aa2325d2430587ddbc0c38bad911525",
    17  	"sha384": "ca737f1014a48f4c0b6dd43cb177b0afd9e5169367544c494011e3317dbf9a509cb1e5dc1e85a941bbee3d7f2afbc9b1",
    18  }
    19  var test_string = "The quick brown fox jumps over the lazy dog"
    20  
    21  func TestFileChecksum(t *testing.T) {
    22  	testFile, _ := ioutil.TempFile("", "_GO_TESTFILECHECKSUM_")
    23  	testFile.WriteString(test_string)
    24  	testFile.Close()
    25  	for key, sum := range test_list {
    26  		hsh, err := bagins.LookupHash(key)
    27  		if err != nil {
    28  			t.Error(err)
    29  		}
    30  		actual, err := bagins.FileChecksum(testFile.Name(), hsh())
    31  		if err != nil {
    32  			t.Error(err)
    33  		}
    34  		if sum != actual {
    35  			t.Error("Expected", sum, "but returned", actual, "when checking", key)
    36  		}
    37  	}
    38  	os.Remove(testFile.Name())
    39  }