Skip to content

Commit 371f653

Browse files
authored
Km/follow file wb mode (#209)
* use File.open as wb mode when tests save base64 decoded data * fix rubocop
1 parent f43fcb7 commit 371f653

File tree

4 files changed

+19
-15
lines changed

4 files changed

+19
-15
lines changed

lib/appium_lib_core/common/base/driver.rb

+9-5
Original file line numberDiff line numberDiff line change
@@ -435,9 +435,12 @@ def push_file(path, filedata)
435435
#
436436
# @example
437437
#
438-
# @driver.pull_file '/local/data/some/path' #=> Get the file at that path
439-
# @driver.pull_file 'Shenanigans.app/some/file' #=> Get 'some/file' from the install location of Shenanigans.app
440-
# @driver.pull_file '@com.appium.example/Documents/file.txt' #=> Get 'file.txt' in @com.appium.example/Documents
438+
# decoded_file = @driver.pull_file '/local/data/some/path' #=> Get the file at that path
439+
# decoded_file = @driver.pull_file 'Shenanigans.app/some/file'
440+
# #=> Get 'some/file' from the install location of Shenanigans.app
441+
# decoded_file = @driver.pull_file '@com.appium.example/Documents/file.txt'
442+
# #=> Get 'file.txt' in @com.appium.example/Documents
443+
# File.open('proper_filename', 'wb') { |f| f<< decoded_file }
441444
#
442445
def pull_file(path)
443446
@bridge.pull_file(path)
@@ -469,8 +472,9 @@ def pull_file(path)
469472
#
470473
# @example
471474
#
472-
# @driver.pull_folder '/data/local/tmp' #=> Get the folder at that path
473-
# @driver.pull_file '@com.appium.example/Documents' #=> Get 'Documents' in @com.appium.example
475+
# decoded_file = @driver.pull_folder '/data/local/tmp' #=> Get the folder at that path
476+
# decoded_file = @driver.pull_file '@com.appium.example/Documents' #=> Get 'Documents' in @com.appium.example
477+
# File.open('proper_filename', 'wb') { |f| f<< decoded_file }
474478
#
475479
def pull_folder(path)
476480
@bridge.pull_folder(path)

test/functional/android/android/device_test.rb

+2-2
Original file line numberDiff line numberDiff line change
@@ -412,12 +412,12 @@ def test_file_management
412412
@driver.push_file sdcard_file_path, file
413413

414414
read_file = @driver.pull_file sdcard_file_path
415-
File.write 'test.png', read_file
415+
File.open('test.png', 'wb') { |f| f << read_file }
416416

417417
assert_equal File.size(test_file), File.size('test.png')
418418

419419
folder = @driver.pull_folder sdcard_path
420-
File.write 'pic_folder.zip', folder
420+
File.open('pic_folder.zip', 'wb') { |f| f << folder }
421421

422422
assert File.exist?('pic_folder.zip')
423423

test/functional/android/android/image_comparison_test.rb

+3-3
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ def test_image_comparison_match_result
3939

4040
match_result_visual = @driver.match_images_features first_image: image1, second_image: image2, visualize: true
4141
assert_equal %w(points1 rect1 points2 rect2 totalCount count visualization), match_result_visual.keys
42-
File.write 'match_result_visual.png', Base64.decode64(match_result_visual['visualization'])
42+
File.open('match_result_visual.png', 'wb') { |f| f << Base64.decode64(match_result_visual['visualization']) }
4343
assert File.size? 'match_result_visual.png'
4444

4545
File.delete 'match_result_visual.png'
@@ -56,7 +56,7 @@ def test_image_comparison_find_result
5656

5757
find_result_visual = @driver.find_image_occurrence full_image: image1, partial_image: image2, visualize: true
5858
assert_equal %w(rect visualization), find_result_visual.keys
59-
File.write 'find_result_visual.png', Base64.decode64(find_result_visual['visualization'])
59+
File.open('find_result_visual.png', 'wb') { |f| f << Base64.decode64(find_result_visual['visualization']) }
6060
assert File.size? 'find_result_visual.png'
6161

6262
File.delete 'find_result_visual.png'
@@ -73,7 +73,7 @@ def test_image_comparison_get_images_result
7373

7474
get_images_result_visual = @driver.get_images_similarity first_image: image1, second_image: image2, visualize: true
7575
assert_equal %w(score visualization), get_images_result_visual.keys
76-
File.write 'get_images_result_visual.png', Base64.decode64(get_images_result_visual['visualization'])
76+
File.open('get_images_result_visual.png', 'wb') { |f| f << Base64.decode64(get_images_result_visual['visualization']) }
7777
assert File.size? 'get_images_result_visual.png'
7878

7979
File.delete 'get_images_result_visual.png'

test/functional/ios/ios/image_comparison_test.rb

+5-5
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ module Ios
2424
class ImageComparisionTest < AppiumLibCoreTest::Function::TestCase
2525
def setup
2626
@@core = ::Appium::Core.for(Caps.ios)
27-
@driver = @@core.start_driver
27+
@@driver = @@core.start_driver
2828
end
2929

3030
def teardown
31-
save_reports(@driver)
31+
save_reports(@@driver)
3232
end
3333

3434
def test_image_comparison_match_result
@@ -42,7 +42,7 @@ def test_image_comparison_match_result
4242

4343
match_result_visual = @@driver.match_images_features first_image: image1, second_image: image2, visualize: true
4444
assert_equal %w(points1 rect1 points2 rect2 totalCount count visualization), match_result_visual.keys
45-
File.write 'match_result_visual.png', Base64.decode64(match_result_visual['visualization'])
45+
File.open('match_result_visual.png', 'wb') { |f| f << Base64.decode64(match_result_visual['visualization']) }
4646
assert File.size? 'match_result_visual.png'
4747

4848
File.delete 'match_result_visual.png'
@@ -59,7 +59,7 @@ def test_image_comparison_find_result
5959

6060
find_result_visual = @@driver.find_image_occurrence full_image: image1, partial_image: image2, visualize: true
6161
assert_equal %w(rect visualization), find_result_visual.keys
62-
File.write 'find_result_visual.png', Base64.decode64(find_result_visual['visualization'])
62+
File.open('find_result_visual.png', 'wb') { |f| f << Base64.decode64(find_result_visual['visualization']) }
6363
assert File.size? 'find_result_visual.png'
6464

6565
File.delete 'find_result_visual.png'
@@ -76,7 +76,7 @@ def test_image_comparison_get_images_result
7676

7777
get_images_result_visual = @@driver.get_images_similarity first_image: image1, second_image: image2, visualize: true
7878
assert_equal %w(score visualization), get_images_result_visual.keys
79-
File.write 'get_images_result_visual.png', Base64.decode64(get_images_result_visual['visualization'])
79+
File.open('get_images_result_visual.png', 'wb') { |f| f << Base64.decode64(get_images_result_visual['visualization']) }
8080
assert File.size? 'get_images_result_visual.png'
8181

8282
File.delete 'get_images_result_visual.png'

0 commit comments

Comments
 (0)