2020-11-25 14:01:53 +03:00
|
|
|
package encoding_test
|
|
|
|
|
|
|
|
import (
|
|
|
|
"crypto/rand"
|
|
|
|
"testing"
|
|
|
|
|
|
|
|
"github.com/google/go-cmp/cmp"
|
2020-12-04 04:36:16 +03:00
|
|
|
"github.com/xtls/xray-core/common"
|
|
|
|
. "github.com/xtls/xray-core/proxy/vmess/encoding"
|
2020-11-25 14:01:53 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestFnvAuth(t *testing.T) {
|
|
|
|
fnvAuth := new(FnvAuthenticator)
|
|
|
|
|
|
|
|
expectedText := make([]byte, 256)
|
|
|
|
_, err := rand.Read(expectedText)
|
|
|
|
common.Must(err)
|
|
|
|
|
|
|
|
buffer := make([]byte, 512)
|
|
|
|
b := fnvAuth.Seal(buffer[:0], nil, expectedText, nil)
|
|
|
|
b, err = fnvAuth.Open(buffer[:0], nil, b, nil)
|
|
|
|
common.Must(err)
|
|
|
|
if r := cmp.Diff(b, expectedText); r != "" {
|
|
|
|
t.Error(r)
|
|
|
|
}
|
|
|
|
}
|