appium_lib_core 13.1.0 → 13.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -3
  3. data/README.md +8 -21
  4. data/lib/appium_lib_core/android/device/auth_finger_print.rb +2 -2
  5. data/lib/appium_lib_core/android/device/clipboard.rb +3 -3
  6. data/lib/appium_lib_core/android/device/emulator.rb +8 -8
  7. data/lib/appium_lib_core/android/device/performance.rb +3 -3
  8. data/lib/appium_lib_core/android/device/screen.rb +3 -3
  9. data/lib/appium_lib_core/android/device.rb +15 -15
  10. data/lib/appium_lib_core/android/uiautomator2/device/battery.rb +2 -2
  11. data/lib/appium_lib_core/android/uiautomator2/device.rb +2 -2
  12. data/lib/appium_lib_core/common/base/driver.rb +4 -2
  13. data/lib/appium_lib_core/common/base/http_default.rb +2 -0
  14. data/lib/appium_lib_core/common/device/context.rb +3 -5
  15. data/lib/appium_lib_core/device.rb +4 -4
  16. data/lib/appium_lib_core/driver.rb +15 -8
  17. data/lib/appium_lib_core/ios/device/clipboard.rb +3 -3
  18. data/lib/appium_lib_core/ios/device.rb +4 -4
  19. data/lib/appium_lib_core/ios/xcuitest/device/battery.rb +2 -2
  20. data/lib/appium_lib_core/ios/xcuitest/device/performance.rb +3 -3
  21. data/lib/appium_lib_core/ios/xcuitest/device/screen.rb +2 -2
  22. data/lib/appium_lib_core/ios/xcuitest/device.rb +6 -6
  23. data/lib/appium_lib_core/mac2/device/screen.rb +2 -2
  24. data/lib/appium_lib_core/mac2/device.rb +2 -2
  25. data/lib/appium_lib_core/version.rb +2 -2
  26. data/lib/appium_lib_core/windows/device/screen.rb +2 -2
  27. data/lib/appium_lib_core/windows/device.rb +2 -2
  28. data/sig/lib/appium_lib_core/android/device/auth_finger_print.rbs +1 -1
  29. data/sig/lib/appium_lib_core/android/device/clipboard.rbs +1 -1
  30. data/sig/lib/appium_lib_core/android/device/emulator.rbs +1 -1
  31. data/sig/lib/appium_lib_core/android/device/performance.rbs +1 -1
  32. data/sig/lib/appium_lib_core/android/device/screen.rbs +1 -1
  33. data/sig/lib/appium_lib_core/android/uiautomator2/device/battery.rbs +1 -1
  34. data/sig/lib/appium_lib_core/device.rbs +2 -2
  35. data/sig/lib/appium_lib_core/driver.rbs +1 -0
  36. data/sig/lib/appium_lib_core/ios/device/clipboard.rbs +1 -1
  37. data/sig/lib/appium_lib_core/ios/xcuitest/device/battery.rbs +1 -1
  38. data/sig/lib/appium_lib_core/ios/xcuitest/device/performance.rbs +1 -1
  39. data/sig/lib/appium_lib_core/ios/xcuitest/device/screen.rbs +1 -1
  40. data/sig/lib/appium_lib_core/mac2/device/screen.rbs +1 -1
  41. data/sig/lib/appium_lib_core/windows/device/screen.rbs +1 -1
  42. metadata +9 -13
  43. data/Gemfile +0 -15
  44. data/Rakefile +0 -120
  45. data/Steepfile +0 -11
  46. data/Thorfile +0 -7
  47. data/appium_lib_core.gemspec +0 -27
  48. data/bin/console +0 -10
  49. data/bin/setup +0 -8
  50. data/rbs_collection.lock.yaml +0 -304
  51. data/rbs_collection.yaml +0 -15
@@ -17,8 +17,8 @@ module Appium
17
17
  module Windows
18
18
  module Device
19
19
  module Screen
20
- def self.add_methods
21
- ::Appium::Core::Device.add_endpoint_method(:start_recording_screen) do
20
+ def self.add_methods(target)
21
+ ::Appium::Core::Device.add_endpoint_method(:start_recording_screen, bridge: target.bridge_extensions) do
22
22
  def start_recording_screen(force_restart: nil, time_limit: nil,
23
23
  fps: nil, preset: nil, video_filter: nil,
24
24
  capture_clicks: nil, capture_cursor: nil, audio_input: nil)
@@ -71,8 +71,8 @@ module Appium
71
71
  ####
72
72
 
73
73
  class << self
74
- def extended(_mod)
75
- Screen.add_methods
74
+ def extended(target)
75
+ Screen.add_methods(target)
76
76
  end
77
77
  end # class << self
78
78
  end # module Device
@@ -5,7 +5,7 @@ module Appium
5
5
  module Authentication
6
6
  include _Bridge
7
7
 
8
- def self.add_methods: () -> untyped
8
+ def self.add_methods: (untyped target) -> untyped
9
9
  end
10
10
  end
11
11
  end
@@ -5,7 +5,7 @@ module Appium
5
5
  module Clipboard
6
6
  include _Bridge
7
7
 
8
- def self.add_methods: () -> untyped
8
+ def self.add_methods: (untyped target) -> untyped
9
9
  end
10
10
  end
11
11
  end
@@ -15,7 +15,7 @@ module Appium
15
15
 
16
16
  POWER_AC_STATE: ::Array[:on | :off]
17
17
 
18
- def self.add_methods: () -> untyped
18
+ def self.add_methods: (untyped target) -> untyped
19
19
  end
20
20
  end
21
21
  end
@@ -5,7 +5,7 @@ module Appium
5
5
  module Performance
6
6
  include _Bridge
7
7
 
8
- def self.add_methods: () -> untyped
8
+ def self.add_methods: (untyped target) -> untyped
9
9
  end
10
10
  end
11
11
  end
@@ -5,7 +5,7 @@ module Appium
5
5
  module Screen
6
6
  include _Bridge
7
7
 
8
- def self.add_methods: () -> untyped
8
+ def self.add_methods: (untyped target) -> untyped
9
9
  end
10
10
  end
11
11
  end
@@ -6,7 +6,7 @@ module Appium
6
6
  module Battery
7
7
  include _Bridge
8
8
 
9
- def self.add_methods: () -> untyped
9
+ def self.add_methods: (untyped target) -> untyped
10
10
  end
11
11
  end
12
12
  end
@@ -5,7 +5,7 @@ module Appium
5
5
 
6
6
  def self.extended: (untyped _mod) -> untyped
7
7
 
8
- def self.add_endpoint_method: (untyped method) ?{ () -> untyped } -> untyped
8
+ def self.add_endpoint_method: (untyped method, ?bridge: Module) ?{ () -> untyped } -> untyped
9
9
 
10
10
  def self.extend_webdriver_with_forwardable: () -> (nil | untyped)
11
11
 
@@ -15,7 +15,7 @@ module Appium
15
15
 
16
16
  def self.delegate_driver_method: (untyped method) -> (nil | untyped)
17
17
 
18
- def self.create_bridge_command: (untyped method) ?{ () -> untyped } -> untyped
18
+ def self.create_bridge_command: (untyped method, bridge: Module) ?{ () -> untyped } -> untyped
19
19
  end
20
20
  end
21
21
  end
@@ -92,6 +92,7 @@ module Appium
92
92
  end
93
93
 
94
94
  class Driver
95
+ attr_reader bridge_extensions: Module
95
96
  @delegate_target: self
96
97
 
97
98
  @automation_name: Symbol
@@ -5,7 +5,7 @@ module Appium
5
5
  module Clipboard
6
6
  include _Bridge
7
7
 
8
- def self.add_methods: () -> untyped
8
+ def self.add_methods: (untyped target) -> untyped
9
9
  end
10
10
  end
11
11
  end
@@ -6,7 +6,7 @@ module Appium
6
6
  module Battery
7
7
  include _Bridge
8
8
 
9
- def self.add_methods: () -> (Symbol | Hash[Symbol, Proc])?
9
+ def self.add_methods: (untyped target) -> (Symbol | Hash[Symbol, Proc])?
10
10
 
11
11
  def battery_info: () -> ::Hash[::Symbol, ::Symbol]
12
12
  end
@@ -6,7 +6,7 @@ module Appium
6
6
  module Performance
7
7
  include _Bridge
8
8
 
9
- def self.add_methods: () -> untyped
9
+ def self.add_methods: (untyped target) -> untyped
10
10
  end
11
11
  end
12
12
  end
@@ -6,7 +6,7 @@ module Appium
6
6
  module Screen
7
7
  def execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
8
8
 
9
- def self.add_methods: () -> untyped
9
+ def self.add_methods: (untyped target) -> untyped
10
10
  end
11
11
  end
12
12
  end
@@ -5,7 +5,7 @@ module Appium
5
5
  module Screen
6
6
  def execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
7
7
 
8
- def self.add_methods: () -> untyped
8
+ def self.add_methods: (untyped target) -> untyped
9
9
  end
10
10
  end
11
11
  end
@@ -5,7 +5,7 @@ module Appium
5
5
  module Screen
6
6
  def execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
7
7
 
8
- def self.add_methods: () -> untyped
8
+ def self.add_methods: (untyped target) -> untyped
9
9
  end
10
10
  end
11
11
  end
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appium_lib_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 13.1.0
4
+ version: 13.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kazuaki MATSUO
8
- bindir: exe
8
+ bindir: bin
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
@@ -23,7 +23,8 @@ dependencies:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
25
  version: '4.21'
26
- description: Minimal Ruby library for Appium.
26
+ description: Core Ruby client for Appium, extending Selenium WebDriver with Appium-specific
27
+ commands.
27
28
  email:
28
29
  - fly.49.89.over@gmail.com
29
30
  executables: []
@@ -31,15 +32,8 @@ extensions: []
31
32
  extra_rdoc_files: []
32
33
  files:
33
34
  - CHANGELOG.md
34
- - Gemfile
35
35
  - LICENSE.txt
36
36
  - README.md
37
- - Rakefile
38
- - Steepfile
39
- - Thorfile
40
- - appium_lib_core.gemspec
41
- - bin/console
42
- - bin/setup
43
37
  - lib/appium_lib_core.rb
44
38
  - lib/appium_lib_core/android.rb
45
39
  - lib/appium_lib_core/android/device.rb
@@ -113,8 +107,6 @@ files:
113
107
  - lib/appium_lib_core/windows/bridge.rb
114
108
  - lib/appium_lib_core/windows/device.rb
115
109
  - lib/appium_lib_core/windows/device/screen.rb
116
- - rbs_collection.lock.yaml
117
- - rbs_collection.yaml
118
110
  - sig/gems/em.rbs
119
111
  - sig/gems/forwardable.rbs
120
112
  - sig/gems/selenium/abstract_event_listener.rbs
@@ -240,6 +232,10 @@ licenses:
240
232
  - Apache-2.0
241
233
  metadata:
242
234
  rubygems_mfa_required: 'true'
235
+ source_code_uri: https://github.com/appium/ruby_lib_core/
236
+ bug_tracker_uri: https://github.com/appium/ruby_lib_core/issues
237
+ changelog_uri: https://github.com/appium/ruby_lib_core/blob/master/CHANGELOG.md
238
+ documentation_uri: https://www.rubydoc.info/gems/appium_lib_core
243
239
  rdoc_options: []
244
240
  require_paths:
245
241
  - lib
@@ -254,7 +250,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
254
250
  - !ruby/object:Gem::Version
255
251
  version: '0'
256
252
  requirements: []
257
- rubygems_version: 3.6.9
253
+ rubygems_version: 4.0.16
258
254
  specification_version: 4
259
255
  summary: Minimal Ruby library for Appium.
260
256
  test_files: []
data/Gemfile DELETED
@@ -1,15 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in appium_lib_core.gemspec
4
- gemspec
5
-
6
- gem 'appium_thor', '~> 2.0'
7
- gem 'minitest', '~> 5.0'
8
- gem 'minitest-reporters', '~> 1.1'
9
- gem 'parallel_tests'
10
- gem 'rake', '~> 13.0'
11
- gem 'rubocop', '1.88.2'
12
- gem 'simplecov'
13
- gem 'steep', '~> 1.10.0'
14
- gem 'webmock', '~> 3.26.0'
15
- gem 'yard', '~> 0.9.11'
data/Rakefile DELETED
@@ -1,120 +0,0 @@
1
- require 'bundler/gem_tasks'
2
- require 'rake/testtask'
3
- require 'yard'
4
- require 'rubocop/rake_task'
5
-
6
- desc('setup development environment')
7
- task :setup do |_t, _args|
8
- system %w(bundle install)
9
- end
10
-
11
- namespace :test do
12
- namespace :func do
13
- desc('Run all iOS related tests in test directory')
14
- Rake::TestTask.new(:ios) do |t|
15
- tmp_build = File.expand_path('tmp/Build/Products/')
16
- puts "#{tmp_build} is used for tests. Make sure they are not older version" if File.exist?(tmp_build)
17
-
18
- t.libs << 'test'
19
- t.libs << 'lib'
20
- t.test_files = FileList[ENV['TESTS'] ? ENV['TESTS'].split(',') : 'test/functional/ios/**/*_test.rb']
21
- end
22
-
23
- desc('Run all Android related tests in test directory')
24
- Rake::TestTask.new(:android) do |t|
25
- t.libs << 'test'
26
- t.libs << 'lib'
27
- t.test_files = FileList[ENV['TESTS'] ? ENV['TESTS'].split(',') : 'test/functional/android/**/*_test.rb']
28
- end
29
- end
30
-
31
- desc('Run all unit tests in test directory')
32
- Rake::TestTask.new(:unit) do |t|
33
- t.libs << 'test'
34
- t.libs << 'lib'
35
- t.test_files = FileList[ENV['TESTS'] ? ENV['TESTS'].split(',') : 'test/unit/**/*_test.rb']
36
- end
37
-
38
- namespace :unit do
39
- desc('Run all iOS related unit tests in test directory')
40
- Rake::TestTask.new(:ios) do |t|
41
- t.libs << 'test'
42
- t.libs << 'lib'
43
- t.test_files = FileList['test/unit/ios/**/*_test.rb']
44
- end
45
-
46
- desc('Run all Android related unit tests in test directory')
47
- Rake::TestTask.new(:android) do |t|
48
- t.libs << 'test'
49
- t.libs << 'lib'
50
- t.test_files = FileList['test/unit/android/**/*_test.rb']
51
- end
52
-
53
- desc('Run all common related unit tests in test directory')
54
- Rake::TestTask.new(:common) do |t|
55
- t.libs << 'test'
56
- t.libs << 'lib'
57
- t.test_files = FileList['test/unit/common/**/*_test.rb']
58
- end
59
-
60
- desc('Run all Windows related unit tests in test directory')
61
- Rake::TestTask.new(:windows) do |t|
62
- t.libs << 'test'
63
- t.libs << 'lib'
64
- t.test_files = FileList['test/unit/windows/**/*_test.rb']
65
- end
66
- end
67
- end
68
-
69
- namespace :android do
70
- desc('uninstall all of test apks from a test device')
71
- task :uninstall_test_apks do |_t, _args|
72
- `adb uninstall io.appium.uiautomator2.server.test`
73
- `adb uninstall io.appium.uiautomator2.server`
74
- `adb uninstall io.appium.settings`
75
- `adb uninstall io.appium.android.ime`
76
- `adb uninstall io.appium.espressoserver.test`
77
- end
78
-
79
- desc('Generate and launch android emulators')
80
- task :gen_device do |_t, _args|
81
- SWARMER_VERSION = '0.2.4'.freeze
82
- CPU_ARCHITECTURE = 'x86'.freeze
83
- IMAGE = 'google_apis'.freeze
84
- ANDROID_API = 27
85
- system %W(
86
- curl
87
- --fail
88
- --location https://jcenter.bintray.com/com/gojuno/swarmer/swarmer/#{SWARMER_VERSION}/swarmer-#{SWARMER_VERSION}.jar
89
- --output /tmp/swarmer.jar
90
- ).join(' ')
91
- cmds = (1..3).reduce([]) do |acc, number|
92
- acc << %W(
93
- --emulator-name test#{number}
94
- --package "system-images;android-#{ANDROID_API};#{IMAGE};#{CPU_ARCHITECTURE}"
95
- --android-abi #{IMAGE}/#{CPU_ARCHITECTURE}
96
- --path-to-config-ini test/functional/android/emulator_config.ini
97
- --emulator-start-options -netdelay none -netspeed full -screen touch -prop persist.sys.language=en -prop persist.sys.country=US
98
- ).join(' ')
99
- end
100
-
101
- system %w(java -jar /tmp/swarmer.jar start).concat(cmds).flatten.join(' ')
102
- end
103
- end
104
-
105
- desc('Generate yardoc')
106
- YARD::Rake::YardocTask.new do |t|
107
- t.files = %w(lib/**/*.rb)
108
- end
109
-
110
- desc('Execute RuboCop static code analysis')
111
- RuboCop::RakeTask.new(:rubocop) do |t|
112
- t.patterns = %w(lib test)
113
- t.options = %w(-D)
114
- t.fail_on_error = true
115
- end
116
-
117
- desc('Run Steep type check')
118
- task :steep do
119
- system 'steep check --severity-level=error'
120
- end
data/Steepfile DELETED
@@ -1,11 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- target :lib do
4
- signature 'sig'
5
- check 'lib' # Directory name
6
-
7
- # Standard libraries used in the project
8
- library(
9
- 'forwardable'
10
- )
11
- end
data/Thorfile DELETED
@@ -1,7 +0,0 @@
1
- require 'appium_thor'
2
-
3
- Appium::Thor::Config.set do
4
- gem_name 'appium_lib_core'
5
- github_name 'ruby_lib_core'
6
- version_file 'lib/appium_lib_core/version.rb'
7
- end
@@ -1,27 +0,0 @@
1
- lib = File.expand_path('lib', __dir__)
2
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
- require 'appium_lib_core/version'
4
-
5
- Gem::Specification.new do |spec|
6
- spec.required_ruby_version = Gem::Requirement.new('>= 3.1')
7
-
8
- spec.name = 'appium_lib_core'
9
- spec.version = Appium::Core::VERSION
10
- spec.authors = ['Kazuaki MATSUO']
11
- spec.email = ['fly.49.89.over@gmail.com']
12
-
13
- spec.summary = 'Minimal Ruby library for Appium.'
14
- spec.description = 'Minimal Ruby library for Appium.'
15
- spec.homepage = 'https://github.com/appium/ruby_lib_core/'
16
- spec.license = 'Apache-2.0'
17
- spec.files = `git ls-files -z`.split("\x0").reject do |f|
18
- f.match(%r{(^(doc|docs|test|spec|features|ci-jobs|.github|script)/|release_notes.md|.gitignore|azure-pipelines.yml|.rubocop.yml)})
19
- end
20
- spec.bindir = 'exe'
21
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
- spec.require_paths = ['lib']
23
-
24
- spec.add_dependency 'selenium-webdriver', '~> 4.21'
25
-
26
- spec.metadata['rubygems_mfa_required'] = 'true'
27
- end
data/bin/console DELETED
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require "bundler/setup"
4
- require "appium_lib_core"
5
-
6
- # You can add fixtures and/or initialization code here to make experimenting
7
- # with your gem easier. You can also use a different console, if you like.
8
-
9
- require "irb"
10
- IRB.start(__FILE__)
data/bin/setup DELETED
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -euo pipefail
3
- IFS=$'\n\t'
4
- set -vx
5
-
6
- bundle install
7
-
8
- # Do any other automated setup that you need to do here