Ver Fonte

test cases for socks4

V2Ray há 10 anos atrás
pai
commit
3747e45978

+ 0 - 3
proxy/socks/protocol/socks4.go

@@ -1,10 +1,7 @@
 package protocol
 
 import (
-	_ "fmt"
-
 	"github.com/v2ray/v2ray-core/common/errors"
-	_ "github.com/v2ray/v2ray-core/common/log"
 )
 
 type SocksVersion4Error struct {

+ 37 - 0
proxy/socks/protocol/socks4_test.go

@@ -0,0 +1,37 @@
+package protocol
+
+import (
+	"bytes"
+	"testing"
+
+	"github.com/v2ray/v2ray-core/testing/unit"
+)
+
+func TestSocks4AuthenticationRequestRead(t *testing.T) {
+	assert := unit.Assert(t)
+
+	rawRequest := []byte{
+		0x04, // version
+		0x01, // command
+		0x00, 0x35,
+		0x72, 0x72, 0x72, 0x72,
+	}
+	_, request4, err := ReadAuthentication(bytes.NewReader(rawRequest))
+	assert.Error(err).HasCode(1000)
+	assert.Byte(request4.Version).Named("Version").Equals(0x04)
+	assert.Byte(request4.Command).Named("Command").Equals(0x01)
+	assert.Uint16(request4.Port).Named("Port").Equals(53)
+	assert.Bytes(request4.IP[:]).Named("IP").Equals([]byte{0x72, 0x72, 0x72, 0x72})
+}
+
+func TestSocks4AuthenticationResponseToBytes(t *testing.T) {
+	assert := unit.Assert(t)
+
+	response := &Socks4AuthenticationResponse{
+		result: byte(0x10),
+		port:   443,
+		ip:     []byte{1, 2, 3, 4},
+	}
+	responseBytes := response.ToBytes(nil)
+	assert.Bytes(responseBytes).Equals([]byte{0x00, 0x10, 0x01, 0xBB, 0x01, 0x02, 0x03, 0x04})
+}

+ 0 - 17
proxy/socks/protocol/socks_test.go

@@ -37,23 +37,6 @@ func TestAuthenticationRequestRead(t *testing.T) {
 	assert.Byte(request.authMethods[0]).Named("Auth Method").Equals(0x02)
 }
 
-func TestAuthentication4RequestRead(t *testing.T) {
-	assert := unit.Assert(t)
-
-	rawRequest := []byte{
-		0x04, // version
-		0x01, // command
-		0x00, 0x35,
-		0x72, 0x72, 0x72, 0x72,
-	}
-	_, request4, err := ReadAuthentication(bytes.NewReader(rawRequest))
-	assert.Error(err).HasCode(1000)
-	assert.Byte(request4.Version).Named("Version").Equals(0x04)
-	assert.Byte(request4.Command).Named("Command").Equals(0x01)
-	assert.Uint16(request4.Port).Named("Port").Equals(53)
-	assert.Bytes(request4.IP[:]).Named("IP").Equals([]byte{0x72, 0x72, 0x72, 0x72})
-}
-
 func TestAuthenticationResponseWrite(t *testing.T) {
 	assert := unit.Assert(t)