mirror of
https://github.com/v2ray/v2ray-core.git
synced 2026-11-13 22:45:13 +00:00
update end 2 end test
This commit is contained in:
1 parent
5003afc85c
commit
9b830fc432
7 files changed
+111
-22
No files matched your search
@@ -3,6 +3,9 @@ package scenarios
|
||||
import (
|
||||
"net"
|
||||
|
||||
routerconfig "github.com/v2ray/v2ray-core/app/router/config/testing"
|
||||
_ "github.com/v2ray/v2ray-core/app/router/rules"
|
||||
rulesconfig "github.com/v2ray/v2ray-core/app/router/rules/config/testing"
|
||||
v2net "github.com/v2ray/v2ray-core/common/net"
|
||||
v2nettesting "github.com/v2ray/v2ray-core/common/net/testing"
|
||||
_ "github.com/v2ray/v2ray-core/proxy/freedom"
|
||||
@@ -58,14 +61,14 @@ func socks5UDPRequest(address v2net.Address, payload []byte) []byte {
|
||||
return request
|
||||
}
|
||||
|
||||
func setUpV2Ray() (v2net.Port, error) {
|
||||
func setUpV2Ray(routing func(v2net.Destination) bool) (v2net.Port, v2net.Port, error) {
|
||||
id1, err := config.NewID("ad937d9d-6e23-4a5a-ba23-bce5092a7c51")
|
||||
if err != nil {
|
||||
return 0, err
|
||||
return 0, 0, err
|
||||
}
|
||||
id2, err := config.NewID("93ccfc71-b136-4015-ac85-e037bd1ead9e")
|
||||
if err != nil {
|
||||
return 0, err
|
||||
return 0, 0, err
|
||||
}
|
||||
users := []*vmessjson.ConfigUser{
|
||||
&vmessjson.ConfigUser{Id: id1},
|
||||
@@ -88,14 +91,15 @@ func setUpV2Ray() (v2net.Port, error) {
|
||||
}
|
||||
pointB, err := point.NewPoint(&configB)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
return 0, 0, err
|
||||
}
|
||||
err = pointB.Start()
|
||||
if err != nil {
|
||||
return 0, err
|
||||
return 0, 0, err
|
||||
}
|
||||
|
||||
portA := v2nettesting.PickPort()
|
||||
portA2 := v2nettesting.PickPort()
|
||||
configA := mocks.Config{
|
||||
PortValue: portA,
|
||||
InboundConfigValue: &mocks.ConnectionConfig{
|
||||
@@ -117,16 +121,52 @@ func setUpV2Ray() (v2net.Port, error) {
|
||||
},
|
||||
},
|
||||
},
|
||||
InboundDetoursValue: []*mocks.InboundDetourConfig{
|
||||
&mocks.InboundDetourConfig{
|
||||
PortRangeValue: &mocks.PortRange{
|
||||
FromValue: portA2,
|
||||
ToValue: portA2,
|
||||
},
|
||||
ConnectionConfig: &mocks.ConnectionConfig{
|
||||
ProtocolValue: "socks",
|
||||
SettingsValue: &socksjson.SocksConfig{
|
||||
AuthMethod: "noauth",
|
||||
UDPEnabled: false,
|
||||
HostIP: socksjson.IPAddress(net.IPv4(127, 0, 0, 1)),
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
OutboundDetoursValue: []*mocks.OutboundDetourConfig{
|
||||
&mocks.OutboundDetourConfig{
|
||||
TagValue: "direct",
|
||||
ConnectionConfig: &mocks.ConnectionConfig{
|
||||
ProtocolValue: "freedom",
|
||||
SettingsValue: nil,
|
||||
},
|
||||
},
|
||||
},
|
||||
RouterConfigValue: &routerconfig.RouterConfig{
|
||||
StrategyValue: "rules",
|
||||
SettingsValue: &rulesconfig.RouterRuleConfig{
|
||||
RuleList: []*rulesconfig.TestRule{
|
||||
&rulesconfig.TestRule{
|
||||
TagValue: "direct",
|
||||
Function: routing,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
pointA, err := point.NewPoint(&configA)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
return 0, 0, err
|
||||
}
|
||||
err = pointA.Start()
|
||||
if err != nil {
|
||||
return 0, err
|
||||
return 0, 0, err
|
||||
}
|
||||
|
||||
return portA, nil
|
||||
return portA, portA2, nil
|
||||
}
|
||||
@@ -12,6 +12,12 @@ import (
|
||||
"github.com/v2ray/v2ray-core/testing/servers/udp"
|
||||
)
|
||||
|
||||
var (
|
||||
EmptyRouting = func(v2net.Destination) bool {
|
||||
return false
|
||||
}
|
||||
)
|
||||
|
||||
func TestTCPConnection(t *testing.T) {
|
||||
v2testing.Current(t)
|
||||
|
||||
@@ -28,7 +34,7 @@ func TestTCPConnection(t *testing.T) {
|
||||
_, err := tcpServer.Start()
|
||||
assert.Error(err).IsNil()
|
||||
|
||||
v2rayPort, err := setUpV2Ray()
|
||||
v2rayPort, _, err := setUpV2Ray(EmptyRouting)
|
||||
assert.Error(err).IsNil()
|
||||
|
||||
for i := 0; i < 100; i++ {
|
||||
@@ -94,7 +100,7 @@ func TestTCPBind(t *testing.T) {
|
||||
_, err := tcpServer.Start()
|
||||
assert.Error(err).IsNil()
|
||||
|
||||
v2rayPort, err := setUpV2Ray()
|
||||
v2rayPort, _, err := setUpV2Ray(EmptyRouting)
|
||||
assert.Error(err).IsNil()
|
||||
|
||||
conn, err := net.DialTCP("tcp", nil, &net.TCPAddr{
|
||||
@@ -141,7 +147,7 @@ func TestUDPAssociate(t *testing.T) {
|
||||
_, err := udpServer.Start()
|
||||
assert.Error(err).IsNil()
|
||||
|
||||
v2rayPort, err := setUpV2Ray()
|
||||
v2rayPort, _, err := setUpV2Ray(EmptyRouting)
|
||||
assert.Error(err).IsNil()
|
||||
|
||||
conn, err := net.DialTCP("tcp", nil, &net.TCPAddr{
|
||||
|
||||
Reference in new issue
Block a user