2019-02-10 13:04:11 -05:00
|
|
|
package conf_test
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
|
2021-02-16 15:31:50 -05:00
|
|
|
"github.com/v2fly/v2ray-core/v4/common/net"
|
|
|
|
"github.com/v2fly/v2ray-core/v4/common/protocol"
|
|
|
|
. "github.com/v2fly/v2ray-core/v4/infra/conf"
|
|
|
|
"github.com/v2fly/v2ray-core/v4/proxy/freedom"
|
2019-02-10 13:04:11 -05:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestFreedomConfig(t *testing.T) {
|
|
|
|
creator := func() Buildable {
|
|
|
|
return new(FreedomConfig)
|
|
|
|
}
|
|
|
|
|
|
|
|
runMultiTestCase(t, []TestCase{
|
|
|
|
{
|
|
|
|
Input: `{
|
|
|
|
"domainStrategy": "AsIs",
|
|
|
|
"timeout": 10,
|
|
|
|
"redirect": "127.0.0.1:3366",
|
|
|
|
"userLevel": 1
|
|
|
|
}`,
|
|
|
|
Parser: loadJSON(creator),
|
|
|
|
Output: &freedom.Config{
|
|
|
|
DomainStrategy: freedom.Config_AS_IS,
|
|
|
|
Timeout: 10,
|
|
|
|
DestinationOverride: &freedom.DestinationOverride{
|
|
|
|
Server: &protocol.ServerEndpoint{
|
|
|
|
Address: &net.IPOrDomain{
|
|
|
|
Address: &net.IPOrDomain_Ip{
|
|
|
|
Ip: []byte{127, 0, 0, 1},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
Port: 3366,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
UserLevel: 1,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
})
|
|
|
|
}
|