代码拉取完成,页面将自动刷新
同步操作将从 golang-module/dongle 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
package dongle
import (
"strconv"
"testing"
"github.com/stretchr/testify/assert"
)
var (
hmacSha384Input, hmacSha384Key = "hello world", "dongle"
hmacSha384HexExpected = "421fcaa740216a31bbcd1f86f2212e0c68aa4b156a8ebc2ae55b3e75c4ee0509ea0325a0570ae739006b61d91d817fe8"
hmacSha384Base32Expected = "IIP4VJ2AEFVDDO6ND6DPEIJOBRUKUSYVNKHLYKXFLM7HLRHOAUE6UAZFUBLQVZZZABVWDWI5QF76Q==="
hmacSha384Base64Expected = "Qh/Kp0AhajG7zR+G8iEuDGiqSxVqjrwq5Vs+dcTuBQnqAyWgVwrnOQBrYdkdgX/o"
)
func TestEncrypt_ByHmacSha384_FromStringToString(t *testing.T) {
hexTests := []struct {
input1 string // 输入值1
input2 string // 输入值2
expected string // 期望值
}{
{"", "", ""},
{hmacSha384Input, hmacSha384Key, hmacSha384HexExpected},
}
for index, test := range hexTests {
e := Encrypt.FromString(test.input1).ByHmacSha384(test.input2)
assert.Nil(t, e.Error)
assert.Equal(t, test.expected, e.ToHexString(), "Current test index is "+strconv.Itoa(index))
}
base32Tests := []struct {
input1 string // 输入值1
input2 string // 输入值2
expected string // 期望值
}{
{"", "", ""},
{hmacSha384Input, hmacSha384Key, hmacSha384Base32Expected},
}
for index, test := range base32Tests {
e := Encrypt.FromString(test.input1).ByHmacSha384(test.input2)
assert.Nil(t, e.Error)
assert.Equal(t, test.expected, e.ToBase32String(), "Current test index is "+strconv.Itoa(index))
}
base64Tests := []struct {
input1 string // 输入值1
input2 string // 输入值2
expected string // 期望值
}{
{"", "", ""},
{hmacSha384Input, hmacSha384Key, hmacSha384Base64Expected},
}
for index, test := range base64Tests {
e := Encrypt.FromString(test.input1).ByHmacSha384(test.input2)
assert.Nil(t, e.Error)
assert.Equal(t, test.expected, e.ToBase64String(), "Current test index is "+strconv.Itoa(index))
}
}
func TestEncrypt_ByHmacSha384_FromBytesToBytes(t *testing.T) {
hexTests := []struct {
input1 []byte // 输入值1
input2 []byte // 输入值2
expected []byte // 期望值
}{
{[]byte(""), []byte(""), []byte("")},
{[]byte(hmacSha384Input), []byte(hmacSha384Key), []byte(hmacSha384HexExpected)},
}
for index, test := range hexTests {
e := Encrypt.FromBytes(test.input1).ByHmacSha384(test.input2)
assert.Nil(t, e.Error)
assert.Equal(t, test.expected, e.ToHexBytes(), "Current test index is "+strconv.Itoa(index))
}
base32Tests := []struct {
input1 []byte // 输入值1
input2 []byte // 输入值2
expected []byte // 期望值
}{
{[]byte(""), []byte(""), []byte("")},
{[]byte(hmacSha384Input), []byte(hmacSha384Key), []byte(hmacSha384Base32Expected)},
}
for index, test := range base32Tests {
e := Encrypt.FromBytes(test.input1).ByHmacSha384(test.input2)
assert.Nil(t, e.Error)
assert.Equal(t, test.expected, e.ToBase32Bytes(), "Current test index is "+strconv.Itoa(index))
}
base64Tests := []struct {
input1 []byte // 输入值1
input2 []byte // 输入值2
expected []byte // 期望值
}{
{[]byte(""), []byte(""), []byte("")},
{[]byte(hmacSha384Input), []byte(hmacSha384Key), []byte(hmacSha384Base64Expected)},
}
for index, test := range base64Tests {
e := Encrypt.FromBytes(test.input1).ByHmacSha384(test.input2)
assert.Nil(t, e.Error)
assert.Equal(t, test.expected, e.ToBase64Bytes(), "Current test index is "+strconv.Itoa(index))
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。