From 5707715d1919517b55eb3f78c483ffcc01bd89bd Mon Sep 17 00:00:00 2001 From: "lilong.129" Date: Thu, 6 Feb 2025 19:53:47 +0800 Subject: [PATCH] refactor: rename files --- internal/version/VERSION | 2 +- pkg/uixt/android_driver_adb.go | 6 ++-- pkg/uixt/android_driver_stub.go | 2 +- pkg/uixt/android_driver_uia2.go | 14 ++++---- pkg/uixt/driver.go | 36 +++++++++---------- pkg/uixt/{action.go => driver_action.go} | 0 .../{action_test.go => driver_action_test.go} | 0 pkg/uixt/harmony_driver_hdc.go | 6 ++-- pkg/uixt/ios_driver_stub.go | 21 +++++------ pkg/uixt/ios_driver_wda.go | 14 ++++---- 10 files changed, 51 insertions(+), 50 deletions(-) rename pkg/uixt/{action.go => driver_action.go} (100%) rename pkg/uixt/{action_test.go => driver_action_test.go} (100%) diff --git a/internal/version/VERSION b/internal/version/VERSION index d0ed4412..524673de 100644 --- a/internal/version/VERSION +++ b/internal/version/VERSION @@ -1 +1 @@ -v5.0.0+2502061808 +v5.0.0+2502061953 diff --git a/pkg/uixt/android_driver_adb.go b/pkg/uixt/android_driver_adb.go index 6fd18ec0..9b33dba9 100644 --- a/pkg/uixt/android_driver_adb.go +++ b/pkg/uixt/android_driver_adb.go @@ -33,7 +33,7 @@ const ( ) type adbDriver struct { - Driver + DriverClient adbClient *gadb.Device logcat *AdbLogcat @@ -80,7 +80,7 @@ func (ad *adbDriver) runShellCommand(cmd string, args ...string) (output string, } func (ad *adbDriver) NewSession(capabilities option.Capabilities) (sessionInfo SessionInfo, err error) { - ad.Driver.session.Reset() + ad.DriverClient.session.Reset() err = errDriverNotImplemented return } @@ -863,7 +863,7 @@ func (ad *adbDriver) StopCaptureLog() (result interface{}, err error) { } func (ad *adbDriver) GetSession() *DriverSession { - return &ad.Driver.session + return &ad.DriverClient.session } func (ad *adbDriver) GetDriverResults() []*DriverResult { diff --git a/pkg/uixt/android_driver_stub.go b/pkg/uixt/android_driver_stub.go index 1bedf6d1..88cfb329 100644 --- a/pkg/uixt/android_driver_stub.go +++ b/pkg/uixt/android_driver_stub.go @@ -102,7 +102,7 @@ func (sad *stubAndroidDriver) httpPOST(data interface{}, pathElem ...string) (ra } func (sad *stubAndroidDriver) NewSession(capabilities option.Capabilities) (SessionInfo, error) { - sad.Driver.session.Reset() + sad.DriverClient.session.Reset() return SessionInfo{}, errDriverNotImplemented } diff --git a/pkg/uixt/android_driver_uia2.go b/pkg/uixt/android_driver_uia2.go index 9d79aa5a..a3181ae4 100644 --- a/pkg/uixt/android_driver_uia2.go +++ b/pkg/uixt/android_driver_uia2.go @@ -97,7 +97,7 @@ func (ud *uiaDriver) resetDriver() error { func (ud *uiaDriver) httpRequest(method string, rawURL string, rawBody []byte) (rawResp rawResponse, err error) { for retryCount := 1; retryCount <= 5; retryCount++ { - rawResp, err = ud.Driver.Request(method, rawURL, rawBody) + rawResp, err = ud.DriverClient.Request(method, rawURL, rawBody) if err == nil { return } @@ -143,7 +143,7 @@ func (ud *uiaDriver) NewSession(capabilities option.Capabilities) (sessionInfo S } else { data["capabilities"] = map[string]interface{}{"alwaysMatch": capabilities} } - if rawResp, err = ud.Driver.POST(data, "/session"); err != nil { + if rawResp, err = ud.DriverClient.POST(data, "/session"); err != nil { return SessionInfo{SessionId: ""}, err } reply := new(struct{ Value struct{ SessionId string } }) @@ -151,8 +151,8 @@ func (ud *uiaDriver) NewSession(capabilities option.Capabilities) (sessionInfo S return SessionInfo{SessionId: ""}, err } sessionID := reply.Value.SessionId - ud.Driver.session.Reset() - ud.Driver.session.ID = sessionID + ud.DriverClient.session.Reset() + ud.DriverClient.session.ID = sessionID // d.sessionIdCache[sessionID] = true return SessionInfo{SessionId: sessionID}, nil } @@ -172,7 +172,7 @@ func (ud *uiaDriver) Status() (deviceStatus DeviceStatus, err error) { // register(getHandler, new Status("/wd/hub/status")) var rawResp rawResponse // Notice: use Driver.GET instead of httpGET to avoid loop calling - if rawResp, err = ud.Driver.GET("/status"); err != nil { + if rawResp, err = ud.DriverClient.GET("/status"); err != nil { return DeviceStatus{Ready: false}, err } reply := new(struct { @@ -650,7 +650,7 @@ func (ud *uiaDriver) TapByTexts(actions ...TapTextAction) error { func (ud *uiaDriver) GetDriverResults() []*DriverResult { defer func() { - ud.Driver.driverResults = nil + ud.DriverClient.driverResults = nil }() - return ud.Driver.driverResults + return ud.DriverClient.driverResults } diff --git a/pkg/uixt/driver.go b/pkg/uixt/driver.go index 0062d78f..d8f9d480 100644 --- a/pkg/uixt/driver.go +++ b/pkg/uixt/driver.go @@ -220,19 +220,6 @@ func (d *DriverSession) Get(withReset bool) Attachments { return data } -type Driver struct { - urlPrefix *url.URL - client *http.Client - - // cache to avoid repeated query - scale float64 - windowSize Size - driverResults []*DriverResult - - // cache session data - session DriverSession -} - type DriverResult struct { RequestMethod string `json:"request_method"` RequestUrl string `json:"request_url"` @@ -246,7 +233,20 @@ type DriverResult struct { Error string `json:"error,omitempty"` } -func (wd *Driver) concatURL(u *url.URL, elem ...string) string { +type DriverClient struct { + urlPrefix *url.URL + client *http.Client + + // cache to avoid repeated query + scale float64 + windowSize Size + driverResults []*DriverResult + + // cache session data + session DriverSession +} + +func (wd *DriverClient) concatURL(u *url.URL, elem ...string) string { var tmp *url.URL if u == nil { u = wd.urlPrefix @@ -256,11 +256,11 @@ func (wd *Driver) concatURL(u *url.URL, elem ...string) string { return tmp.String() } -func (wd *Driver) GET(pathElem ...string) (rawResp rawResponse, err error) { +func (wd *DriverClient) GET(pathElem ...string) (rawResp rawResponse, err error) { return wd.Request(http.MethodGet, wd.concatURL(nil, pathElem...), nil) } -func (wd *Driver) POST(data interface{}, pathElem ...string) (rawResp rawResponse, err error) { +func (wd *DriverClient) POST(data interface{}, pathElem ...string) (rawResp rawResponse, err error) { var bsJSON []byte = nil if data != nil { if bsJSON, err = json.Marshal(data); err != nil { @@ -270,11 +270,11 @@ func (wd *Driver) POST(data interface{}, pathElem ...string) (rawResp rawRespons return wd.Request(http.MethodPost, wd.concatURL(nil, pathElem...), bsJSON) } -func (wd *Driver) DELETE(pathElem ...string) (rawResp rawResponse, err error) { +func (wd *DriverClient) DELETE(pathElem ...string) (rawResp rawResponse, err error) { return wd.Request(http.MethodDelete, wd.concatURL(nil, pathElem...), nil) } -func (wd *Driver) Request(method string, rawURL string, rawBody []byte) (rawResp rawResponse, err error) { +func (wd *DriverClient) Request(method string, rawURL string, rawBody []byte) (rawResp rawResponse, err error) { driverResult := &DriverResult{ RequestMethod: method, RequestUrl: rawURL, diff --git a/pkg/uixt/action.go b/pkg/uixt/driver_action.go similarity index 100% rename from pkg/uixt/action.go rename to pkg/uixt/driver_action.go diff --git a/pkg/uixt/action_test.go b/pkg/uixt/driver_action_test.go similarity index 100% rename from pkg/uixt/action_test.go rename to pkg/uixt/driver_action_test.go diff --git a/pkg/uixt/harmony_driver_hdc.go b/pkg/uixt/harmony_driver_hdc.go index c7f942ee..521781a7 100644 --- a/pkg/uixt/harmony_driver_hdc.go +++ b/pkg/uixt/harmony_driver_hdc.go @@ -15,7 +15,7 @@ import ( type hdcDriver struct { points []ExportPoint - Driver + DriverClient device *ghdc.Device uiDriver *ghdc.UIDriver } @@ -42,7 +42,7 @@ func newHarmonyDriver(device *ghdc.Device) (driver *hdcDriver, err error) { } func (hd *hdcDriver) NewSession(capabilities option.Capabilities) (SessionInfo, error) { - hd.Driver.session.Reset() + hd.DriverClient.session.Reset() hd.Unlock() return SessionInfo{}, errDriverNotImplemented } @@ -52,7 +52,7 @@ func (hd *hdcDriver) DeleteSession() error { } func (hd *hdcDriver) GetSession() *DriverSession { - return &hd.Driver.session + return &hd.DriverClient.session } func (hd *hdcDriver) Status() (DeviceStatus, error) { diff --git a/pkg/uixt/ios_driver_stub.go b/pkg/uixt/ios_driver_stub.go index 25973681..1d69de46 100644 --- a/pkg/uixt/ios_driver_stub.go +++ b/pkg/uixt/ios_driver_stub.go @@ -13,12 +13,13 @@ import ( ) type stubIOSDriver struct { + *wdaDriver + DriverClient + bightInsightPrefix string serverPrefix string timeout time.Duration - Driver - *wdaDriver - device *IOSDevice + device *IOSDevice } func newStubIOSDriver(bightInsightAddr, serverAddr string, dev *IOSDevice, readTimeout ...time.Duration) (*stubIOSDriver, error) { @@ -31,7 +32,7 @@ func newStubIOSDriver(bightInsightAddr, serverAddr string, dev *IOSDevice, readT driver.bightInsightPrefix = bightInsightAddr driver.serverPrefix = serverAddr driver.timeout = timeout - driver.Driver.client = &http.Client{ + driver.DriverClient.client = &http.Client{ Timeout: time.Second * 10, // 设置超时时间为 10 秒 } return driver, nil @@ -450,7 +451,7 @@ func (s *stubIOSDriver) GetDriverResults() []*DriverResult { } func (s *stubIOSDriver) Source(srcOpt ...SourceOption) (string, error) { - resp, err := s.Driver.Request(http.MethodGet, fmt.Sprintf("%s/source?format=json&onlyWeb=false", s.bightInsightPrefix), []byte{}) + resp, err := s.DriverClient.Request(http.MethodGet, fmt.Sprintf("%s/source?format=json&onlyWeb=false", s.bightInsightPrefix), []byte{}) if err != nil { return "", err } @@ -472,7 +473,7 @@ func (s *stubIOSDriver) LoginNoneUI(packageName, phoneNumber string, captcha, pa if err != nil { return info, err } - resp, err := s.Driver.Request(http.MethodPost, fmt.Sprintf("%s/host/login/account/", s.serverPrefix), bsJSON) + resp, err := s.DriverClient.Request(http.MethodPost, fmt.Sprintf("%s/host/login/account/", s.serverPrefix), bsJSON) if err != nil { return info, err } @@ -496,7 +497,7 @@ func (s *stubIOSDriver) LoginNoneUI(packageName, phoneNumber string, captcha, pa } func (s *stubIOSDriver) LogoutNoneUI(packageName string) error { - resp, err := s.Driver.Request(http.MethodGet, fmt.Sprintf("%s/host/loginout/", s.serverPrefix), []byte{}) + resp, err := s.DriverClient.Request(http.MethodGet, fmt.Sprintf("%s/host/loginout/", s.serverPrefix), []byte{}) if err != nil { return err } @@ -515,12 +516,12 @@ func (s *stubIOSDriver) LogoutNoneUI(packageName string) error { } func (s *stubIOSDriver) TearDown() error { - s.Driver.client.CloseIdleConnections() + s.DriverClient.client.CloseIdleConnections() return nil } func (s *stubIOSDriver) getLoginAppInfo(packageName string) (info AppLoginInfo, err error) { - resp, err := s.Driver.Request(http.MethodGet, fmt.Sprintf("%s/host/app/info/", s.serverPrefix), []byte{}) + resp, err := s.DriverClient.Request(http.MethodGet, fmt.Sprintf("%s/host/app/info/", s.serverPrefix), []byte{}) if err != nil { return info, err } @@ -542,5 +543,5 @@ func (s *stubIOSDriver) getLoginAppInfo(packageName string) (info AppLoginInfo, } func (s *stubIOSDriver) GetSession() *DriverSession { - return &s.Driver.session + return &s.DriverClient.session } diff --git a/pkg/uixt/ios_driver_wda.go b/pkg/uixt/ios_driver_wda.go index 9fbe9b72..db74b763 100644 --- a/pkg/uixt/ios_driver_wda.go +++ b/pkg/uixt/ios_driver_wda.go @@ -28,7 +28,7 @@ import ( ) type wdaDriver struct { - Driver + DriverClient udid string device *IOSDevice mjpegHTTPConn net.Conn // via HTTP @@ -47,7 +47,7 @@ func (wd *wdaDriver) resetSession() error { } // Notice: use Driver.POST instead of httpPOST to avoid loop calling - rawResp, err := wd.Driver.POST(data, "/session") + rawResp, err := wd.DriverClient.POST(data, "/session") if err != nil { return err } @@ -63,7 +63,7 @@ func (wd *wdaDriver) resetSession() error { func (wd *wdaDriver) httpRequest(method string, rawURL string, rawBody []byte) (rawResp rawResponse, err error) { retryInterval := 3 * time.Second for retryCount := 1; retryCount <= 3; retryCount++ { - rawResp, err = wd.Driver.Request(method, rawURL, rawBody) + rawResp, err = wd.DriverClient.Request(method, rawURL, rawBody) if err == nil { return } @@ -154,7 +154,7 @@ func (wd *wdaDriver) Status() (deviceStatus DeviceStatus, err error) { // [[FBRoute GET:@"/status"].withoutSession respondWithTarget:self action:@selector(handleGetStatus:)] var rawResp rawResponse // Notice: use Driver.GET instead of httpGET to avoid loop calling - if rawResp, err = wd.Driver.GET("/status"); err != nil { + if rawResp, err = wd.DriverClient.GET("/status"); err != nil { return DeviceStatus{}, err } reply := new(struct{ Value struct{ DeviceStatus } }) @@ -1009,14 +1009,14 @@ func (wd *wdaDriver) StopCaptureLog() (result interface{}, err error) { } func (wd *wdaDriver) GetSession() *DriverSession { - return &wd.Driver.session + return &wd.DriverClient.session } func (wd *wdaDriver) GetDriverResults() []*DriverResult { defer func() { - wd.Driver.driverResults = nil + wd.DriverClient.driverResults = nil }() - return wd.Driver.driverResults + return wd.DriverClient.driverResults } func (wd *wdaDriver) TearDown() error {