photoprism/internal/entity/auth_session_data_test.go
2023-08-07 16:27:45 +02:00

45 lines
1.2 KiB
Go

package entity
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestUIDs_String(t *testing.T) {
uid := UIDs{"dghjkfd", "dfgehrih"}
assert.Equal(t, "dghjkfd,dfgehrih", uid.String())
}
func TestUIDs_Join(t *testing.T) {
uid := UIDs{"dghjkfd", "dfgehrih"}
assert.Equal(t, "dghjkfd|dfgehrih", uid.Join("|"))
}
func TestData_HasShare(t *testing.T) {
data := SessionData{Shares: []string{"abc123", "def444"}}
assert.True(t, data.HasShare("def444"))
assert.False(t, data.HasShare("xxx"))
}
func TestSessionData_RedeemToken(t *testing.T) {
data := SessionData{Shares: []string{"abc123", "def444"}}
assert.True(t, data.HasShare("def444"))
assert.False(t, data.HasShare("at9lxuqxpogaaba8"))
data.RedeemToken("xxx")
assert.False(t, data.HasShare("xxx"))
data.RedeemToken("1jxf3jfn2k")
assert.True(t, data.HasShare("def444"))
assert.True(t, data.HasShare("at9lxuqxpogaaba8"))
}
func TestSessionData_SharedUIDs(t *testing.T) {
data := SessionData{Shares: []string{"abc123", "def444"},
Tokens: []string{"5jxf3jfn2k"}}
assert.Equal(t, "abc123", data.SharedUIDs()[0])
data2 := SessionData{Shares: []string{},
Tokens: []string{"5jxf3jfn2k"}}
assert.Equal(t, "ft2es39w45bnlqdw", data2.SharedUIDs()[0])
}