mirror of
https://gitee.com/johng/gf.git
synced 2024-12-01 19:57:40 +08:00
78 lines
1.7 KiB
Go
78 lines
1.7 KiB
Go
// Copyright GoFrame Author(https://goframe.org). All Rights Reserved.
|
|
//
|
|
// This Source Code Form is subject to the terms of the MIT License.
|
|
// If a copy of the MIT was not distributed with this file,
|
|
// You can obtain one at https://github.com/gogf/gf.
|
|
|
|
// go test *.go -bench=".*"
|
|
|
|
package gmd5_test
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
|
|
"github.com/gogf/gf/v2/crypto/gmd5"
|
|
"github.com/gogf/gf/v2/test/gtest"
|
|
)
|
|
|
|
var (
|
|
s = "pibigstar"
|
|
// online generated MD5 value
|
|
result = "d175a1ff66aedde64344785f7f7a3df8"
|
|
)
|
|
|
|
type user struct {
|
|
name string
|
|
password string
|
|
age int
|
|
}
|
|
|
|
func TestEncrypt(t *testing.T) {
|
|
gtest.C(t, func(t *gtest.T) {
|
|
encryptString, _ := gmd5.Encrypt(s)
|
|
t.Assert(encryptString, result)
|
|
|
|
result := "1427562bb29f88a1161590b76398ab72"
|
|
encrypt, _ := gmd5.Encrypt(123456)
|
|
t.AssertEQ(encrypt, result)
|
|
})
|
|
|
|
gtest.C(t, func(t *gtest.T) {
|
|
user := &user{
|
|
name: "派大星",
|
|
password: "123456",
|
|
age: 23,
|
|
}
|
|
result := "70917ebce8bd2f78c736cda63870fb39"
|
|
encrypt, _ := gmd5.Encrypt(user)
|
|
t.AssertEQ(encrypt, result)
|
|
})
|
|
}
|
|
|
|
func TestEncryptString(t *testing.T) {
|
|
gtest.C(t, func(t *gtest.T) {
|
|
encryptString, _ := gmd5.EncryptString(s)
|
|
t.Assert(encryptString, result)
|
|
})
|
|
}
|
|
|
|
func TestEncryptFile(t *testing.T) {
|
|
path := "test.text"
|
|
errorPath := "err.txt"
|
|
result := "e6e6e1cd41895beebff16d5452dfce12"
|
|
gtest.C(t, func(t *gtest.T) {
|
|
file, err := os.Create(path)
|
|
defer os.Remove(path)
|
|
defer file.Close()
|
|
t.AssertNil(err)
|
|
_, _ = file.Write([]byte("Hello Go Frame"))
|
|
encryptFile, _ := gmd5.EncryptFile(path)
|
|
t.AssertEQ(encryptFile, result)
|
|
// when the file is not exist,encrypt will return empty string
|
|
errEncrypt, _ := gmd5.EncryptFile(errorPath)
|
|
t.AssertEQ(errEncrypt, "")
|
|
})
|
|
|
|
}
|