Files
fm_be/internal/domain/user/model_test.go
2026-07-16 22:16:45 +07:00

38 lines
852 B
Go

package user
import (
"testing"
"gorm.io/gorm"
)
func TestUserTableName(t *testing.T) {
var u User
if got := u.TableName(); got != "users" {
t.Fatalf("unexpected table name: %s", got)
}
}
func TestUserBeforeCreate(t *testing.T) {
t.Run("generates id when empty", func(t *testing.T) {
u := &User{}
if err := u.BeforeCreate(&gorm.DB{}); err != nil {
t.Fatalf("BeforeCreate error: %v", err)
}
if len(u.ID) != 16 {
t.Fatalf("expected generated 16-byte ID, got %d", len(u.ID))
}
})
t.Run("keeps existing id", func(t *testing.T) {
existing := []byte("1234567890abcdef")
u := &User{ID: append([]byte(nil), existing...)}
if err := u.BeforeCreate(&gorm.DB{}); err != nil {
t.Fatalf("BeforeCreate error: %v", err)
}
if string(u.ID) != string(existing) {
t.Fatalf("expected existing id to stay unchanged")
}
})
}