refactor:

1, add options for AppLaunch/AppTerminate/AppClear;
2, add pre hook and post hook for AppLaunch/AppTerminate action
This commit is contained in:
lilong.129
2025-05-09 23:30:35 +08:00
parent 2a13594e3d
commit 4a2276c7f0
7 changed files with 69 additions and 16 deletions

View File

@@ -138,7 +138,11 @@ func (wd *BrowserDriver) Drag(fromX, fromY, toX, toY float64, options ...option.
return
}
func (wd *BrowserDriver) AppLaunch(packageName string) (err error) {
func (wd *BrowserDriver) AppLaunch(packageName string, opts ...option.ActionOption) (err error) {
actionOptions := option.NewActionOptions(opts...)
preHandler_AppLaunch(wd, actionOptions)
defer postHandler(wd, actionOptions)
data := map[string]interface{}{
"url": packageName,
}
@@ -461,7 +465,11 @@ func (wd *BrowserDriver) Unlock() (err error) {
// AppTerminate Terminate an application with the given package name.
// Either `true` if the app has been successfully terminated or `false` if it was not running
func (wd *BrowserDriver) AppTerminate(packageName string) (bool, error) {
func (wd *BrowserDriver) AppTerminate(packageName string, opts ...option.ActionOption) (bool, error) {
actionOptions := option.NewActionOptions(opts...)
preHandler_AppTerminate(wd, actionOptions)
defer postHandler(wd, actionOptions)
return true, wd.DeleteSession()
}
@@ -474,7 +482,7 @@ func (wd *BrowserDriver) Back() error {
return wd.PressBack()
}
func (wd *BrowserDriver) AppClear(packageName string) error {
func (wd *BrowserDriver) AppClear(packageName string, opts ...option.ActionOption) error {
return errors.New("not support")
}