change: simplify tests

This commit is contained in:
lilong.129
2023-06-23 13:52:56 +08:00
parent 65cfb86ac5
commit 0c8d86639b
2 changed files with 150 additions and 298 deletions

View File

@@ -7,11 +7,18 @@ import (
"testing"
)
func TestClient_ServerVersion(t *testing.T) {
adbClient, err := NewClient()
var adbClient Client
func setupClient(t *testing.T) {
var err error
adbClient, err = NewClient()
if err != nil {
t.Fatal(err)
}
}
func TestClient_ServerVersion(t *testing.T) {
setupClient(t)
adbServerVersion, err := adbClient.ServerVersion()
if err != nil {
@@ -22,10 +29,7 @@ func TestClient_ServerVersion(t *testing.T) {
}
func TestClient_DeviceSerialList(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupClient(t)
serials, err := adbClient.DeviceSerialList()
if err != nil {
@@ -38,15 +42,7 @@ func TestClient_DeviceSerialList(t *testing.T) {
}
func TestClient_DeviceList(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
for i := range devices {
t.Log(devices[i].serial, devices[i].DeviceInfo())
@@ -54,10 +50,7 @@ func TestClient_DeviceList(t *testing.T) {
}
func TestClient_ForwardList(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupClient(t)
deviceForwardList, err := adbClient.ForwardList()
if err != nil {
@@ -70,80 +63,59 @@ func TestClient_ForwardList(t *testing.T) {
}
func TestClient_ForwardKillAll(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupClient(t)
err = adbClient.ForwardKillAll()
err := adbClient.ForwardKillAll()
if err != nil {
t.Fatal(err)
}
}
func TestClient_Connect(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupClient(t)
err = adbClient.Connect("192.168.1.28")
err := adbClient.Connect("192.168.1.28")
if err != nil {
t.Fatal(err)
}
}
func TestClient_Disconnect(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupClient(t)
err = adbClient.Disconnect("192.168.1.28")
err := adbClient.Disconnect("192.168.1.28")
if err != nil {
t.Fatal(err)
}
}
func TestClient_DisconnectAll(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupClient(t)
err = adbClient.DisconnectAll()
err := adbClient.DisconnectAll()
if err != nil {
t.Fatal(err)
}
}
func TestClient_KillServer(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupClient(t)
err = adbClient.KillServer()
err := adbClient.KillServer()
if err != nil {
t.Fatal(err)
}
}
func TestScreenCap(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
dl, err := adbClient.DeviceList()
if err != nil {
t.Error(err)
for _, d := range devices {
res, err := d.ScreenCap()
if err != nil {
t.Error(err)
}
t.Log(len(res))
ioutil.WriteFile("/tmp/1.png", res, 0o644)
}
d := dl[0]
res, err := d.ScreenCap()
if err != nil {
t.Error(err)
}
t.Log(len(res))
ioutil.WriteFile("/tmp/1.png", res, 0o644)
}

View File

@@ -12,16 +12,19 @@ import (
"time"
)
func TestDevice_State(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
var devices []*Device
devices, err := adbClient.DeviceList()
func setupDevices(t *testing.T) {
var err error
setupClient(t)
devices, err = adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
}
func TestDevice_State(t *testing.T) {
setupDevices(t)
for i := range devices {
dev := devices[i]
@@ -30,19 +33,17 @@ func TestDevice_State(t *testing.T) {
t.Fatal(err)
}
t.Log(dev.Serial(), state)
resp, err := dev.RunShellCommand("ls")
if err != nil {
t.Fatal(err)
}
t.Log(string(resp))
}
}
func TestDevice_DevicePath(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
for i := range devices {
dev := devices[i]
@@ -55,15 +56,7 @@ func TestDevice_DevicePath(t *testing.T) {
}
func TestDevice_Product(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
for i := range devices {
dev := devices[i]
@@ -73,15 +66,7 @@ func TestDevice_Product(t *testing.T) {
}
func TestDevice_Model(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
for i := range devices {
dev := devices[i]
@@ -90,15 +75,7 @@ func TestDevice_Model(t *testing.T) {
}
func TestDevice_Usb(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
for i := range devices {
dev := devices[i]
@@ -107,15 +84,7 @@ func TestDevice_Usb(t *testing.T) {
}
func TestDevice_DeviceInfo(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
for i := range devices {
dev := devices[i]
@@ -124,74 +93,54 @@ func TestDevice_DeviceInfo(t *testing.T) {
}
func TestDevice_Forward(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
for _, device := range devices {
localPort := 61000
err := device.Forward(localPort, 6790)
if err != nil {
t.Fatal(err)
}
localPort := 61000
err = devices[0].Forward(localPort, 6790)
if err != nil {
t.Fatal(err)
}
err = devices[0].ForwardKill(localPort)
if err != nil {
t.Fatal(err)
err = device.ForwardKill(localPort)
if err != nil {
t.Fatal(err)
}
}
}
func TestDevice_ReverseForward(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
for _, device := range devices {
localPort := 5005
err := device.ReverseForward(localPort, "localabstract:scrcpy")
if err != nil {
t.Fatal(err)
}
err = device.ReverseForward(localPort, "localabstract:scrcpy1")
if err != nil {
t.Fatal(err)
}
localPort := 5005
err = devices[0].ReverseForward(localPort, "localabstract:scrcpy")
if err != nil {
t.Fatal(err)
}
err = devices[0].ReverseForward(localPort, "localabstract:scrcpy1")
if err != nil {
t.Fatal(err)
}
_, err = device.ReverseForwardList()
if err != nil {
t.Fatal(err)
}
_, err = devices[0].ReverseForwardList()
if err != nil {
t.Fatal(err)
}
err = devices[0].ReverseForwardKill("localabstract:scrcpy1")
if err != nil {
t.Fatal(err)
}
err = devices[0].ReverseForwardKillAll()
if err != nil {
t.Fatal(err)
err = device.ReverseForwardKill("localabstract:scrcpy1")
if err != nil {
t.Fatal(err)
}
err = device.ReverseForwardKillAll()
if err != nil {
t.Fatal(err)
}
}
}
func TestDevice_ForwardList(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
for i := range devices {
dev := devices[i]
@@ -204,32 +153,18 @@ func TestDevice_ForwardList(t *testing.T) {
}
func TestDevice_ForwardKill(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
err = devices[0].ForwardKill(6790)
if err != nil {
t.Fatal(err)
for _, device := range devices {
err := device.ForwardKill(6790)
if err != nil {
t.Fatal(err)
}
}
}
func TestDevice_RunShellCommand(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
// for i := range devices {
// dev := devices[i]
@@ -243,112 +178,75 @@ func TestDevice_RunShellCommand(t *testing.T) {
// t.Log("\n"+dev.serial, cmdOutput)
// }
dev := devices[len(devices)-1]
dev = devices[0]
// cmdOutput, err := dev.RunShellCommand("monkey", "-p", "tv.danmaku.bili", "-c", "android.intent.category.LAUNCHER", "1")
cmdOutput, err := dev.RunShellCommand("ls /sdcard")
// cmdOutput, err := dev.RunShellCommandWithBytes("screencap -p")
if err != nil {
t.Fatal(dev.serial, err)
for _, dev := range devices {
// cmdOutput, err := dev.RunShellCommand("monkey", "-p", "tv.danmaku.bili", "-c", "android.intent.category.LAUNCHER", "1")
cmdOutput, err := dev.RunShellCommand("ls /sdcard")
// cmdOutput, err := dev.RunShellCommandWithBytes("screencap -p")
if err != nil {
t.Fatal(dev.serial, err)
}
t.Log("\n⬇"+dev.serial+"⬇️\n", cmdOutput)
}
t.Log("\n⬇"+dev.serial+"⬇️\n", cmdOutput)
}
func TestDevice_EnableAdbOverTCP(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
dev := devices[len(devices)-1]
dev = devices[0]
err = dev.EnableAdbOverTCP()
if err != nil {
t.Fatal(err)
for _, dev := range devices {
err := dev.EnableAdbOverTCP()
if err != nil {
t.Fatal(err)
}
}
}
func TestDevice_List(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
for _, dev := range devices {
// fileEntries, err := dev.List("/sdcard")
fileEntries, err := dev.List("/sdcard/Download")
if err != nil {
t.Fatal(err)
}
dev := devices[len(devices)-1]
dev = devices[0]
// fileEntries, err := dev.List("/sdcard")
fileEntries, err := dev.List("/sdcard/Download")
if err != nil {
t.Fatal(err)
}
for i := range fileEntries {
t.Log(fileEntries[i].Name, "\t", fileEntries[i].IsDir())
for i := range fileEntries {
t.Log(fileEntries[i].Name, "\t", fileEntries[i].IsDir())
}
}
}
func TestDevice_Push(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
for _, dev := range devices {
file, _ := os.Open("/Users/hero/Documents/temp/MuMu共享文件夹/test.txt")
err := dev.PushFile(file, "/sdcard/Download/push.txt", time.Now())
if err != nil {
t.Fatal(err)
}
dev := devices[len(devices)-1]
dev = devices[0]
file, _ := os.Open("/Users/hero/Documents/temp/MuMu共享文件夹/test.txt")
err = dev.PushFile(file, "/sdcard/Download/push.txt", time.Now())
if err != nil {
t.Fatal(err)
}
err = dev.Push(strings.NewReader("world"), "/sdcard/Download/hello.txt", time.Now())
if err != nil {
t.Fatal(err)
err = dev.Push(strings.NewReader("world"), "/sdcard/Download/hello.txt", time.Now())
if err != nil {
t.Fatal(err)
}
}
}
func TestDevice_Pull(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
}
setupDevices(t)
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
for _, dev := range devices {
buffer := bytes.NewBufferString("")
err := dev.Pull("/sdcard/Download/hello.txt", buffer)
if err != nil {
t.Fatal(err)
}
dev := devices[len(devices)-1]
dev = devices[0]
buffer := bytes.NewBufferString("")
err = dev.Pull("/sdcard/Download/hello.txt", buffer)
if err != nil {
t.Fatal(err)
}
userHomeDir, _ := os.UserHomeDir()
if err = ioutil.WriteFile(userHomeDir+"/Desktop/hello.txt", buffer.Bytes(), DefaultFileMode); err != nil {
t.Fatal(err)
userHomeDir, _ := os.UserHomeDir()
if err = ioutil.WriteFile(userHomeDir+"/Desktop/hello.txt", buffer.Bytes(), DefaultFileMode); err != nil {
t.Fatal(err)
}
}
}
@@ -405,40 +303,22 @@ func TestDevice_RunShellCommandBackgroundWithBytes(t *testing.T) {
}
func TestDevice_InstallAPK(t *testing.T) {
setupDevices(t)
apk, _ := os.Open("test.apk")
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
for _, dev := range devices {
res, err := dev.InstallAPK(apk)
if err != nil {
t.Fatal(err)
}
t.Log(res)
}
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
dev := devices[len(devices)-1]
dev = devices[0]
res, err := dev.InstallAPK(apk)
if err != nil {
t.Fatal(err)
}
t.Log(res)
}
func TestDevice_HasFeature(t *testing.T) {
adbClient, err := NewClient()
if err != nil {
t.Fatal(err)
setupDevices(t)
for _, dev := range devices {
t.Log(dev.GetFeatures())
}
devices, err := adbClient.DeviceList()
if err != nil {
t.Fatal(err)
}
dev := devices[len(devices)-1]
dev = devices[0]
t.Log(dev.GetFeatures())
}