change: server

This commit is contained in:
lilong.129
2025-02-18 20:22:07 +08:00
parent 5d91b69603
commit 7183eae486
10 changed files with 570 additions and 465 deletions

View File

@@ -1,53 +1,74 @@
package server
import (
"fmt"
"net/http"
"github.com/gin-gonic/gin"
"github.com/rs/zerolog/log"
"github.com/httprunner/httprunner/v5/code"
"github.com/httprunner/httprunner/v5/pkg/uixt"
)
func unlockHandler(c *gin.Context) {
dExt, err := GetContextDriver(c)
driver, err := GetDriver(c)
if err != nil {
return
}
err = dExt.Unlock()
err = driver.Unlock()
if err != nil {
log.Err(err).Msg(fmt.Sprintf("[%s]: failed to unlick screen", c.HandlerName()))
c.JSON(http.StatusInternalServerError,
HttpResponse{
Code: code.GetErrorCode(err),
Message: err.Error(),
},
)
c.Abort()
RenderError(c, err)
return
}
c.JSON(http.StatusOK, HttpResponse{Code: 0, Message: "success"})
RenderSuccess(c, true)
}
func homeHandler(c *gin.Context) {
dExt, err := GetContextDriver(c)
driver, err := GetDriver(c)
if err != nil {
return
}
err = dExt.Home()
err = driver.Home()
if err != nil {
log.Err(err).Msg(fmt.Sprintf("[%s]: failed to enter homescreen", c.HandlerName()))
c.JSON(http.StatusInternalServerError,
HttpResponse{
Code: code.GetErrorCode(err),
Message: err.Error(),
},
)
c.Abort()
RenderError(c, err)
return
}
c.JSON(http.StatusOK, HttpResponse{Code: 0, Message: "success"})
RenderSuccess(c, true)
}
func backspaceHandler(c *gin.Context) {
var deleteReq DeleteRequest
if err := c.ShouldBindJSON(&deleteReq); err != nil {
RenderErrorValidateRequest(c, err)
return
}
if deleteReq.Count == 0 {
deleteReq.Count = 20
}
driver, err := GetDriver(c)
if err != nil {
return
}
err = driver.Backspace(deleteReq.Count)
if err != nil {
RenderError(c, err)
return
}
RenderSuccess(c, true)
}
func keycodeHandler(c *gin.Context) {
var keycodeReq KeycodeRequest
if err := c.ShouldBindJSON(&keycodeReq); err != nil {
RenderErrorValidateRequest(c, err)
return
}
driver, err := GetDriver(c)
if err != nil {
return
}
// TODO FIXME
err = driver.IDriver.(*uixt.ADBDriver).
PressKeyCode(uixt.KeyCode(keycodeReq.Keycode), uixt.KMEmpty)
if err != nil {
RenderError(c, err)
return
}
RenderSuccess(c, true)
}