package admin_common import ( "fmt" "golang.org/x/crypto/bcrypt" "testing" "time" ) // checkPasswordHash 验证用户输入的密码是否与存储的哈希值匹配 func checkPasswordHash(password, hash string) bool { err := bcrypt.CompareHashAndPassword([]byte(hash), []byte(password)) return err == nil } // hashPassword 使用 bcrypt 对密码进行哈希 func hashPassword(password string) (string, error) { hash, err := bcrypt.GenerateFromPassword([]byte(password), bcrypt.DefaultCost) if err != nil { return "", err } return string(hash), nil } func TestAdminLogin(t *testing.T) { // address := fmt.Sprintf("%v:%v@(%v:%v)/%v?charset=utf8mb4,utf8&parseTime=True&loc=Local", "root", "xugang131500", "47.56.16.206", 3306, "sghblog") // db, err := gorm.Open(mysql.Open(address), &gorm.Config{ // Logger: logger.Default.LogMode(logger.Info), // NamingStrategy: schema.NamingStrategy{ // SingularTable: true, // }}) // if err != nil { // t.Fatal(err) // } // repo := repository.NewRepository(db) // newService := service.NewService(repo) t.Run("过期时间", func(t *testing.T) { old := time.Now().Unix() add := time.Now().Add(time.Second * time.Duration(0.5*3600)).Unix() fmt.Println(add < old) fmt.Println(add > old) fmt.Println(add, old) // expiryTime := time.Unix(add, 0) // fmt.Println("expiryTime", expiryTime) }) t.Run("登录", func(t *testing.T) { // login, err := newService.AdminLogin("admin", "123456", 1) // fmt.Println(checkPasswordHash("123456", login.Password)) // fmt.Println(err) // fmt.Println(login.Roles) // fmt.Println(login.Teams) }) }