onasty/internal/hasher/sha256_test.go(view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
package hasher
import (
"testing"
"github.com/stretchr/testify/require"
)
func TestSHA256Hasher_Hash(t *testing.T) {
hasher := NewSHA256Hasher("salt")
hashed, err := hasher.Hash("qwerty123")
require.NoError(t, err)
require.NotEmpty(t, hashed)
}
func TestSHA256Hasher_Compared(t *testing.T) {
hasher := NewSHA256Hasher("salt")
input := "qwerty123"
t.Run("valid", func(t *testing.T) {
hashed, err := hasher.Hash(input)
require.NoError(t, err)
require.NotEmpty(t, hashed)
err = hasher.Compare(hashed, input)
require.NoError(t, err)
})
t.Run("mismatch", func(t *testing.T) {
hashed, err := hasher.Hash(input + "4")
require.NoError(t, err)
require.NotEmpty(t, hashed)
err = hasher.Compare(hashed, input)
require.ErrorIs(t, err, ErrMismatchedHashes)
})
}
|