appium_lib_core 4.1.0 → 5.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +176 -273
  3. data/README.md +22 -11
  4. data/Rakefile +4 -0
  5. data/appium_lib_core.gemspec +5 -8
  6. data/bin/console +0 -4
  7. data/lib/appium_lib_core/android/device/auth_finger_print.rb +2 -1
  8. data/lib/appium_lib_core/android/device.rb +4 -4
  9. data/lib/appium_lib_core/common/base/bridge.rb +291 -92
  10. data/lib/appium_lib_core/common/base/capabilities.rb +8 -9
  11. data/lib/appium_lib_core/common/base/device_ime.rb +49 -0
  12. data/lib/appium_lib_core/common/base/driver.rb +225 -187
  13. data/lib/appium_lib_core/common/base/driver_settings.rb +51 -0
  14. data/lib/appium_lib_core/common/base/has_location.rb +80 -0
  15. data/lib/appium_lib_core/common/base/has_network_connection.rb +56 -0
  16. data/lib/appium_lib_core/common/base/http_default.rb +1 -3
  17. data/lib/appium_lib_core/common/base/remote_status.rb +31 -0
  18. data/lib/appium_lib_core/common/base/rotable.rb +54 -0
  19. data/lib/appium_lib_core/common/base/screenshot.rb +6 -6
  20. data/lib/appium_lib_core/common/base/search_context.rb +20 -5
  21. data/lib/appium_lib_core/common/base.rb +1 -3
  22. data/lib/appium_lib_core/common/command.rb +255 -4
  23. data/lib/appium_lib_core/common/device/app_management.rb +2 -14
  24. data/lib/appium_lib_core/common/device/image_comparison.rb +12 -4
  25. data/lib/appium_lib_core/common/device/keyevent.rb +4 -4
  26. data/lib/appium_lib_core/common/{command/mjsonwp.rb → device/orientation.rb} +14 -11
  27. data/lib/appium_lib_core/common/device/touch_actions.rb +2 -0
  28. data/lib/appium_lib_core/common/device/value.rb +6 -6
  29. data/lib/appium_lib_core/common/error.rb +4 -5
  30. data/lib/appium_lib_core/common/log.rb +4 -1
  31. data/lib/appium_lib_core/common/touch_action/multi_touch.rb +19 -0
  32. data/lib/appium_lib_core/common/touch_action/touch_actions.rb +16 -2
  33. data/lib/appium_lib_core/common/wait.rb +38 -6
  34. data/lib/appium_lib_core/device.rb +1 -5
  35. data/lib/appium_lib_core/driver.rb +68 -82
  36. data/lib/appium_lib_core/{patch.rb → element.rb} +66 -9
  37. data/lib/appium_lib_core/ios/uiautomation/patch.rb +1 -1
  38. data/lib/appium_lib_core/{common/base/command.rb → mac2/bridge.rb} +9 -8
  39. data/lib/appium_lib_core/mac2/device/screen.rb +48 -0
  40. data/lib/appium_lib_core/mac2/device.rb +92 -0
  41. data/lib/appium_lib_core/mac2.rb +17 -0
  42. data/lib/appium_lib_core/version.rb +2 -2
  43. data/lib/appium_lib_core.rb +20 -10
  44. metadata +29 -82
  45. data/.github/ISSUE_TEMPLATE/issue-report.md +0 -29
  46. data/.github/contributing.md +0 -26
  47. data/.github/issue_template.md +0 -20
  48. data/.github/workflows/unittest.yml +0 -68
  49. data/.gitignore +0 -18
  50. data/.rubocop.yml +0 -58
  51. data/azure-pipelines.yml +0 -15
  52. data/ci-jobs/functional/android_setup.yml +0 -3
  53. data/ci-jobs/functional/ios_setup.yml +0 -7
  54. data/ci-jobs/functional/publish_test_result.yml +0 -18
  55. data/ci-jobs/functional/run_appium.yml +0 -25
  56. data/ci-jobs/functional/start-emulator.sh +0 -26
  57. data/ci-jobs/functional_test.yml +0 -298
  58. data/docs/mobile_command.md +0 -34
  59. data/lib/appium_lib_core/common/base/bridge/mjsonwp.rb +0 -81
  60. data/lib/appium_lib_core/common/base/bridge/w3c.rb +0 -252
  61. data/lib/appium_lib_core/common/command/common.rb +0 -110
  62. data/lib/appium_lib_core/common/command/w3c.rb +0 -56
  63. data/release_notes.md +0 -816
  64. data/script/commands.rb +0 -200
@@ -14,7 +14,7 @@
14
14
 
15
15
  module Appium
16
16
  module Core
17
- VERSION = '4.1.0' unless defined? ::Appium::Core::VERSION
18
- DATE = '2020-12-25' unless defined? ::Appium::Core::DATE
17
+ VERSION = '5.6.0' unless defined? ::Appium::Core::VERSION
18
+ DATE = '2022-11-08' unless defined? ::Appium::Core::DATE
19
19
  end
20
20
  end
@@ -17,23 +17,29 @@ require 'selenium-webdriver'
17
17
  require_relative 'appium_lib_core/version'
18
18
  require_relative 'appium_lib_core/common'
19
19
  require_relative 'appium_lib_core/driver'
20
-
21
20
  require_relative 'appium_lib_core/device'
22
-
23
- # Call patch after requiring other files
24
- require_relative 'appium_lib_core/patch'
21
+ require_relative 'appium_lib_core/element'
25
22
 
26
23
  module Appium
27
- # convert all keys (including nested) to symbols
24
+ # @private
25
+ #
26
+ # convert the top level keys to symbols.
28
27
  #
29
- # based on deep_symbolize_keys & deep_transform_keys from rails
30
- # https://github.com/rails/docrails/blob/a3b1105ada3da64acfa3843b164b14b734456a50/activesupport/lib/active_support/core_ext/hash/keys.rb#L84
31
28
  # @param [Hash] hash Hash value to make symbolise
32
- def self.symbolize_keys(hash)
33
- raise ArgumentError, 'symbolize_keys requires a hash' unless hash.is_a? Hash
29
+ def self.symbolize_keys(hash, nested: false, enable_deprecation_msg: true)
30
+ # FIXME: As https://github.com/appium/ruby_lib/issues/945, we must remove this implicit string to symbol.
31
+ # But appium_lib_core's some capability handling expect to be symbol, so we should test to remove
32
+ # the mehotds which expect the symbol first.
33
+ raise ::Appium::Core::Error::ArgumentError, 'symbolize_keys requires a hash' unless hash.is_a? Hash
34
34
 
35
35
  hash.each_with_object({}) do |pair, acc|
36
36
  key = begin
37
+ if enable_deprecation_msg && !(pair[0].is_a? Symbol)
38
+ ::Appium::Logger.warn("[Deprecation] The key '#{pair[0]}' must be a symbol while currently it " \
39
+ "is #{pair[0].class.name}. Please define the key as a Symbol. " \
40
+ 'Converting it to Symbol for now.')
41
+ end
42
+
37
43
  pair[0].to_sym
38
44
  rescue StandardError => e
39
45
  ::Appium::Logger.warn(e.message)
@@ -41,7 +47,11 @@ module Appium
41
47
  end
42
48
 
43
49
  value = pair[1]
44
- acc[key] = value.is_a?(Hash) ? symbolize_keys(value) : value
50
+ acc[key] = if nested
51
+ value.is_a?(Hash) ? symbolize_keys(value, nested: false, enable_deprecation_msg: false) : value
52
+ else
53
+ value
54
+ end
45
55
  end
46
56
  end
47
57
 
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: 4.1.0
4
+ version: 5.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kazuaki MATSUO
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-12-26 00:00:00.000000000 Z
11
+ date: 2022-11-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: selenium-webdriver
@@ -16,20 +16,20 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '3.14'
20
- - - ">="
19
+ version: '4.2'
20
+ - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: 3.14.1
22
+ version: '4.7'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '3.14'
30
- - - ">="
29
+ version: '4.2'
30
+ - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: 3.14.1
32
+ version: '4.7'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: faye-websocket
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -44,20 +44,6 @@ dependencies:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
46
  version: 0.11.0
47
- - !ruby/object:Gem::Dependency
48
- name: bundler
49
- requirement: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - ">="
52
- - !ruby/object:Gem::Version
53
- version: '1.14'
54
- type: :development
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- requirements:
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- version: '1.14'
61
47
  - !ruby/object:Gem::Dependency
62
48
  name: rake
63
49
  requirement: !ruby/object:Gem::Requirement
@@ -120,28 +106,28 @@ dependencies:
120
106
  requirements:
121
107
  - - "~>"
122
108
  - !ruby/object:Gem::Version
123
- version: 3.11.0
109
+ version: 3.18.1
124
110
  type: :development
125
111
  prerelease: false
126
112
  version_requirements: !ruby/object:Gem::Requirement
127
113
  requirements:
128
114
  - - "~>"
129
115
  - !ruby/object:Gem::Version
130
- version: 3.11.0
116
+ version: 3.18.1
131
117
  - !ruby/object:Gem::Dependency
132
118
  name: rubocop
133
119
  requirement: !ruby/object:Gem::Requirement
134
120
  requirements:
135
121
  - - '='
136
122
  - !ruby/object:Gem::Version
137
- version: 1.7.0
123
+ version: 1.38.0
138
124
  type: :development
139
125
  prerelease: false
140
126
  version_requirements: !ruby/object:Gem::Requirement
141
127
  requirements:
142
128
  - - '='
143
129
  - !ruby/object:Gem::Version
144
- version: 1.7.0
130
+ version: 1.38.0
145
131
  - !ruby/object:Gem::Dependency
146
132
  name: appium_thor
147
133
  requirement: !ruby/object:Gem::Requirement
@@ -156,34 +142,6 @@ dependencies:
156
142
  - - "~>"
157
143
  - !ruby/object:Gem::Version
158
144
  version: '1.0'
159
- - !ruby/object:Gem::Dependency
160
- name: pry
161
- requirement: !ruby/object:Gem::Requirement
162
- requirements:
163
- - - ">="
164
- - !ruby/object:Gem::Version
165
- version: '0'
166
- type: :development
167
- prerelease: false
168
- version_requirements: !ruby/object:Gem::Requirement
169
- requirements:
170
- - - ">="
171
- - !ruby/object:Gem::Version
172
- version: '0'
173
- - !ruby/object:Gem::Dependency
174
- name: pry-byebug
175
- requirement: !ruby/object:Gem::Requirement
176
- requirements:
177
- - - ">="
178
- - !ruby/object:Gem::Version
179
- version: '0'
180
- type: :development
181
- prerelease: false
182
- version_requirements: !ruby/object:Gem::Requirement
183
- requirements:
184
- - - ">="
185
- - !ruby/object:Gem::Version
186
- version: '0'
187
145
  - !ruby/object:Gem::Dependency
188
146
  name: parallel_tests
189
147
  requirement: !ruby/object:Gem::Requirement
@@ -219,12 +177,6 @@ executables: []
219
177
  extensions: []
220
178
  extra_rdoc_files: []
221
179
  files:
222
- - ".github/ISSUE_TEMPLATE/issue-report.md"
223
- - ".github/contributing.md"
224
- - ".github/issue_template.md"
225
- - ".github/workflows/unittest.yml"
226
- - ".gitignore"
227
- - ".rubocop.yml"
228
180
  - CHANGELOG.md
229
181
  - Gemfile
230
182
  - LICENSE.txt
@@ -232,16 +184,8 @@ files:
232
184
  - Rakefile
233
185
  - Thorfile
234
186
  - appium_lib_core.gemspec
235
- - azure-pipelines.yml
236
187
  - bin/console
237
188
  - bin/setup
238
- - ci-jobs/functional/android_setup.yml
239
- - ci-jobs/functional/ios_setup.yml
240
- - ci-jobs/functional/publish_test_result.yml
241
- - ci-jobs/functional/run_appium.yml
242
- - ci-jobs/functional/start-emulator.sh
243
- - ci-jobs/functional_test.yml
244
- - docs/mobile_command.md
245
189
  - lib/appium_lib_core.rb
246
190
  - lib/appium_lib_core/android.rb
247
191
  - lib/appium_lib_core/android/device.rb
@@ -261,19 +205,19 @@ files:
261
205
  - lib/appium_lib_core/common.rb
262
206
  - lib/appium_lib_core/common/base.rb
263
207
  - lib/appium_lib_core/common/base/bridge.rb
264
- - lib/appium_lib_core/common/base/bridge/mjsonwp.rb
265
- - lib/appium_lib_core/common/base/bridge/w3c.rb
266
208
  - lib/appium_lib_core/common/base/capabilities.rb
267
- - lib/appium_lib_core/common/base/command.rb
209
+ - lib/appium_lib_core/common/base/device_ime.rb
268
210
  - lib/appium_lib_core/common/base/driver.rb
211
+ - lib/appium_lib_core/common/base/driver_settings.rb
212
+ - lib/appium_lib_core/common/base/has_location.rb
213
+ - lib/appium_lib_core/common/base/has_network_connection.rb
269
214
  - lib/appium_lib_core/common/base/http_default.rb
270
215
  - lib/appium_lib_core/common/base/platform.rb
216
+ - lib/appium_lib_core/common/base/remote_status.rb
217
+ - lib/appium_lib_core/common/base/rotable.rb
271
218
  - lib/appium_lib_core/common/base/screenshot.rb
272
219
  - lib/appium_lib_core/common/base/search_context.rb
273
220
  - lib/appium_lib_core/common/command.rb
274
- - lib/appium_lib_core/common/command/common.rb
275
- - lib/appium_lib_core/common/command/mjsonwp.rb
276
- - lib/appium_lib_core/common/command/w3c.rb
277
221
  - lib/appium_lib_core/common/device/app_management.rb
278
222
  - lib/appium_lib_core/common/device/app_state.rb
279
223
  - lib/appium_lib_core/common/device/battery_status.rb
@@ -287,6 +231,7 @@ files:
287
231
  - lib/appium_lib_core/common/device/ime_actions.rb
288
232
  - lib/appium_lib_core/common/device/keyboard.rb
289
233
  - lib/appium_lib_core/common/device/keyevent.rb
234
+ - lib/appium_lib_core/common/device/orientation.rb
290
235
  - lib/appium_lib_core/common/device/screen_record.rb
291
236
  - lib/appium_lib_core/common/device/setting.rb
292
237
  - lib/appium_lib_core/common/device/touch_actions.rb
@@ -301,6 +246,7 @@ files:
301
246
  - lib/appium_lib_core/common/ws/websocket.rb
302
247
  - lib/appium_lib_core/device.rb
303
248
  - lib/appium_lib_core/driver.rb
249
+ - lib/appium_lib_core/element.rb
304
250
  - lib/appium_lib_core/ios.rb
305
251
  - lib/appium_lib_core/ios/device.rb
306
252
  - lib/appium_lib_core/ios/device/clipboard.rb
@@ -313,19 +259,20 @@ files:
313
259
  - lib/appium_lib_core/ios/xcuitest/device/performance.rb
314
260
  - lib/appium_lib_core/ios/xcuitest/device/screen.rb
315
261
  - lib/appium_lib_core/ios_xcuitest.rb
316
- - lib/appium_lib_core/patch.rb
262
+ - lib/appium_lib_core/mac2.rb
263
+ - lib/appium_lib_core/mac2/bridge.rb
264
+ - lib/appium_lib_core/mac2/device.rb
265
+ - lib/appium_lib_core/mac2/device/screen.rb
317
266
  - lib/appium_lib_core/version.rb
318
267
  - lib/appium_lib_core/windows.rb
319
268
  - lib/appium_lib_core/windows/bridge.rb
320
269
  - lib/appium_lib_core/windows/device.rb
321
270
  - lib/appium_lib_core/windows/device/screen.rb
322
- - release_notes.md
323
- - script/commands.rb
324
271
  homepage: https://github.com/appium/ruby_lib_core/
325
272
  licenses:
326
273
  - Apache-2.0
327
274
  metadata: {}
328
- post_install_message:
275
+ post_install_message:
329
276
  rdoc_options: []
330
277
  require_paths:
331
278
  - lib
@@ -333,15 +280,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
333
280
  requirements:
334
281
  - - ">="
335
282
  - !ruby/object:Gem::Version
336
- version: '2.4'
283
+ version: '2.7'
337
284
  required_rubygems_version: !ruby/object:Gem::Requirement
338
285
  requirements:
339
286
  - - ">="
340
287
  - !ruby/object:Gem::Version
341
288
  version: '0'
342
289
  requirements: []
343
- rubygems_version: 3.1.2
344
- signing_key:
290
+ rubygems_version: 3.3.3
291
+ signing_key:
345
292
  specification_version: 4
346
293
  summary: Minimal Ruby library for Appium.
347
294
  test_files: []
@@ -1,29 +0,0 @@
1
- ---
2
- name: issue report
3
- about: Create a report to help us improve
4
- title: ''
5
- labels: ''
6
- assignees: ''
7
-
8
- ---
9
-
10
- ## This is a
11
- * [ ] Bug report
12
- * [ ] Question
13
- * [ ] Feature Request
14
-
15
- ## Summary
16
-
17
- ## Environment
18
- * `ruby_lib_core` version:
19
- * Mobile platform/version/device under test:
20
-
21
- ## Actual behaviour and steps to reproduce
22
-
23
- ## Expected behaviour
24
-
25
- ## Link to Appium/Ruby logs
26
-
27
- Create a [GIST](https://gist.github.com) which is a paste of your _full_ Appium logs, and link them here.
28
-
29
- ## Any additional comments
@@ -1,26 +0,0 @@
1
- # Contributing
2
-
3
- For features or bug fixes, please submit a pull request. Ideally there would be a test as well. The remainder of this doc details how to run the tests.
4
-
5
- ## Tests
6
- ### Unit Tests
7
- - `rake test:unit` run on Travis automatically
8
-
9
- ### Functional Tests
10
- - iOS
11
- - `rake test:func:ios`
12
- - Android
13
- - `rake test:func:android`
14
-
15
- ## Merge
16
- - Squash and merge when we merge PRs to the master
17
-
18
- ## Publishing on rubygems
19
-
20
- 0. Ensure you have `~/.gem/credentials` If not run [the following command](http://guides.rubygems.org/make-your-own-gem/) (replace username with your rubygems user)
21
- > $ curl -u username https://rubygems.org/api/v1/api_key.yaml >
22
- ~/.gem/credentials; chmod 0600 ~/.gem/credentials
23
-
24
- 1. Bump the version number `thor bump`
25
- 2. Generate release note, build and publish gem with `thor release`
26
- 3. Update `changelog.md`
@@ -1,20 +0,0 @@
1
- ## This is a
2
- * [ ] Bug report
3
- * [ ] Question
4
- * [ ] Feature Request
5
-
6
- ## Summary
7
-
8
- ## Environment
9
- * `ruby_lib_core` version:
10
- * Mobile platform/version/device under test:
11
-
12
- ## Actual behaviour and steps to reproduce
13
-
14
- ## Expected behaviour
15
-
16
- ## Link to Appium/Ruby logs
17
-
18
- Create a [GIST](https://gist.github.com) which is a paste of your _full_ Appium logs, and link them here.
19
-
20
- ## Any additional comments
@@ -1,68 +0,0 @@
1
- name: Runs lint and unit tests
2
-
3
- on:
4
- push:
5
- branches: [ master ]
6
- pull_request:
7
- branches: [ master ]
8
-
9
- jobs:
10
- test:
11
- strategy:
12
- fail-fast: false
13
- matrix:
14
- ruby: [2.4, 2.5, 2.6, 2.7, 3.0]
15
-
16
- runs-on: ubuntu-latest
17
-
18
- env:
19
- UNIT_TEST: true
20
-
21
- steps:
22
- - uses: actions/checkout@v2
23
- - name: Set up Ruby
24
- uses: ruby/setup-ruby@v1
25
- with:
26
- ruby-version: ${{ matrix.ruby }}
27
- - name: Install dependencies
28
- run: bundle install
29
- - name: Run tests
30
- run: |
31
- bundle exec rake rubocop
32
- bundle exec parallel_test test/unit/ -n 4
33
- AUTOMATION_NAME_DROID=espresso bundle exec parallel_test test/unit/android -n 4
34
- AUTOMATION_NAME_DROID=appium AUTOMATION_NAME_IOS=appium bundle exec parallel_test test/unit -n 4
35
-
36
- test-win:
37
- strategy:
38
- fail-fast: false
39
- matrix:
40
- # Does not add 2.7 on Windows so far since a command fails only on Windows
41
- ruby: [2.4, 2.5, 2.6]
42
-
43
- runs-on: windows-latest
44
-
45
- env:
46
- UNIT_TEST: true
47
-
48
- steps:
49
- - uses: actions/checkout@v2
50
- - name: Set up Ruby
51
- uses: ruby/setup-ruby@v1
52
- with:
53
- ruby-version: ${{ matrix.ruby }}
54
- - name: Install dependencies
55
- run: |
56
- gem install ffi
57
- bundle install
58
- gem uninstall --force eventmachine && gem install eventmachine --platform ruby
59
- - name: Run tests
60
- run: |
61
- parallel_test test/unit/ -n 4
62
-
63
- setx AUTOMATION_NAME_DROID espresso
64
- parallel_test test/unit/android -n 4
65
-
66
- setx AUTOMATION_NAME_DROID appium
67
- setx AUTOMATION_NAME_IOS appium
68
- parallel_test test/unit -n 4
data/.gitignore DELETED
@@ -1,18 +0,0 @@
1
- /.bundle/
2
- /.yardoc
3
- /Gemfile.lock
4
- /_yardoc/
5
- /coverage/
6
- /doc/
7
- /docs/
8
- /pkg/
9
- /spec/reports/
10
- /tmp/
11
-
12
- # for Mac
13
- .DS_Store
14
-
15
- # for IDE
16
- .idea
17
-
18
- .coverage
data/.rubocop.yml DELETED
@@ -1,58 +0,0 @@
1
- AllCops:
2
- TargetRubyVersion: 2.4
3
- Layout/LineLength:
4
- Max: 128
5
- Layout/RescueEnsureAlignment:
6
- Enabled: false
7
- Layout/EmptyLinesAroundAttributeAccessor:
8
- Enabled: false
9
- Layout/EmptyLineBetweenDefs:
10
- Enabled: false
11
- Layout/HashAlignment:
12
- Enabled: false
13
- Metrics/MethodLength:
14
- Enabled: false
15
- Metrics/ModuleLength:
16
- Enabled: false
17
- Metrics/ClassLength:
18
- Enabled: false
19
- Metrics/AbcSize:
20
- Enabled: false
21
- Metrics/CyclomaticComplexity:
22
- Max: 14
23
- Metrics/PerceivedComplexity:
24
- Max: 14
25
- Metrics/ParameterLists:
26
- Enabled: false
27
- Lint/NestedMethodDefinition:
28
- Enabled: false
29
- Style/ZeroLengthPredicate:
30
- Enabled: false
31
- Style/Documentation:
32
- Enabled: false
33
- Style/CommentedKeyword:
34
- Enabled: false
35
- Style/PercentLiteralDelimiters:
36
- Enabled: false
37
- Style/SymbolArray:
38
- Enabled: false
39
- Style/UnpackFirst:
40
- Enabled: false
41
- Naming/AccessorMethodName:
42
- Enabled: false
43
- Naming/MemoizedInstanceVariableName:
44
- Enabled: true
45
- Exclude:
46
- - test/**/*
47
- Naming/RescuedExceptionsVariableName:
48
- Enabled: false
49
- Style/CaseLikeIf:
50
- Enabled: false
51
- Style/RedundantRegexpEscape:
52
- Enabled: false
53
- Style/OptionalBooleanParameter:
54
- Enabled: false
55
- Style/ExplicitBlockArgument:
56
- Enabled: false
57
- Style/KeywordParametersOrder:
58
- Enabled: false
data/azure-pipelines.yml DELETED
@@ -1,15 +0,0 @@
1
- # Ruby
2
- # Package your Ruby project.
3
- # Add steps that install rails, analyze code, save build artifacts, deploy, and more:
4
- # https://docs.microsoft.com/azure/devops/pipelines/languages/ruby
5
- jobs:
6
- - template: ./ci-jobs/functional_test.yml
7
-
8
- # Runs tests nightly to make sure they works against appium@beta
9
- schedules:
10
- - cron: "0 0 * * *"
11
- displayName: Daily Nightly build (UTC)
12
- branches:
13
- include:
14
- - master
15
- always: true
@@ -1,3 +0,0 @@
1
- steps:
2
- - script: bash ci-jobs/functional/start-emulator.sh
3
- displayName: Create and run Emulator
@@ -1,7 +0,0 @@
1
- steps:
2
- - script: sudo xcode-select -s /Applications/Xcode_${{ parameters.xcodeVersion }}.app/Contents/Developer
3
- displayName: Xcode Select ${{ parameters.xcodeVersion }}
4
- - script: xcrun simctl list
5
- displayName: List Installed Simulators
6
- - script: defaults write com.apple.iphonesimulator PasteboardAutomaticSync -bool false
7
- displayName: Disable pasteboard automatic sync
@@ -1,18 +0,0 @@
1
- steps:
2
- - task: PublishTestResults@2
3
- condition: always()
4
- inputs:
5
- testResultsFiles: 'test/reports/TEST-AppiumLibCoreTest*.xml'
6
- testRunTitle: '$(Agent.JobName)'
7
- - task: ArchiveFiles@2
8
- condition: always()
9
- inputs:
10
- rootFolderOrFile: 'test/report'
11
- archiveType: 'zip'
12
- archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
13
- replaceExistingArchive: true
14
- - task: PublishBuildArtifacts@1
15
- condition: always()
16
- inputs:
17
- pathtoPublish: '$(Build.ArtifactStagingDirectory)'
18
- artifactName: '$(Agent.JobName)'
@@ -1,25 +0,0 @@
1
- steps:
2
- - task: NodeTool@0
3
- inputs:
4
- versionSpec: 10.x
5
- displayName: Install Node 10.x
6
- - script: npm install -g appium@${APPIUM_VERSION}
7
- displayName: Install appium beta
8
- - script: npm install -g mjpeg-consumer
9
- displayName: Install MJPEG Consumer
10
- - script: npm list --depth 2 -g || echo 'ok'
11
- displayName: Installed node dependencies
12
- - task: UseRubyVersion@0
13
- inputs:
14
- versionSpec: '2.7'
15
- - script: |
16
- mkdir -p test/report
17
- nohup appium --relaxed-security --log-timestamp --log-no-colors > test/report/appium.out 2>&1 &
18
- displayName: Run Appium in background
19
- env:
20
- JAVA_HOME: $(JAVA_HOME_11_X64)
21
- PATH: $(JAVA_HOME_11_X64)/bin:$(PATH)
22
- - script: |
23
- gem install bundler;
24
- bundle install --retry=3 --jobs=4 --path vendor/bundle;
25
- displayName: Install Gems
@@ -1,26 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- # This script was copy-pasted from https://docs.microsoft.com/en-us/azure/devops/pipelines/languages/android?view=azure-devops#test-on-the-android-emulator
4
- # with some changes
5
-
6
- # Install AVD files
7
- declare -r emulator="system-images;android-${ANDROID_SDK_VERSION};google_apis;x86"
8
- echo "y" | ${ANDROID_HOME}/tools/bin/sdkmanager --install "$emulator"
9
-
10
- # Show a list of emulators
11
- ${ANDROID_HOME}/tools/bin/avdmanager list
12
-
13
- # Create emulator
14
- echo "no" | ${ANDROID_HOME}/tools/bin/avdmanager create avd -d "Nexus 5X" -n testemulator -k "${emulator}" --force
15
-
16
- echo ${ANDROID_HOME}/emulator/emulator -list-avds
17
-
18
- echo "Starting emulator"
19
-
20
- # Start emulator in background
21
- nohup ${ANDROID_HOME}/emulator/emulator -avd testemulator -accel auto -no-boot-anim -gpu auto -no-snapshot > /dev/null 2>&1 &
22
- ${ANDROID_HOME}/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d '\r') ]]; do sleep 1; done; input keyevent 82'
23
-
24
- ${ANDROID_HOME}/platform-tools/adb devices
25
-
26
- echo "Emulator started"