appium_lib_core 7.3.1 → 7.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1e36ee532689abb904f023ff2da34ea27e3b1f578d5ebf1d382cb52ec5c9a1d6
4
- data.tar.gz: d237d1de07d8668338e1ee5342e2f021b883bfe8d5c3efa5250e75c591c5c08e
3
+ metadata.gz: 76742dd6cc95afc285f18d8a4b8509e49e81365a16b88526fbce2df392075289
4
+ data.tar.gz: 7ca26f49b6473acc7c1523c7b29f1bed896e88e154ef8c750586202fb69ba4a6
5
5
  SHA512:
6
- metadata.gz: f7da289f3516bc45c180328d084acd12aec011cf05c88f0e8f58841f8702eb9612d857bdac8b9ce496c383a61ef75a6025cbbadfb65b173c99567b6d3d173819
7
- data.tar.gz: af0b44244acd9e8fa83d30de6f3e42e88254c1cf3f1dc45c70aadcd979b8a0273775c43eff7b1f33fd6caaa12557b5af5787c9f8cb684c72c052ac6d918d4b19
6
+ metadata.gz: 3fcb537d9a24c1e7572151f2224c2ff2d7279325de914916031c2b3615561c258a231eaebf99c4b9d029987db4541f24357ac7c9a81f2c809d4c91ba8ff8c799
7
+ data.tar.gz: ba7acfeddd8820d895e4d927dfb7e487f14f3307761d12dcfcf306f1f98d86d4eef50fd3255b8a383b30a85807de66395b01b026c9d307c53b5c51460f52eaac
data/CHANGELOG.md CHANGED
@@ -10,6 +10,21 @@ Read `release_notes.md` for commit level details.
10
10
 
11
11
  ### Deprecations
12
12
 
13
+
14
+ ## [7.4.0] - 2024-01-23
15
+
16
+ ### Enhancement
17
+ - Bump `selenium-webdriver` max
18
+
19
+ ### Deprecatioons
20
+ - Removed deprecated `core#platform_version` and `core#write_session_id`
21
+ - Please refer to the capabilities' value and `driver.session_id`
22
+
23
+ ## [7.3.2] - 2023-11-08
24
+
25
+ ### Bug fixes
26
+ - Fix default value fo set context
27
+
13
28
  ## [7.3.1] - 2023-11-04
14
29
  ### Enhancements
15
30
  - Bump `selenium-webdriver` max
data/Rakefile CHANGED
@@ -113,28 +113,7 @@ end
113
113
 
114
114
  desc('Execute RuboCop static code analysis')
115
115
  RuboCop::RakeTask.new(:rubocop) do |t|
116
- t.patterns = %w(lib test script)
116
+ t.patterns = %w(lib test)
117
117
  t.options = %w(-D)
118
118
  t.fail_on_error = true
119
119
  end
120
-
121
- desc('print commands which Ruby client has not implemented them yet')
122
- namespace :commands do
123
- require './script/commands'
124
-
125
- desc('Mobile JSON protocol')
126
- task :mjsonwp do |_t, _args|
127
- c = Script::CommandsChecker.new
128
- c.get_mjsonwp_routes
129
- c.get_all_command_path './mjsonwp_routes.js'
130
- c.all_diff_commands_mjsonwp.each { |key, value| puts("command: #{key}, method: #{value}") }
131
- end
132
-
133
- desc('W3C protocol')
134
- task :w3c do |_t, _args|
135
- c = Script::CommandsChecker.new
136
- c.get_mjsonwp_routes
137
- c.get_all_command_path './mjsonwp_routes.js'
138
- c.all_diff_commands_w3c.each { |key, value| puts("command: #{key}, method: #{value}") }
139
- end
140
- end
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ['lib']
24
24
 
25
- spec.add_runtime_dependency 'selenium-webdriver', '~> 4.2', '< 4.16'
25
+ spec.add_runtime_dependency 'selenium-webdriver', '~> 4.2', '< 4.18'
26
26
  spec.add_runtime_dependency 'faye-websocket', '~> 0.11.0'
27
27
 
28
28
  spec.add_development_dependency 'rake', '~> 13.0'
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
30
30
  spec.add_development_dependency 'minitest', '~> 5.0'
31
31
  spec.add_development_dependency 'minitest-reporters', '~> 1.1'
32
32
  spec.add_development_dependency 'webmock', '~> 3.19.0'
33
- spec.add_development_dependency 'rubocop', '1.57.2'
33
+ spec.add_development_dependency 'rubocop', '1.60.1'
34
34
  spec.add_development_dependency 'appium_thor', '~> 1.0'
35
35
  spec.add_development_dependency 'parallel_tests'
36
36
  spec.add_development_dependency 'simplecov'
@@ -181,9 +181,10 @@ module Appium
181
181
 
182
182
  # Perform 'touch' actions for W3C module.
183
183
  # Generate +touch+ pointer action here and users can use this via +driver.action+
184
- # - https://seleniumhq.github.io/selenium/docs/api/rb/Selenium/WebDriver/W3CActionBuilder.html
185
- # - https://seleniumhq.github.io/selenium/docs/api/rb/Selenium/WebDriver/PointerActions.html
186
- # - https://seleniumhq.github.io/selenium/docs/api/rb/Selenium/WebDriver/KeyActions.html
184
+ # - https://www.selenium.dev/documentation/webdriver/actions_api/
185
+ # - https://www.selenium.dev/selenium/docs/api/rb/Selenium/WebDriver/ActionBuilder.html
186
+ # - https://www.selenium.dev/selenium/docs/api/rb/Selenium/WebDriver/PointerActions.html
187
+ # - https://www.selenium.dev/selenium/docs/api/rb/Selenium/WebDriver/KeyActions.html
187
188
  #
188
189
  # The pointer type is 'touch' by default in the Appium Ruby client.
189
190
  #
@@ -201,8 +201,8 @@ module Appium
201
201
 
202
202
  # Perform 'key' actions for W3C module.
203
203
  # Generate +key+ pointer action here and users can use this via +driver.key_action+
204
- # - https://seleniumhq.github.io/selenium/docs/api/rb/Selenium/WebDriver/W3CActionBuilder.html
205
- # - https://seleniumhq.github.io/selenium/docs/api/rb/Selenium/WebDriver/KeyActions.html
204
+ # - https://www.selenium.dev/selenium/docs/api/rb/Selenium/WebDriver/ActionBuilder.html
205
+ # - https://www.selenium.dev/selenium/docs/api/rb/Selenium/WebDriver/KeyActions.html
206
206
  #
207
207
  # The pointer type is 'key' by default in the Appium Ruby client.
208
208
  # +driver.action+ in Appium Ruby client has 'pointer' action by default.
@@ -434,6 +434,7 @@ module Appium
434
434
  block_given? ? @bridge.within_context(context, &block) : @bridge.within_context(context)
435
435
  end
436
436
 
437
+ # @deprecated Use set context with proper context name instead.
437
438
  # Change to the default context. This is equivalent to +set_context nil+.
438
439
  #
439
440
  # @example
@@ -441,6 +442,7 @@ module Appium
441
442
  # @driver.switch_to_default_context
442
443
  #
443
444
  def switch_to_default_context
445
+ ::Appium::Logger.warn '[DEPRECATION] Please set proper context instead of calling this method.'
444
446
  @bridge.switch_to_default_context
445
447
  end
446
448
 
@@ -472,7 +474,7 @@ module Appium
472
474
  # @driver.set_context "NATIVE_APP"
473
475
  # @driver.context = "NATIVE_APP"
474
476
  #
475
- def context=(context = null)
477
+ def context=(context = nil)
476
478
  @bridge.set_context(context)
477
479
  end
478
480
  alias set_context context=
@@ -42,7 +42,7 @@ module Appium
42
42
  execute(:available_contexts, {}) || []
43
43
  end
44
44
 
45
- def set_context(context = null)
45
+ def set_context(context = nil)
46
46
  execute :set_context, {}, name: context
47
47
  end
48
48
  end # module ImeActions
@@ -36,7 +36,7 @@ module Appium
36
36
  # This options affects only client side as <code>:appium_lib</code> key.<br>
37
37
  # Read {::Appium::Core::Driver} about each attribute
38
38
  class Options
39
- attr_reader :custom_url, :default_wait, :export_session, :export_session_path,
39
+ attr_reader :custom_url, :default_wait,
40
40
  :port, :wait_timeout, :wait_interval, :listener,
41
41
  :direct_connect, :enable_idempotency_header
42
42
 
@@ -45,10 +45,6 @@ module Appium
45
45
  @default_wait = appium_lib_opts.fetch :wait, nil
46
46
  @enable_idempotency_header = appium_lib_opts.fetch :enable_idempotency_header, true
47
47
 
48
- # bump current session id into a particular file
49
- @export_session = appium_lib_opts.fetch :export_session, false
50
- @export_session_path = appium_lib_opts.fetch :export_session_path, default_tmp_appium_lib_session
51
-
52
48
  @direct_connect = appium_lib_opts.fetch :direct_connect, true
53
49
 
54
50
  @port = appium_lib_opts.fetch :port, Driver::DEFAULT_APPIUM_PORT
@@ -137,12 +133,6 @@ module Appium
137
133
  # @return [String]
138
134
  attr_reader :custom_url
139
135
 
140
- # Export session id to textfile in /tmp for 3rd party tools. False by default.
141
- # @return [Boolean]
142
- attr_reader :export_session
143
- # @return [String] By default, session id is exported in '/tmp/appium_lib_session'
144
- attr_reader :export_session_path
145
-
146
136
  # Default wait time for elements to appear in Appium server side.
147
137
  # Provide <code>{ appium_lib: { wait: 30 } }</code> to {::Appium::Core.for}
148
138
  # @return [Integer]
@@ -222,7 +212,6 @@ module Appium
222
212
  # app: '/path/to/MyiOS.app'
223
213
  # },
224
214
  # appium_lib: {
225
- # export_session: false,
226
215
  # port: 8080,
227
216
  # wait: 0,
228
217
  # wait_timeout: 20,
@@ -245,7 +234,6 @@ module Appium
245
234
  # },
246
235
  # appium_lib: {
247
236
  # server_url: 'http://custom-host:8080/wd/hub.com',
248
- # export_session: false,
249
237
  # wait: 0,
250
238
  # wait_timeout: 20,
251
239
  # wait_interval: 0.3,
@@ -266,7 +254,6 @@ module Appium
266
254
  # app: '/path/to/MyiOS.app'
267
255
  # },
268
256
  # appium_lib: {
269
- # export_session: false,
270
257
  # wait: 0,
271
258
  # wait_timeout: 20,
272
259
  # wait_interval: 0.3,
@@ -439,9 +426,6 @@ module Appium
439
426
  d_c = DirectConnections.new(@driver.capabilities)
440
427
  @driver.update_sending_request_to(protocol: d_c.protocol, host: d_c.host, port: d_c.port, path: d_c.path)
441
428
  end
442
-
443
- # export session
444
- write_session_id(@driver.session_id, @export_session_path) if @export_session
445
429
  rescue Errno::ECONNREFUSED
446
430
  raise "ERROR: Unable to connect to Appium. Is the server running on #{@custom_url}?"
447
431
  end
@@ -494,9 +478,6 @@ module Appium
494
478
  existing_session_id: session_id,
495
479
  automation_name: automation_name,
496
480
  platform_name: platform_name)
497
-
498
- # export session
499
- write_session_id(@driver.session_id, @export_session_path) if @export_session
500
481
  rescue Errno::ECONNREFUSED
501
482
  raise "ERROR: Unable to connect to Appium. Is the server running on #{@custom_url}?"
502
483
  end
@@ -568,23 +549,6 @@ module Appium
568
549
  {}
569
550
  end
570
551
 
571
- # Return the platform version as an array of integers
572
- # @return [Array<Integer>]
573
- #
574
- # @example
575
- #
576
- # @core.platform_version #=> [10,1,1]
577
- #
578
- def platform_version
579
- ::Appium::Logger.warn(
580
- '[DEPRECATION] platform_version method will be. ' \
581
- 'Please check the platformVersion via @driver.capabilities["platformVersion"] instead.'
582
- )
583
-
584
- p_version = @driver.capabilities['platformVersion'] || @driver.session_capabilities['platformVersion']
585
- p_version.split('.').map(&:to_i)
586
- end
587
-
588
552
  private
589
553
 
590
554
  def convert_to_symbol(value)
@@ -699,9 +663,6 @@ module Appium
699
663
 
700
664
  @default_wait = opts.default_wait
701
665
 
702
- @export_session = opts.export_session
703
- @export_session_path = opts.export_session_path
704
-
705
666
  @port = opts.port
706
667
 
707
668
  @wait_timeout = opts.wait_timeout
@@ -743,19 +704,6 @@ module Appium
743
704
  @driver.capabilities['automationName'].downcase.strip.intern
744
705
  end
745
706
  end
746
-
747
- # @private
748
- def write_session_id(session_id, export_path = '/tmp/appium_lib_session')
749
- ::Appium::Logger.warn(
750
- '[DEPRECATION] export_session option will be removed. ' \
751
- 'Please save the session id by yourself with #session_id method like @driver.session_id.'
752
- )
753
- export_path = export_path.tr('/', '\\') if ::Appium::Core::Base.platform.windows?
754
- File.write(export_path, session_id)
755
- rescue IOError => e
756
- ::Appium::Logger.warn e
757
- nil
758
- end
759
707
  end # class Driver
760
708
  end # module Core
761
709
  end # module Appium
@@ -14,7 +14,7 @@
14
14
 
15
15
  module Appium
16
16
  module Core
17
- VERSION = '7.3.1' unless defined? ::Appium::Core::VERSION
18
- DATE = '2023-11-04' unless defined? ::Appium::Core::DATE
17
+ VERSION = '7.4.0' unless defined? ::Appium::Core::VERSION
18
+ DATE = '2024-01-23' unless defined? ::Appium::Core::DATE
19
19
  end
20
20
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appium_lib_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.3.1
4
+ version: 7.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kazuaki MATSUO
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-11-04 00:00:00.000000000 Z
11
+ date: 2024-01-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: selenium-webdriver
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '4.2'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '4.16'
22
+ version: '4.18'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '4.2'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '4.16'
32
+ version: '4.18'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: faye-websocket
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -120,14 +120,14 @@ dependencies:
120
120
  requirements:
121
121
  - - '='
122
122
  - !ruby/object:Gem::Version
123
- version: 1.57.2
123
+ version: 1.60.1
124
124
  type: :development
125
125
  prerelease: false
126
126
  version_requirements: !ruby/object:Gem::Requirement
127
127
  requirements:
128
128
  - - '='
129
129
  - !ruby/object:Gem::Version
130
- version: 1.57.2
130
+ version: 1.60.1
131
131
  - !ruby/object:Gem::Dependency
132
132
  name: appium_thor
133
133
  requirement: !ruby/object:Gem::Requirement