feat(user): session token generator with sha256 storage hash

This commit is contained in:
2026-04-28 15:50:47 +08:00
parent da316725fc
commit 62ff9ed1fe
2 changed files with 54 additions and 4 deletions
+17
View File
@@ -24,3 +24,20 @@ func TestHashPassword_RejectsTooShort(t *testing.T) {
_, err := HashPassword("short")
require.Error(t, err)
}
func TestNewSessionToken_LengthAndUniqueness(t *testing.T) {
t1, h1, err := NewSessionToken()
require.NoError(t, err)
require.GreaterOrEqual(t, len(t1), 32) // base64 of 24 bytes
require.Len(t, h1, 32) // sha256
t2, h2, _ := NewSessionToken()
require.NotEqual(t, t1, t2)
require.NotEqual(t, h1, h2)
}
func TestHashSessionToken_Deterministic(t *testing.T) {
h1 := HashSessionToken("foo")
h2 := HashSessionToken("foo")
require.Equal(t, h1, h2)
}