refactor: enhance JSON handling and improve request retry logic in DriverSession

This commit is contained in:
lilong.129
2025-06-27 11:52:53 +08:00
parent 7737705ab9
commit ba43e9fd0e
15 changed files with 483 additions and 234 deletions
+11 -12
View File
@@ -36,13 +36,19 @@ func NewWDADriver(device *IOSDevice) (*WDADriver, error) {
Session: NewDriverSession(),
}
if !device.Options.LazySetup {
// setup driver
if err := driver.Setup(); err != nil {
return nil, err
}
// setup driver
if err := driver.Setup(); err != nil {
return nil, err
}
// check WDA status
wdaStatus, err := driver.Status()
if err != nil {
return nil, err
}
log.Info().Interface("status", wdaStatus).
Msg("check WDA status")
// register driver session reset handler
driver.Session.RegisterResetHandler(driver.Setup)
@@ -146,13 +152,6 @@ func (wd *WDADriver) Setup() error {
return err
}
wdaStatus, err := wd.Status()
if err != nil {
return err
}
log.Info().Interface("status", wdaStatus).
Msg("check WDA status")
// create new session
if err := wd.InitSession(nil); err != nil {
return errors.Wrap(code.DeviceHTTPDriverError, err.Error())