Module: Appium::Core::Android::Device::Screen

Defined in:
lib/appium_lib_core/android/device/screen.rb

Class Method Summary collapse

Class Method Details

.add_methodsObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/appium_lib_core/android/device/screen.rb', line 6

def self.add_methods
  ::Appium::Core::Device.add_endpoint_method(:get_display_density) do
    def get_display_density
      execute :get_display_density
    end
  end

  ::Appium::Core::Device.add_endpoint_method(:start_recording_screen) do
    # rubocop:disable Metrics/ParameterLists
    def start_recording_screen(remote_path: nil, user: nil, pass: nil, method: 'PUT', force_restart: nil,
                               video_size: nil, time_limit: '180', bit_rate: nil, bug_report: nil)
      option = ::Appium::Core::Base::Device::ScreenRecord.new(
        remote_path: remote_path, user: user, pass: pass, method: method, force_restart: force_restart
      ).upload_option

      option[:videoSize] = video_size unless video_size.nil?
      option[:timeLimit] = time_limit
      option[:bitRate] = bit_rate unless bit_rate.nil?

      unless bug_report.nil?
        raise 'bug_report should be true or false' unless [true, false].member?(bug_report)

        option[:bugReport] = bug_report
      end

      execute(:start_recording_screen, {}, { options: option })
    end
    # rubocop:enable Metrics/ParameterLists
  end
end