1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- package platform_test
- import (
- "os"
- "path/filepath"
- "runtime"
- "testing"
- "github.com/xtls/xray-core/common"
- . "github.com/xtls/xray-core/common/platform"
- )
- func TestNormalizeEnvName(t *testing.T) {
- cases := []struct {
- input string
- output string
- }{
- {
- input: "a",
- output: "A",
- },
- {
- input: "a.a",
- output: "A_A",
- },
- {
- input: "A.A.B",
- output: "A_A_B",
- },
- }
- for _, test := range cases {
- if v := NormalizeEnvName(test.input); v != test.output {
- t.Error("unexpected output: ", v, " want ", test.output)
- }
- }
- }
- func TestEnvFlag(t *testing.T) {
- if v := (EnvFlag{
- Name: "xxxxx.y",
- }.GetValueAsInt(10)); v != 10 {
- t.Error("env value: ", v)
- }
- }
- func TestGetAssetLocation(t *testing.T) {
- exec, err := os.Executable()
- common.Must(err)
- loc := GetAssetLocation("t")
- if filepath.Dir(loc) != filepath.Dir(exec) {
- t.Error("asset dir: ", loc, " not in ", exec)
- }
- os.Setenv("xray.location.asset", "/xray")
- if runtime.GOOS == "windows" {
- if v := GetAssetLocation("t"); v != "\\xray\\t" {
- t.Error("asset loc: ", v)
- }
- } else {
- if v := GetAssetLocation("t"); v != "/xray/t" {
- t.Error("asset loc: ", v)
- }
- }
- }
|