diff --git a/ios_tests/lib/ios/specs/ios/command/source.rb b/ios_tests/lib/ios/specs/ios/command/source.rb new file mode 100644 index 00000000..e5eddd2c --- /dev/null +++ b/ios_tests/lib/ios/specs/ios/command/source.rb @@ -0,0 +1,7 @@ +# rake ios[ios/command/source] +describe 'ios/command/source' do + t 'source' do + xcuitest_source(format: :json).is_a?(Hash).must_equal true + xcuitest_source(format: :xml).is_a?(String).must_equal true + end +end diff --git a/lib/appium_lib/ios/xcuitest/bridge.rb b/lib/appium_lib/ios/xcuitest/bridge.rb index 657a1b41..8df3809d 100644 --- a/lib/appium_lib/ios/xcuitest/bridge.rb +++ b/lib/appium_lib/ios/xcuitest/bridge.rb @@ -9,6 +9,7 @@ def self.for(target) target.extend Appium::Ios::Device target.extend Appium::Ios::Xcuitest target.extend Appium::Ios::Xcuitest::Command + target.extend Appium::Ios::Xcuitest::Source target.extend Appium::Ios::Xcuitest::Helper target.extend Appium::Ios::Xcuitest::Gesture target.extend Appium::Ios::Xcuitest::Element diff --git a/lib/appium_lib/ios/xcuitest/command.rb b/lib/appium_lib/ios/xcuitest/command.rb index 0a6e0ecc..2f79ef62 100644 --- a/lib/appium_lib/ios/xcuitest/command.rb +++ b/lib/appium_lib/ios/xcuitest/command.rb @@ -1,5 +1,6 @@ require_relative 'command/pasteboard' require_relative 'command/gestures' +require_relative 'command/source' module Appium module Ios diff --git a/lib/appium_lib/ios/xcuitest/command/source.rb b/lib/appium_lib/ios/xcuitest/command/source.rb new file mode 100644 index 00000000..f83d6b6e --- /dev/null +++ b/lib/appium_lib/ios/xcuitest/command/source.rb @@ -0,0 +1,20 @@ +module Appium + module Ios + module Xcuitest + module Source + # @param [String|Symbol] format :xml or :json. :xml is by default. + # @option opts [Element] :element Element to swipe on + # + # ```ruby + # xcuitest_source format: :json + # ``` + def xcuitest_source(format: :xml) + format = format.to_s if format.is_a? Symbol + args = { format: format } + + @driver.execute_script 'mobile: source', args + end + end # module Gesture + end # module Xcuitest + end # module Ios +end # module Appium