1
0
Fork 0
telegram/login/utils_test.go

73 lines
1.5 KiB
Go

package login
import (
"testing"
"time"
"github.com/stretchr/testify/assert"
)
func TestUserFullName(t *testing.T) {
t.Run("empty", func(t *testing.T) {
var u User
assert.Empty(t, u.FullName())
})
t.Run("first name", func(t *testing.T) {
u := User{
FirstName: "Maxim",
}
assert.Equal(t, u.FirstName, u.FullName())
})
t.Run("first & last name", func(t *testing.T) {
u := User{
FirstName: "Maxim",
LastName: "Lebedev",
}
assert.Equal(t, u.FirstName+" "+u.LastName, u.FullName())
})
}
func TestUserAuthTime(t *testing.T) {
t.Run("empty", func(t *testing.T) {
var u User
assert.True(t, u.AuthTime().IsZero())
})
t.Run("exists", func(t *testing.T) {
u := User{AuthDate: time.Now().UTC().Unix()}
assert.False(t, u.AuthTime().IsZero())
})
}
func TestUserhasLastName(t *testing.T) {
t.Run("false", func(t *testing.T) {
var u User
assert.False(t, u.HasLastName())
})
t.Run("true", func(t *testing.T) {
u := User{LastName: "Lebedev"}
assert.True(t, u.HasLastName())
})
}
func TestUserHasUsername(t *testing.T) {
t.Run("false", func(t *testing.T) {
var u User
assert.False(t, u.HasUsername())
})
t.Run("true", func(t *testing.T) {
u := User{Username: "toby3d"}
assert.True(t, u.HasUsername())
})
}
func TestUserHasPhoto(t *testing.T) {
t.Run("empty", func(t *testing.T) {
var u User
assert.False(t, u.HasPhoto())
})
t.Run("exists", func(t *testing.T) {
u := User{PhotoURL: "https://toby3d.me/avatar.jpg"}
assert.True(t, u.HasPhoto())
})
}