freedom_test.go 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package v4_test
  2. import (
  3. "testing"
  4. "github.com/v2fly/v2ray-core/v4/common/net"
  5. "github.com/v2fly/v2ray-core/v4/common/protocol"
  6. "github.com/v2fly/v2ray-core/v4/infra/conf/cfgcommon"
  7. "github.com/v2fly/v2ray-core/v4/infra/conf/cfgcommon/testassist"
  8. "github.com/v2fly/v2ray-core/v4/infra/conf/v4"
  9. "github.com/v2fly/v2ray-core/v4/proxy/freedom"
  10. )
  11. func TestFreedomConfig(t *testing.T) {
  12. creator := func() cfgcommon.Buildable {
  13. return new(v4.FreedomConfig)
  14. }
  15. testassist.RunMultiTestCase(t, []testassist.TestCase{
  16. {
  17. Input: `{
  18. "domainStrategy": "AsIs",
  19. "timeout": 10,
  20. "redirect": "127.0.0.1:3366",
  21. "userLevel": 1
  22. }`,
  23. Parser: testassist.LoadJSON(creator),
  24. Output: &freedom.Config{
  25. DomainStrategy: freedom.Config_AS_IS,
  26. Timeout: 10,
  27. DestinationOverride: &freedom.DestinationOverride{
  28. Server: &protocol.ServerEndpoint{
  29. Address: &net.IPOrDomain{
  30. Address: &net.IPOrDomain_Ip{
  31. Ip: []byte{127, 0, 0, 1},
  32. },
  33. },
  34. Port: 3366,
  35. },
  36. },
  37. UserLevel: 1,
  38. },
  39. },
  40. })
  41. }