fix: miss suffix for screenshot file path

This commit is contained in:
lilong.129
2025-03-11 22:42:05 +08:00
parent b8e9a25991
commit eb730c2ebe
4 changed files with 17 additions and 13 deletions

View File

@@ -1 +1 @@
v5.0.0-beta-2503112238 v5.0.0-beta-2503112242

View File

@@ -75,7 +75,8 @@ func TestDriver_ADB_ScreenShot(t *testing.T) {
driver := setupADBDriverExt(t) driver := setupADBDriverExt(t)
screenshot, err := driver.ScreenShot() screenshot, err := driver.ScreenShot()
assert.Nil(t, err) assert.Nil(t, err)
path, err := saveScreenShot(screenshot, "1234.jpeg") path := "1234.jpeg"
err = saveScreenShot(screenshot, path)
require.Nil(t, err) require.Nil(t, err)
defer os.Remove(path) defer os.Remove(path)
t.Logf("save screenshot to %s", path) t.Logf("save screenshot to %s", path)
@@ -249,7 +250,8 @@ func TestDriver_ADB_PushImage(t *testing.T) {
screenshot, err := driver.ScreenShot() screenshot, err := driver.ScreenShot()
assert.Nil(t, err) assert.Nil(t, err)
path, err := saveScreenShot(screenshot, "1234.jpeg") path := "1234.jpeg"
err = saveScreenShot(screenshot, path)
require.Nil(t, err) require.Nil(t, err)
defer os.Remove(path) defer os.Remove(path)

View File

@@ -78,11 +78,11 @@ func (dExt *XTDriver) GetScreenResult(opts ...option.ActionOption) (screenResult
fmt.Sprintf("%s.%s", fileName, "jpeg"), fmt.Sprintf("%s.%s", fileName, "jpeg"),
) )
go func() { go func() {
path, err := saveScreenShot(compressBufSource, imagePath) err := saveScreenShot(compressBufSource, imagePath)
if err != nil { if err != nil {
log.Error().Err(err).Msg("save screenshot file failed") log.Error().Err(err).Msg("save screenshot file failed")
} else { } else {
log.Info().Str("path", path).Msg("screenshot saved") log.Info().Str("path", imagePath).Msg("screenshot saved")
} }
}() }()
@@ -192,7 +192,7 @@ func (dExt *XTDriver) FindUIResult(opts ...option.ActionOption) (point ai.PointF
} }
// saveScreenShot saves compressed image file with file name // saveScreenShot saves compressed image file with file name
func saveScreenShot(raw *bytes.Buffer, screenshotPath string) (string, error) { func saveScreenShot(raw *bytes.Buffer, screenshotPath string) error {
// notice: screenshot data is a stream, so we need to copy it to a new buffer // notice: screenshot data is a stream, so we need to copy it to a new buffer
copiedBuffer := &bytes.Buffer{} copiedBuffer := &bytes.Buffer{}
if _, err := copiedBuffer.Write(raw.Bytes()); err != nil { if _, err := copiedBuffer.Write(raw.Bytes()); err != nil {
@@ -201,12 +201,12 @@ func saveScreenShot(raw *bytes.Buffer, screenshotPath string) (string, error) {
img, format, err := image.Decode(copiedBuffer) img, format, err := image.Decode(copiedBuffer)
if err != nil { if err != nil {
return "", errors.Wrap(err, "decode screenshot image failed") return errors.Wrap(err, "decode screenshot image failed")
} }
file, err := os.Create(screenshotPath) file, err := os.Create(screenshotPath)
if err != nil { if err != nil {
return "", errors.Wrap(err, "create screenshot image file failed") return errors.Wrap(err, "create screenshot image file failed")
} }
defer func() { defer func() {
_ = file.Close() _ = file.Close()
@@ -228,10 +228,10 @@ func saveScreenShot(raw *bytes.Buffer, screenshotPath string) (string, error) {
} }
err = gif.Encode(file, img, gifOptions) err = gif.Encode(file, img, gifOptions)
default: default:
return "", fmt.Errorf("unsupported image format %s", format) return fmt.Errorf("unsupported image format %s", format)
} }
if err != nil { if err != nil {
return "", errors.Wrap(err, "save image file failed") return errors.Wrap(err, "save image file failed")
} }
var fileSize int64 var fileSize int64
@@ -243,7 +243,7 @@ func saveScreenShot(raw *bytes.Buffer, screenshotPath string) (string, error) {
Int("rawBytes", raw.Len()).Int64("saveBytes", fileSize). Int("rawBytes", raw.Len()).Int64("saveBytes", fileSize).
Msg("save screenshot file success") Msg("save screenshot file success")
return screenshotPath, nil return nil
} }
func compressImageBuffer(raw *bytes.Buffer) (compressed *bytes.Buffer, err error) { func compressImageBuffer(raw *bytes.Buffer) (compressed *bytes.Buffer, err error) {

View File

@@ -258,7 +258,8 @@ func TestDriver_WDA_ScreenShot(t *testing.T) {
assert.Nil(t, err) assert.Nil(t, err)
_ = screenshot _ = screenshot
path, err := saveScreenShot(screenshot, "1234.jpeg") path := "1234.jpeg"
err = saveScreenShot(screenshot, path)
assert.Nil(t, err) assert.Nil(t, err)
defer os.Remove(path) defer os.Remove(path)
t.Logf("save screenshot to %s", path) t.Logf("save screenshot to %s", path)
@@ -318,7 +319,8 @@ func TestDriver_WDA_PushImage(t *testing.T) {
screenshot, err := driver.ScreenShot() screenshot, err := driver.ScreenShot()
assert.Nil(t, err) assert.Nil(t, err)
path, err := saveScreenShot(screenshot, "1234.jpeg") path := "1234.jpeg"
err = saveScreenShot(screenshot, path)
require.Nil(t, err) require.Nil(t, err)
defer os.Remove(path) defer os.Remove(path)