| package utils | |
| import ( | |
| "github.com/Tencent/AI-Infra-Guard/pkg/httpx" | |
| "github.com/hashicorp/go-version" | |
| "github.com/projectdiscovery/fastdialer/fastdialer" | |
| "github.com/stretchr/testify/assert" | |
| "testing" | |
| "time" | |
| ) | |
| func TestIsFileExists(t *testing.T) { | |
| assert.True(t, IsFileExists("/etc/passwd")) | |
| assert.True(t, IsFileExists("/etc/")) | |
| assert.False(t, IsDir("/etc/passwd")) | |
| assert.True(t, IsDir("/etc/")) | |
| } | |
| func TestCompareVersions(t *testing.T) { | |
| version1 := "1.0.0" | |
| version2 := "1.2" | |
| v := CompareVersions(version1, version2) | |
| t.Log(v) | |
| } | |
| func TestCompareVersions2(t *testing.T) { | |
| version1 := "2.13" | |
| version2 := "2.13.1" | |
| v1 := version.Must(version.NewVersion(version1)) | |
| v2 := version.Must(version.NewVersion(version2)) | |
| assert.True(t, v1.LessThan(v2)) | |
| } | |
| func TestFaviconHash(t *testing.T) { | |
| url := "http://127.0.0.1:8265/favicon.ico" | |
| dialer, err := fastdialer.NewDialer(fastdialer.DefaultOptions) | |
| assert.NoError(t, err) | |
| httpOptions := &httpx.HTTPOptions{ | |
| Timeout: time.Duration(30) * time.Second, | |
| RetryMax: 3, | |
| FollowRedirects: false, | |
| Unsafe: false, | |
| DefaultUserAgent: httpx.GetRandomUserAgent(), | |
| Dialer: dialer, | |
| } | |
| hp, err := httpx.NewHttpx(httpOptions) | |
| assert.NoError(t, err) | |
| resp, err := hp.Get(url, nil) | |
| assert.NoError(t, err) | |
| hash := FaviconHash(resp.Data) | |
| t.Log(hash) | |
| } | |
| func TestGetLocalOpenPorts(t *testing.T) { | |
| op, err := GetLocalOpenPorts() | |
| assert.NoError(t, err) | |
| for _, item := range op { | |
| t.Log(item.Address, item.Port) | |
| } | |
| } | |