Skip to content

Commit a590511

Browse files
authored
add screen recording (#179)
* add screen recording * relax bundler version
1 parent f4693af commit a590511

File tree

3 files changed

+29
-3
lines changed

3 files changed

+29
-3
lines changed

appium_lib_core.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
2525
spec.add_runtime_dependency 'selenium-webdriver', '~> 3.14', '>= 3.14.1'
2626
spec.add_runtime_dependency 'faye-websocket', '~> 0.10.0'
2727

28-
spec.add_development_dependency 'bundler', '~> 1.14'
28+
spec.add_development_dependency 'bundler', '>= 1.14'
2929
spec.add_development_dependency 'rake', '~> 12.0'
3030
spec.add_development_dependency 'yard', '~> 0.9.11'
3131
spec.add_development_dependency 'minitest', '~> 5.0'

test/functional/ios/ios/mjpeg_server_test.rb

+27
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,33 @@ def test_start_recording_screen
3535
@@driver.stop_and_save_recording_screen to_path
3636
assert File.exist? to_path
3737
end
38+
39+
def test_start_recording_screen_2
40+
skip 'It requires Appium 1.9.2' unless AppiumLibCoreTest.required_appium_version?(@@core, '1.9.2')
41+
42+
to_path = 'recorded_file_ios_2.mp4'
43+
File.delete to_path if File.exist? to_path
44+
45+
@@driver.start_recording_screen video_type: 'libx264'
46+
@@driver.find_element(:accessibility_id, 'Buttons').click
47+
48+
@@driver.update_settings({ mjpegServerScreenshotQuality: 10, mjpegServerFramerate: 1 })
49+
@@driver.back
50+
sleep 2
51+
@@driver.update_settings({ mjpegServerScreenshotQuality: 0, mjpegServerFramerate: -100 })
52+
@@driver.find_element(:accessibility_id, 'Buttons').click
53+
sleep 2
54+
@@driver.update_settings({ mjpegServerScreenshotQuality: -10, mjpegServerFramerate: 60 })
55+
@@driver.back
56+
sleep 2
57+
@@driver.update_settings({ mjpegServerScreenshotQuality: 100, mjpegServerFramerate: 60 })
58+
@@driver.find_element(:accessibility_id, 'Buttons').click
59+
sleep 2
60+
61+
@@driver.back
62+
@@driver.stop_and_save_recording_screen to_path
63+
assert File.exist? to_path
64+
end
3865
end
3966
end
4067
end

test/test_helper.rb

+1-2
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,7 @@ def self.required_appium_version?(core_driver, required)
4141

4242
return false if version.empty?
4343

44-
v = version['build']['version'].split('-') # 1.9.2-beta.2 => ['1.9.2', 'beta.2']
45-
v[0] >= required.to_s
44+
Gem::Version.new(version['build']['version']) >= Gem::Version.new(required.to_s)
4645
end
4746

4847
def self.path_of(path)

0 commit comments

Comments
 (0)