appium_lib_core 5.0.2 → 5.1.1
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -0
- data/README.md +1 -1
- data/appium_lib_core.gemspec +2 -2
- data/lib/appium_lib_core/common/base/bridge.rb +9 -11
- data/lib/appium_lib_core/common/base/driver.rb +17 -15
- data/lib/appium_lib_core/common/command.rb +0 -2
- data/lib/appium_lib_core/common/device/app_management.rb +2 -14
- data/lib/appium_lib_core/version.rb +2 -2
- metadata +5 -23
- data/.github/ISSUE_TEMPLATE/issue-report.md +0 -29
- data/.github/contributing.md +0 -26
- data/.github/dependabot.yml +0 -8
- data/.github/issue_template.md +0 -20
- data/.github/workflows/codeql-analysis.yml +0 -70
- data/.github/workflows/unittest.yml +0 -67
- data/.gitignore +0 -18
- data/.rubocop.yml +0 -152
- data/azure-pipelines.yml +0 -15
- data/ci-jobs/functional/android_setup.yml +0 -3
- data/ci-jobs/functional/ios_setup.yml +0 -7
- data/ci-jobs/functional/publish_test_result.yml +0 -18
- data/ci-jobs/functional/run_appium.yml +0 -25
- data/ci-jobs/functional/start-emulator.sh +0 -26
- data/ci-jobs/functional_test.yml +0 -298
- data/docs/mobile_command.md +0 -34
- data/release_notes.md +0 -948
- data/script/commands.rb +0 -166
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7498caac67adf73e6d5a8f7127fe6441eadb7cfa705496e72c616d3c389337c7
|
4
|
+
data.tar.gz: 851dca60890fa41293cae401d308e43f34d3fe94f49fbbe951407a00dea2a329
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8a4e1dc7ee2b28b0ccfba5e0255d30370232313d4ae51d36b61fca2d0431cf7617b03696529207c8c8de666fba504491d73d2a6ef28c3f6c5cb5cc1612ae5c9d
|
7
|
+
data.tar.gz: '09528fb3002fd25934c5f1bd0d539e2b13798701b18803de0bda4410ab8fb7116b1458ef619d0d43050548a2deb57ef86848bc3a9a46ac954551fd93e8bc176f'
|
data/CHANGELOG.md
CHANGED
@@ -10,6 +10,27 @@ Read `release_notes.md` for commit level details.
|
|
10
10
|
|
11
11
|
### Deprecations
|
12
12
|
|
13
|
+
## [5.1.1] - 2022-04-18
|
14
|
+
|
15
|
+
### Enhancements
|
16
|
+
|
17
|
+
- Remove unneccessry files from gem package to reduce the size.
|
18
|
+
|
19
|
+
## [5.1.0] - 2021-12-25
|
20
|
+
|
21
|
+
### Enhancements
|
22
|
+
- Make default pointerType `touch` for the pointer in W3C actions instead of `mouse` for Appium
|
23
|
+
- This change should not affect W3C actions
|
24
|
+
|
25
|
+
## [5.0.3] - 2021-12-13
|
26
|
+
|
27
|
+
### Enhancements
|
28
|
+
- Can add more arguments in `install_app`
|
29
|
+
- e.g. Add `timeoutMs` for XCUITest driver as `@driver.install_app("/path/to/test.ipa", timeoutMs: 20000)`
|
30
|
+
|
31
|
+
### Bug fixes
|
32
|
+
- (internal) Allow to access to `bridge` attribute in `driver` instance for appium_flutter_finder
|
33
|
+
|
13
34
|
## [5.0.2] - 2021-12-01
|
14
35
|
|
15
36
|
### Bug fixes
|
data/README.md
CHANGED
@@ -43,7 +43,7 @@ $ appium --relaxed-security # To run all tests in local
|
|
43
43
|
```bash
|
44
44
|
$ bundle install
|
45
45
|
$ rake test:func:android # Andorid, uiautomator2
|
46
|
-
$
|
46
|
+
$ APPIUM_DRIVER=espresso rake test:func:android # Andorid, uiautomator2
|
47
47
|
$ rake test:func:ios # iOS
|
48
48
|
```
|
49
49
|
|
data/appium_lib_core.gemspec
CHANGED
@@ -16,7 +16,7 @@ Gem::Specification.new do |spec|
|
|
16
16
|
spec.homepage = 'https://github.com/appium/ruby_lib_core/'
|
17
17
|
spec.license = 'Apache-2.0'
|
18
18
|
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
19
|
-
f.match(%r{^(doc|test|spec|features)
|
19
|
+
f.match(%r{(^(doc|docs|test|spec|features|ci-jobs|.github|script)/|release_notes.md|.gitignore|azure-pipelines.yml|.rubocop.yml)})
|
20
20
|
end
|
21
21
|
spec.bindir = 'exe'
|
22
22
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
@@ -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.14.0'
|
33
|
-
spec.add_development_dependency 'rubocop', '1.
|
33
|
+
spec.add_development_dependency 'rubocop', '1.27.0'
|
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'
|
@@ -159,8 +159,7 @@ module Appium
|
|
159
159
|
# - https://seleniumhq.github.io/selenium/docs/api/rb/Selenium/WebDriver/PointerActions.html
|
160
160
|
# - https://seleniumhq.github.io/selenium/docs/api/rb/Selenium/WebDriver/KeyActions.html
|
161
161
|
#
|
162
|
-
#
|
163
|
-
# the server side. So we don't consider the case.
|
162
|
+
# The pointer type is 'touch' by default in the Appium Ruby client. (The selenium one is 'mouse')
|
164
163
|
#
|
165
164
|
# @example
|
166
165
|
#
|
@@ -168,9 +167,14 @@ module Appium
|
|
168
167
|
# @driver.action.click(element).perform # The 'click' is a part of 'PointerActions'
|
169
168
|
#
|
170
169
|
def action(async = false)
|
171
|
-
|
172
|
-
|
173
|
-
|
170
|
+
action_builder = ::Selenium::WebDriver::ActionBuilder.new(
|
171
|
+
self,
|
172
|
+
::Selenium::WebDriver::Interactions.pointer(:touch, name: 'touch'),
|
173
|
+
::Selenium::WebDriver::Interactions.key('keyboard'),
|
174
|
+
async
|
175
|
+
)
|
176
|
+
# Used for default duration of each touch actions.
|
177
|
+
# Override from 250 milliseconds to 50 milliseconds in PointerActions included by ::Selenium::WebDriver::ActionBuilder
|
174
178
|
action_builder.default_move_duration = 0.05
|
175
179
|
action_builder
|
176
180
|
end
|
@@ -185,12 +189,6 @@ module Appium
|
|
185
189
|
::Selenium::WebDriver::Remote::Capabilities.json_create execute(:get_capabilities)
|
186
190
|
end
|
187
191
|
|
188
|
-
# Port from MJSONWP
|
189
|
-
def send_keys_to_active_element(key)
|
190
|
-
text = ::Selenium::WebDriver::Keys.encode(key).join
|
191
|
-
execute :send_keys_to_active_element, {}, { value: text.chars }
|
192
|
-
end
|
193
|
-
|
194
192
|
# For Appium
|
195
193
|
# override
|
196
194
|
def page_source
|
@@ -41,12 +41,12 @@ module Appium
|
|
41
41
|
|
42
42
|
include ::Appium::Core::Waitable
|
43
43
|
|
44
|
-
private
|
45
|
-
|
46
44
|
# Private API.
|
47
45
|
# Do not use this for general use. Used by flutter driver to get bridge for creating a new element
|
48
46
|
attr_reader :bridge
|
49
47
|
|
48
|
+
private
|
49
|
+
|
50
50
|
def initialize(bridge: nil, listener: nil, **opts)
|
51
51
|
# For ::Appium::Core::Waitable
|
52
52
|
@wait_timeout = opts.delete(:wait_timeout)
|
@@ -609,7 +609,9 @@ module Appium
|
|
609
609
|
@bridge.background_app(duration)
|
610
610
|
end
|
611
611
|
|
612
|
-
# Install the given app onto the device
|
612
|
+
# Install the given app onto the device.
|
613
|
+
# Each options can be snake-case or camel-case. Snake-cases will be converted to camel-case
|
614
|
+
# as options value.
|
613
615
|
#
|
614
616
|
# @param [String] path The absolute local path or remote http URL to an .ipa or .apk file,
|
615
617
|
# or a .zip containing one of these.
|
@@ -623,26 +625,26 @@ module Appium
|
|
623
625
|
# @param [Boolean] grant_permissions Only for Android. whether to automatically grant application permissions
|
624
626
|
# on Android 6+ after the installation completes. +false+ by default
|
625
627
|
#
|
628
|
+
# Other parameters such as https://github.com/appium/appium-xcuitest-driver#mobile-installapp also can be set.
|
629
|
+
# Then, arguments in snake case will be camel case as its request parameters.
|
630
|
+
#
|
626
631
|
# @example
|
627
632
|
#
|
628
633
|
# @driver.install_app("/path/to/test.apk")
|
629
634
|
# @driver.install_app("/path/to/test.apk", replace: true, timeout: 20000, allow_test_packages: true,
|
630
635
|
# use_sdcard: false, grant_permissions: false)
|
636
|
+
# @driver.install_app("/path/to/test.ipa", timeoutMs: 20000)
|
631
637
|
#
|
632
|
-
def install_app(path,
|
633
|
-
|
634
|
-
|
635
|
-
allow_test_packages: nil,
|
636
|
-
use_sdcard: nil,
|
637
|
-
grant_permissions: nil)
|
638
|
-
@bridge.install_app(path,
|
639
|
-
replace: replace,
|
640
|
-
timeout: timeout,
|
641
|
-
allow_test_packages: allow_test_packages,
|
642
|
-
use_sdcard: use_sdcard,
|
643
|
-
grant_permissions: grant_permissions)
|
638
|
+
def install_app(path, **options)
|
639
|
+
options = options.transform_keys { |key| key.to_s.gsub(/_./) { |v| v[1].upcase } } unless options.nil?
|
640
|
+
@bridge.install_app(path, options)
|
644
641
|
end
|
645
642
|
|
643
|
+
# def capitalize(s)
|
644
|
+
# chars =
|
645
|
+
# chars[1:].map(&:capitalize).join
|
646
|
+
# end
|
647
|
+
|
646
648
|
# @param [Strong] app_id BundleId for iOS or package name for Android
|
647
649
|
# @param [Boolean] keep_data Only for Android. Whether to keep application data and caches after it is uninstalled.
|
648
650
|
# +false+ by default
|
@@ -171,8 +171,6 @@ module Appium
|
|
171
171
|
ime_deactivate: [:post, 'session/:session_id/ime/deactivate'],
|
172
172
|
ime_activate_engine: [:post, 'session/:session_id/ime/activate'],
|
173
173
|
|
174
|
-
send_keys_to_active_element: [:post, 'session/:session_id/keys'],
|
175
|
-
|
176
174
|
### Logs
|
177
175
|
get_available_log_types: [:get, 'session/:session_id/log/types'],
|
178
176
|
get_log: [:post, 'session/:session_id/log'],
|
@@ -39,21 +39,9 @@ module Appium
|
|
39
39
|
raise NotImplementedError
|
40
40
|
end
|
41
41
|
|
42
|
-
def install_app(path,
|
43
|
-
replace: nil,
|
44
|
-
timeout: nil,
|
45
|
-
allow_test_packages: nil,
|
46
|
-
use_sdcard: nil,
|
47
|
-
grant_permissions: nil)
|
42
|
+
def install_app(path, options = {})
|
48
43
|
args = { appPath: path }
|
49
|
-
|
50
|
-
args[:options] = {} if options?(replace, timeout, allow_test_packages, use_sdcard, grant_permissions)
|
51
|
-
|
52
|
-
args[:options][:replace] = replace unless replace.nil?
|
53
|
-
args[:options][:timeout] = timeout unless timeout.nil?
|
54
|
-
args[:options][:allowTestPackages] = allow_test_packages unless allow_test_packages.nil?
|
55
|
-
args[:options][:useSdcard] = use_sdcard unless use_sdcard.nil?
|
56
|
-
args[:options][:grantPermissions] = grant_permissions unless grant_permissions.nil?
|
44
|
+
args[:options] = options unless options.empty?
|
57
45
|
|
58
46
|
execute :install_app, {}, args
|
59
47
|
end
|
@@ -14,7 +14,7 @@
|
|
14
14
|
|
15
15
|
module Appium
|
16
16
|
module Core
|
17
|
-
VERSION = '5.
|
18
|
-
DATE = '
|
17
|
+
VERSION = '5.1.1' unless defined? ::Appium::Core::VERSION
|
18
|
+
DATE = '2022-04-18' 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: 5.
|
4
|
+
version: 5.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kazuaki MATSUO
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-04-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: selenium-webdriver
|
@@ -114,14 +114,14 @@ dependencies:
|
|
114
114
|
requirements:
|
115
115
|
- - '='
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: 1.
|
117
|
+
version: 1.27.0
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - '='
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: 1.
|
124
|
+
version: 1.27.0
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: appium_thor
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -171,14 +171,6 @@ executables: []
|
|
171
171
|
extensions: []
|
172
172
|
extra_rdoc_files: []
|
173
173
|
files:
|
174
|
-
- ".github/ISSUE_TEMPLATE/issue-report.md"
|
175
|
-
- ".github/contributing.md"
|
176
|
-
- ".github/dependabot.yml"
|
177
|
-
- ".github/issue_template.md"
|
178
|
-
- ".github/workflows/codeql-analysis.yml"
|
179
|
-
- ".github/workflows/unittest.yml"
|
180
|
-
- ".gitignore"
|
181
|
-
- ".rubocop.yml"
|
182
174
|
- CHANGELOG.md
|
183
175
|
- Gemfile
|
184
176
|
- LICENSE.txt
|
@@ -186,16 +178,8 @@ files:
|
|
186
178
|
- Rakefile
|
187
179
|
- Thorfile
|
188
180
|
- appium_lib_core.gemspec
|
189
|
-
- azure-pipelines.yml
|
190
181
|
- bin/console
|
191
182
|
- bin/setup
|
192
|
-
- ci-jobs/functional/android_setup.yml
|
193
|
-
- ci-jobs/functional/ios_setup.yml
|
194
|
-
- ci-jobs/functional/publish_test_result.yml
|
195
|
-
- ci-jobs/functional/run_appium.yml
|
196
|
-
- ci-jobs/functional/start-emulator.sh
|
197
|
-
- ci-jobs/functional_test.yml
|
198
|
-
- docs/mobile_command.md
|
199
183
|
- lib/appium_lib_core.rb
|
200
184
|
- lib/appium_lib_core/android.rb
|
201
185
|
- lib/appium_lib_core/android/device.rb
|
@@ -278,8 +262,6 @@ files:
|
|
278
262
|
- lib/appium_lib_core/windows/bridge.rb
|
279
263
|
- lib/appium_lib_core/windows/device.rb
|
280
264
|
- lib/appium_lib_core/windows/device/screen.rb
|
281
|
-
- release_notes.md
|
282
|
-
- script/commands.rb
|
283
265
|
homepage: https://github.com/appium/ruby_lib_core/
|
284
266
|
licenses:
|
285
267
|
- Apache-2.0
|
@@ -299,7 +281,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
299
281
|
- !ruby/object:Gem::Version
|
300
282
|
version: '0'
|
301
283
|
requirements: []
|
302
|
-
rubygems_version: 3.
|
284
|
+
rubygems_version: 3.3.3
|
303
285
|
signing_key:
|
304
286
|
specification_version: 4
|
305
287
|
summary: Minimal Ruby library for Appium.
|
@@ -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
|
data/.github/contributing.md
DELETED
@@ -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`
|
data/.github/dependabot.yml
DELETED
data/.github/issue_template.md
DELETED
@@ -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,70 +0,0 @@
|
|
1
|
-
# For most projects, this workflow file will not need changing; you simply need
|
2
|
-
# to commit it to your repository.
|
3
|
-
#
|
4
|
-
# You may wish to alter this file to override the set of languages analyzed,
|
5
|
-
# or to provide custom queries or build logic.
|
6
|
-
#
|
7
|
-
# ******** NOTE ********
|
8
|
-
# We have attempted to detect the languages in your repository. Please check
|
9
|
-
# the `language` matrix defined below to confirm you have the correct set of
|
10
|
-
# supported CodeQL languages.
|
11
|
-
#
|
12
|
-
name: "CodeQL"
|
13
|
-
|
14
|
-
on:
|
15
|
-
push:
|
16
|
-
branches: [ master ]
|
17
|
-
pull_request:
|
18
|
-
# The branches below must be a subset of the branches above
|
19
|
-
branches: [ master ]
|
20
|
-
schedule:
|
21
|
-
- cron: '39 12 * * 0'
|
22
|
-
|
23
|
-
jobs:
|
24
|
-
analyze:
|
25
|
-
name: Analyze
|
26
|
-
runs-on: ubuntu-latest
|
27
|
-
permissions:
|
28
|
-
actions: read
|
29
|
-
contents: read
|
30
|
-
security-events: write
|
31
|
-
|
32
|
-
strategy:
|
33
|
-
fail-fast: false
|
34
|
-
matrix:
|
35
|
-
language: [ 'ruby' ]
|
36
|
-
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
|
37
|
-
# Learn more about CodeQL language support at https://git.io/codeql-language-support
|
38
|
-
|
39
|
-
steps:
|
40
|
-
- name: Checkout repository
|
41
|
-
uses: actions/checkout@v2
|
42
|
-
|
43
|
-
# Initializes the CodeQL tools for scanning.
|
44
|
-
- name: Initialize CodeQL
|
45
|
-
uses: github/codeql-action/init@v1
|
46
|
-
with:
|
47
|
-
languages: ${{ matrix.language }}
|
48
|
-
# If you wish to specify custom queries, you can do so here or in a config file.
|
49
|
-
# By default, queries listed here will override any specified in a config file.
|
50
|
-
# Prefix the list here with "+" to use these queries and those in the config file.
|
51
|
-
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
52
|
-
|
53
|
-
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
54
|
-
# If this step fails, then you should remove it and run the build manually (see below)
|
55
|
-
- name: Autobuild
|
56
|
-
uses: github/codeql-action/autobuild@v1
|
57
|
-
|
58
|
-
# ℹ️ Command-line programs to run using the OS shell.
|
59
|
-
# 📚 https://git.io/JvXDl
|
60
|
-
|
61
|
-
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
62
|
-
# and modify them (or add more) to build your code if your project
|
63
|
-
# uses a compiled language
|
64
|
-
|
65
|
-
#- run: |
|
66
|
-
# make bootstrap
|
67
|
-
# make release
|
68
|
-
|
69
|
-
- name: Perform CodeQL Analysis
|
70
|
-
uses: github/codeql-action/analyze@v1
|
@@ -1,67 +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.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 rake test:unit
|
33
|
-
AUTOMATION_NAME_DROID=espresso bundle exec rake test:unit:android
|
34
|
-
AUTOMATION_NAME_DROID=appium AUTOMATION_NAME_IOS=appium bundle exec rake test:unit
|
35
|
-
|
36
|
-
test-win:
|
37
|
-
strategy:
|
38
|
-
fail-fast: false
|
39
|
-
matrix:
|
40
|
-
ruby: [2.6, 2.7, 3.0]
|
41
|
-
|
42
|
-
runs-on: windows-latest
|
43
|
-
|
44
|
-
env:
|
45
|
-
UNIT_TEST: true
|
46
|
-
|
47
|
-
steps:
|
48
|
-
- uses: actions/checkout@v2
|
49
|
-
- name: Set up Ruby
|
50
|
-
uses: ruby/setup-ruby@v1
|
51
|
-
with:
|
52
|
-
ruby-version: ${{ matrix.ruby }}
|
53
|
-
- name: Install dependencies
|
54
|
-
run: |
|
55
|
-
gem install ffi
|
56
|
-
bundle install
|
57
|
-
gem uninstall --force eventmachine && gem install eventmachine --platform ruby
|
58
|
-
- name: Run tests
|
59
|
-
run: |
|
60
|
-
rake test:unit
|
61
|
-
|
62
|
-
setx AUTOMATION_NAME_DROID espresso
|
63
|
-
rake test:unit:android
|
64
|
-
|
65
|
-
setx AUTOMATION_NAME_DROID appium
|
66
|
-
setx AUTOMATION_NAME_IOS appium
|
67
|
-
rake test:unit
|