49 lines
1009 B
Go
49 lines
1009 B
Go
// Copyright 2022 Liuxiangchao iwind.liu@gmail.com. All rights reserved.
|
|
//go:build script
|
|
// +build script
|
|
|
|
package js_test
|
|
|
|
import (
|
|
"github.com/TeaOSLab/EdgeNode/internal/js"
|
|
"github.com/iwind/TeaGo/types"
|
|
"testing"
|
|
)
|
|
|
|
func TestCrypto(t *testing.T) {
|
|
isolate, err := js.NewIsolate()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
ctx, err := isolate.GetContext()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
defer ctx.Done()
|
|
|
|
for _, s := range []string{"", "123456", "abc"} {
|
|
{
|
|
v, err := ctx.Run("gojs.md5('"+s+"')", "test.js")
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("md5("+s+"): "+v.String(), "["+types.String(len(v.String()))+"]")
|
|
}
|
|
{
|
|
v, err := ctx.Run("gojs.sha1('"+s+"')", "test.js")
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("sha1("+s+"): "+v.String(), "["+types.String(len(v.String()))+"]")
|
|
}
|
|
{
|
|
v, err := ctx.Run("gojs.sha256('"+s+"')", "test.js")
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("sha256("+s+"): "+v.String(), "["+types.String(len(v.String()))+"]")
|
|
}
|
|
}
|
|
}
|