mirror of https://github.com/v2ray/v2ray-core
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
665 B
30 lines
665 B
package conf_test
|
|
|
|
import (
|
|
"encoding/json"
|
|
"testing"
|
|
|
|
v2net "v2ray.com/core/common/net"
|
|
"v2ray.com/core/testing/assert"
|
|
. "v2ray.com/core/tools/conf"
|
|
)
|
|
|
|
func TestDnsConfigParsing(t *testing.T) {
|
|
assert := assert.On(t)
|
|
|
|
rawJson := `{
|
|
"servers": ["8.8.8.8"]
|
|
}`
|
|
|
|
jsonConfig := new(DnsConfig)
|
|
err := json.Unmarshal([]byte(rawJson), jsonConfig)
|
|
assert.Error(err).IsNil()
|
|
|
|
config := jsonConfig.Build()
|
|
assert.Int(len(config.NameServers)).Equals(1)
|
|
dest := config.NameServers[0].AsDestination()
|
|
assert.Destination(dest).IsUDP()
|
|
assert.Address(dest.Address).Equals(v2net.IPAddress([]byte{8, 8, 8, 8}))
|
|
assert.Port(dest.Port).Equals(v2net.Port(53))
|
|
}
|