mirror of
https://github.com/v2fly/v2ray-core.git
synced 2025-02-20 23:47:21 -05:00
Refine geodata related tests (#967)
(cherry picked from commit 7805ca2ac1c806f8d6adf4a0e972b2543fb39060)
This commit is contained in:
parent
bf0e7e35c8
commit
3ba9a5b4f5
@ -22,17 +22,15 @@ func init() {
|
|||||||
common.Must(err)
|
common.Must(err)
|
||||||
|
|
||||||
tempPath := filepath.Join(wd, "..", "..", "testing", "temp")
|
tempPath := filepath.Join(wd, "..", "..", "testing", "temp")
|
||||||
geoipPath := filepath.Join(tempPath, "geoip.dat")
|
|
||||||
|
|
||||||
os.Setenv("v2ray.location.asset", tempPath)
|
os.Setenv("v2ray.location.asset", tempPath)
|
||||||
|
|
||||||
if _, err := os.Stat(platform.GetAssetLocation("geoip.dat")); err != nil && errors.Is(err, fs.ErrNotExist) {
|
geoipPath := platform.GetAssetLocation("geoip.dat")
|
||||||
if _, err := os.Stat(geoipPath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
|
||||||
common.Must(os.MkdirAll(tempPath, 0755))
|
if _, err := os.Stat(geoipPath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
||||||
geoipBytes, err := common.FetchHTTPContent(geoipURL)
|
common.Must(os.MkdirAll(tempPath, 0755))
|
||||||
common.Must(err)
|
geoipBytes, err := common.FetchHTTPContent(geoipURL)
|
||||||
common.Must(filesystem.WriteFile(geoipPath, geoipBytes))
|
common.Must(err)
|
||||||
}
|
common.Must(filesystem.WriteFile(geoipPath, geoipBytes))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -28,27 +28,22 @@ func init() {
|
|||||||
common.Must(err)
|
common.Must(err)
|
||||||
|
|
||||||
tempPath := filepath.Join(wd, "..", "..", "testing", "temp")
|
tempPath := filepath.Join(wd, "..", "..", "testing", "temp")
|
||||||
geoipPath := filepath.Join(tempPath, "geoip.dat")
|
|
||||||
geositePath := filepath.Join(tempPath, "geosite.dat")
|
|
||||||
|
|
||||||
os.Setenv("v2ray.location.asset", tempPath)
|
os.Setenv("v2ray.location.asset", tempPath)
|
||||||
|
|
||||||
if _, err := os.Stat(platform.GetAssetLocation("geoip.dat")); err != nil && errors.Is(err, fs.ErrNotExist) {
|
geoipPath := platform.GetAssetLocation("geoip.dat")
|
||||||
if _, err := os.Stat(geoipPath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
geositePath := platform.GetAssetLocation("geosite.dat")
|
||||||
common.Must(os.MkdirAll(tempPath, 0755))
|
|
||||||
geoipBytes, err := common.FetchHTTPContent(geoipURL)
|
|
||||||
common.Must(err)
|
|
||||||
common.Must(filesystem.WriteFile(geoipPath, geoipBytes))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if _, err := os.Stat(platform.GetAssetLocation("geosite.dat")); err != nil && errors.Is(err, fs.ErrNotExist) {
|
if _, err := os.Stat(geoipPath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
||||||
if _, err := os.Stat(geositePath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
common.Must(os.MkdirAll(tempPath, 0755))
|
||||||
common.Must(os.MkdirAll(tempPath, 0755))
|
geoipBytes, err := common.FetchHTTPContent(geoipURL)
|
||||||
geositeBytes, err := common.FetchHTTPContent(geositeURL)
|
common.Must(err)
|
||||||
common.Must(err)
|
common.Must(filesystem.WriteFile(geoipPath, geoipBytes))
|
||||||
common.Must(filesystem.WriteFile(geositePath, geositeBytes))
|
}
|
||||||
}
|
if _, err := os.Stat(geositePath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
||||||
|
common.Must(os.MkdirAll(tempPath, 0755))
|
||||||
|
geositeBytes, err := common.FetchHTTPContent(geositeURL)
|
||||||
|
common.Must(err)
|
||||||
|
common.Must(filesystem.WriteFile(geositePath, geositeBytes))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,27 +25,22 @@ func init() {
|
|||||||
common.Must(err)
|
common.Must(err)
|
||||||
|
|
||||||
tempPath := filepath.Join(wd, "..", "..", "testing", "temp")
|
tempPath := filepath.Join(wd, "..", "..", "testing", "temp")
|
||||||
geoipPath := filepath.Join(tempPath, "geoip.dat")
|
|
||||||
geositePath := filepath.Join(tempPath, "geosite.dat")
|
|
||||||
|
|
||||||
os.Setenv("v2ray.location.asset", tempPath)
|
os.Setenv("v2ray.location.asset", tempPath)
|
||||||
|
|
||||||
if _, err := os.Stat(platform.GetAssetLocation("geoip.dat")); err != nil && errors.Is(err, fs.ErrNotExist) {
|
geoipPath := platform.GetAssetLocation("geoip.dat")
|
||||||
if _, err := os.Stat(geoipPath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
geositePath := platform.GetAssetLocation("geosite.dat")
|
||||||
common.Must(os.MkdirAll(tempPath, 0755))
|
|
||||||
geoipBytes, err := common.FetchHTTPContent(geoipURL)
|
|
||||||
common.Must(err)
|
|
||||||
common.Must(filesystem.WriteFile(geoipPath, geoipBytes))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if _, err := os.Stat(platform.GetAssetLocation("geosite.dat")); err != nil && errors.Is(err, fs.ErrNotExist) {
|
if _, err := os.Stat(geoipPath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
||||||
if _, err := os.Stat(geositePath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
common.Must(os.MkdirAll(tempPath, 0755))
|
||||||
common.Must(os.MkdirAll(tempPath, 0755))
|
geoipBytes, err := common.FetchHTTPContent(geoipURL)
|
||||||
geositeBytes, err := common.FetchHTTPContent(geositeURL)
|
common.Must(err)
|
||||||
common.Must(err)
|
common.Must(filesystem.WriteFile(geoipPath, geoipBytes))
|
||||||
common.Must(filesystem.WriteFile(geositePath, geositeBytes))
|
}
|
||||||
}
|
if _, err := os.Stat(geositePath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
||||||
|
common.Must(os.MkdirAll(tempPath, 0755))
|
||||||
|
geositeBytes, err := common.FetchHTTPContent(geositeURL)
|
||||||
|
common.Must(err)
|
||||||
|
common.Must(filesystem.WriteFile(geositePath, geositeBytes))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
package memconservative
|
package memconservative
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bytes"
|
||||||
"errors"
|
"errors"
|
||||||
"io/fs"
|
"io/fs"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/google/go-cmp/cmp"
|
|
||||||
"github.com/v2fly/v2ray-core/v4/common"
|
"github.com/v2fly/v2ray-core/v4/common"
|
||||||
"github.com/v2fly/v2ray-core/v4/common/platform"
|
"github.com/v2fly/v2ray-core/v4/common/platform"
|
||||||
"github.com/v2fly/v2ray-core/v4/common/platform/filesystem"
|
"github.com/v2fly/v2ray-core/v4/common/platform/filesystem"
|
||||||
@ -23,27 +23,22 @@ func init() {
|
|||||||
common.Must(err)
|
common.Must(err)
|
||||||
|
|
||||||
tempPath := filepath.Join(wd, "..", "..", "testing", "temp")
|
tempPath := filepath.Join(wd, "..", "..", "testing", "temp")
|
||||||
geoipPath := filepath.Join(tempPath, "geoip.dat")
|
|
||||||
geositePath := filepath.Join(tempPath, "geosite.dat")
|
|
||||||
|
|
||||||
os.Setenv("v2ray.location.asset", tempPath)
|
os.Setenv("v2ray.location.asset", tempPath)
|
||||||
|
|
||||||
common.Must(os.MkdirAll(tempPath, 0755))
|
geoipPath := platform.GetAssetLocation("geoip.dat")
|
||||||
|
geositePath := platform.GetAssetLocation("geosite.dat")
|
||||||
|
|
||||||
if _, err := os.Stat(platform.GetAssetLocation("geoip.dat")); err != nil && errors.Is(err, fs.ErrNotExist) {
|
if _, err := os.Stat(geoipPath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
||||||
if _, err := os.Stat(geoipPath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
common.Must(os.MkdirAll(tempPath, 0755))
|
||||||
geoipBytes, err := common.FetchHTTPContent(geoipURL)
|
geoipBytes, err := common.FetchHTTPContent(geoipURL)
|
||||||
common.Must(err)
|
common.Must(err)
|
||||||
common.Must(filesystem.WriteFile(geoipPath, geoipBytes))
|
common.Must(filesystem.WriteFile(geoipPath, geoipBytes))
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
if _, err := os.Stat(geositePath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
||||||
if _, err := os.Stat(platform.GetAssetLocation("geosite.dat")); err != nil && errors.Is(err, fs.ErrNotExist) {
|
common.Must(os.MkdirAll(tempPath, 0755))
|
||||||
if _, err := os.Stat(geositePath); err != nil && errors.Is(err, fs.ErrNotExist) {
|
geositeBytes, err := common.FetchHTTPContent(geositeURL)
|
||||||
geositeBytes, err := common.FetchHTTPContent(geositeURL)
|
common.Must(err)
|
||||||
common.Must(err)
|
common.Must(filesystem.WriteFile(geositePath, geositeBytes))
|
||||||
common.Must(filesystem.WriteFile(geositePath, geositeBytes))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -55,7 +50,7 @@ func TestDecodeGeoIP(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
expected := []byte{10, 4, 84, 69, 83, 84, 18, 8, 10, 4, 127, 0, 0, 0, 16, 8}
|
expected := []byte{10, 4, 84, 69, 83, 84, 18, 8, 10, 4, 127, 0, 0, 0, 16, 8}
|
||||||
if cmp.Diff(result, expected) != "" {
|
if !bytes.Equal(result, expected) {
|
||||||
t.Errorf("failed to load geoip:test, expected: %v, got: %v", expected, result)
|
t.Errorf("failed to load geoip:test, expected: %v, got: %v", expected, result)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -68,7 +63,7 @@ func TestDecodeGeoSite(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
expected := []byte{10, 4, 84, 69, 83, 84, 18, 20, 8, 3, 18, 16, 116, 101, 115, 116, 46, 101, 120, 97, 109, 112, 108, 101, 46, 99, 111, 109}
|
expected := []byte{10, 4, 84, 69, 83, 84, 18, 20, 8, 3, 18, 16, 116, 101, 115, 116, 46, 101, 120, 97, 109, 112, 108, 101, 46, 99, 111, 109}
|
||||||
if cmp.Diff(result, expected) != "" {
|
if !bytes.Equal(result, expected) {
|
||||||
t.Errorf("failed to load geosite:test, expected: %v, got: %v", expected, result)
|
t.Errorf("failed to load geosite:test, expected: %v, got: %v", expected, result)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user