2016-12-07 16:32:40 +00:00
|
|
|
package encoding_test
|
|
|
|
|
|
|
|
import (
|
|
|
|
"crypto/rand"
|
|
|
|
"testing"
|
|
|
|
|
2017-07-25 20:28:48 +00:00
|
|
|
"v2ray.com/core/common"
|
2016-12-07 16:32:40 +00:00
|
|
|
. "v2ray.com/core/proxy/vmess/encoding"
|
2017-10-24 14:15:35 +00:00
|
|
|
. "v2ray.com/ext/assert"
|
2016-12-07 16:32:40 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestFnvAuth(t *testing.T) {
|
2017-10-24 14:15:35 +00:00
|
|
|
assert := With(t)
|
2016-12-07 16:32:40 +00:00
|
|
|
fnvAuth := new(FnvAuthenticator)
|
|
|
|
|
|
|
|
expectedText := make([]byte, 256)
|
2017-07-25 20:28:48 +00:00
|
|
|
_, err := rand.Read(expectedText)
|
|
|
|
common.Must(err)
|
2016-12-07 16:32:40 +00:00
|
|
|
|
|
|
|
buffer := make([]byte, 512)
|
2016-12-08 10:08:46 +00:00
|
|
|
b := fnvAuth.Seal(buffer[:0], nil, expectedText, nil)
|
2017-07-25 20:28:48 +00:00
|
|
|
b, err = fnvAuth.Open(buffer[:0], nil, b, nil)
|
2017-10-24 14:15:35 +00:00
|
|
|
assert(err, IsNil)
|
|
|
|
assert(len(b), Equals, 256)
|
|
|
|
assert(b, Equals, expectedText)
|
2016-12-07 16:32:40 +00:00
|
|
|
}
|