浏览代码

test for all authenticators

v2ray 9 年之前
父节点
当前提交
b01a972076
共有 2 个文件被更改,包括 28 次插入1 次删除
  1. 1 1
      transport/internet/authenticator.go
  2. 27 0
      transport/internet/authenticator_test.go

+ 1 - 1
transport/internet/authenticator.go

@@ -41,7 +41,7 @@ func CreateAuthenticator(name string, config AuthenticatorConfig) (Authenticator
 	if !found {
 		return nil, ErrAuthenticatorNotFound
 	}
-	return factory.Create(config.(AuthenticatorConfig)), nil
+	return factory.Create(config), nil
 }
 
 func CreateAuthenticatorConfig(rawConfig []byte) (string, AuthenticatorConfig, error) {

+ 27 - 0
transport/internet/authenticator_test.go

@@ -0,0 +1,27 @@
+package internet_test
+
+import (
+	"testing"
+
+	"github.com/v2ray/v2ray-core/testing/assert"
+	. "github.com/v2ray/v2ray-core/transport/internet"
+	_ "github.com/v2ray/v2ray-core/transport/internet/authenticators/noop"
+	_ "github.com/v2ray/v2ray-core/transport/internet/authenticators/srtp"
+	_ "github.com/v2ray/v2ray-core/transport/internet/authenticators/utp"
+)
+
+func TestAllAuthenticatorLoadable(t *testing.T) {
+	assert := assert.On(t)
+
+	noopAuth, err := CreateAuthenticator("none", nil)
+	assert.Error(err).IsNil()
+	assert.Int(noopAuth.Overhead()).Equals(0)
+
+	srtp, err := CreateAuthenticator("srtp", nil)
+	assert.Error(err).IsNil()
+	assert.Int(srtp.Overhead()).Equals(4)
+
+	utp, err := CreateAuthenticator("utp", nil)
+	assert.Error(err).IsNil()
+	assert.Int(utp.Overhead()).Equals(4)
+}