浏览代码

test case for chinaip

v2ray 10 年之前
父节点
当前提交
9d51bd2985
共有 1 个文件被更改,包括 25 次插入0 次删除
  1. 25 0
      app/router/rules/json/chinaip_test.go

+ 25 - 0
app/router/rules/json/chinaip_test.go

@@ -0,0 +1,25 @@
+package json
+
+import (
+	"net"
+	"testing"
+
+	v2net "github.com/v2ray/v2ray-core/common/net"
+	v2testing "github.com/v2ray/v2ray-core/testing"
+	"github.com/v2ray/v2ray-core/testing/assert"
+)
+
+func makeDestination(ip string) v2net.Destination {
+	return v2net.NewTCPDestination(v2net.IPAddress(net.ParseIP(ip), 80))
+}
+
+func TestChinaIP(t *testing.T) {
+	v2testing.Current(t)
+
+	rule := &ChinaIPRule{}
+	assert.Bool(rule.Apply(makeDestination("121.14.1.189"))).IsTrue()    // sina.com.cn
+	assert.Bool(rule.Apply(makeDestination("101.226.103.106"))).IsTrue() // qq.com
+	assert.Bool(rule.Apply(makeDestination("115.239.210.36"))).IsTrue()  // image.baidu.com
+
+	assert.Bool(rule.Apply(makeDestination("8.8.8.8"))).IsFalse()
+}