package model import ( "testing" basemodel "git.sendico.io/tech/sxchnge/bff/pkg/model" "go.mongodb.org/mongo-driver/v2/bson" ) func TestAccountTokenPreservesSessionIdentity(t *testing.T) { account := &basemodel.Account{} account.SetID(bson.NewObjectID()) account.Login = "security@example.com" account.Name = "Security" account.Locale = "en" session := basemodel.SessionIdentifier{ ClientID: "web", DeviceID: "device-a", SessionVersion: "session-version-a", } token, err := Claims2Token(Account2ClaimsForSession(account, 1, session)) if err != nil { t.Fatalf("decode account claims: %v", err) } if token.SessionIdentifier != session { t.Fatalf("session identity = %#v, want %#v", token.SessionIdentifier, session) } if token.Expiration.IsZero() { t.Fatal("access token expiration is missing") } }