fastlane-plugin-saucectl 0.1.2.pre → 0.1.3.pre

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: 2bb0bc0c918e497c8c4ec0d560635d0a059bed8d5456c6df34f33a5aa626d9ba
4
- data.tar.gz: 9f4626de2b041b65e8fd0882726f29ef1053ed8054499a704b13ca96773300fc
3
+ metadata.gz: cfe7383a6621d0f63d8b47202f757eff6873b3eb2fdd9b2482de329fe4aa81f1
4
+ data.tar.gz: faa221723b72ad9b14583c0bbcef9b0a547cdf8158f9947b8be4c420b96a249f
5
5
  SHA512:
6
- metadata.gz: 14a4fdcd1d5ce125a1d08af53d51f5c82fcc44cdd4dbab14e315cd6b417daedd41d7c7be6c3a8d420211b6697bf340e40fb1749331f6aff34db9c930f4365967
7
- data.tar.gz: c07918fee9b5067146ea9b840d11c495218bb21229cf22221ed217a25574beacfba97902fffb4fc24484d13d1a89a267dcc4d1524d2946e1db7a026166e96380
6
+ metadata.gz: 385e2b1b519e2c90e2b9fd70dc25912040e5ac9c913dc0992111d17266beab22647dc6808532dc191b85f10ccdb3f877b400880a62a05d08a70ff68c77816257
7
+ data.tar.gz: 182fb2ec4023e3d6a2dac3623a0b34ebf19cec8ba9e40d55867ceb29063439fcbb215033dcd1a04f6dafe16fe9b236a31943672e340b06151bd8c558d89acb34
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-saucectl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2.pre
4
+ version: 0.1.3.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ian Hamilton
@@ -169,26 +169,7 @@ email: ian.ross.hamilton@gmail.com
169
169
  executables: []
170
170
  extensions: []
171
171
  extra_rdoc_files: []
172
- files:
173
- - lib/fastlane/plugin/saucectl.rb
174
- - lib/fastlane/plugin/saucectl/actions/delete_from_storage_action.rb
175
- - lib/fastlane/plugin/saucectl/actions/disabled_tests_action.rb
176
- - lib/fastlane/plugin/saucectl/actions/install_saucectl_action.rb
177
- - lib/fastlane/plugin/saucectl/actions/sauce_apps_action.rb
178
- - lib/fastlane/plugin/saucectl/actions/sauce_config_action.rb
179
- - lib/fastlane/plugin/saucectl/actions/sauce_devices_action.rb
180
- - lib/fastlane/plugin/saucectl/actions/sauce_runner_action.rb
181
- - lib/fastlane/plugin/saucectl/actions/sauce_upload_action.rb
182
- - lib/fastlane/plugin/saucectl/helper/api.rb
183
- - lib/fastlane/plugin/saucectl/helper/config.rb
184
- - lib/fastlane/plugin/saucectl/helper/espresso.rb
185
- - lib/fastlane/plugin/saucectl/helper/file_utils.rb
186
- - lib/fastlane/plugin/saucectl/helper/installer.rb
187
- - lib/fastlane/plugin/saucectl/helper/runner.rb
188
- - lib/fastlane/plugin/saucectl/helper/storage.rb
189
- - lib/fastlane/plugin/saucectl/helper/suites.rb
190
- - lib/fastlane/plugin/saucectl/helper/xctest.rb
191
- - lib/fastlane/plugin/saucectl/version.rb
172
+ files: []
192
173
  homepage: https://github.com/ianrhamilton/fastlane-plugin-saucectl
193
174
  licenses:
194
175
  - MIT
@@ -1,96 +0,0 @@
1
- require 'fastlane/action'
2
- require 'json'
3
- require 'yaml'
4
- require_relative '../helper/api'
5
- require_relative '../helper/storage'
6
-
7
- module Fastlane
8
- module Actions
9
- class DeleteFromStorageAction < Action
10
- @messages = YAML.load_file("#{__dir__}/../strings/messages.yml")
11
-
12
- def self.run(params)
13
- if params[:group_id].nil?
14
- Fastlane::Saucectl::Storage.new(params).delete_app_with_file_id
15
- else
16
- Fastlane::Saucectl::Storage.new(params).delete_all_apps_for_group_id
17
- end
18
- end
19
-
20
- def self.description
21
- "Delete test artifacts from sauce labs storage"
22
- end
23
-
24
- def self.details
25
- "Delete test artifacts from sauce labs storage by storage id or group id"
26
- end
27
-
28
- def self.available_options
29
- [
30
- FastlaneCore::ConfigItem.new(key: :region,
31
- description: "Data Center region (us or eu), set using: region: 'eu'",
32
- optional: false,
33
- is_string: true,
34
- verify_block: proc do |value|
35
- UI.user_error!(@messages['region_error'].gsub!('$region', value)) if value.empty? || !@messages['supported_regions'].include?(value)
36
- end),
37
- FastlaneCore::ConfigItem.new(key: :sauce_username,
38
- env_name: "SAUCE_USERNAME",
39
- description: "Your sauce labs username in order to authenticate delete file from app storage",
40
- default_value: Actions.lane_context[SharedValues::SAUCE_USERNAME],
41
- optional: false,
42
- is_string: true,
43
- verify_block: proc do |value|
44
- UI.user_error!(@messages['sauce_username_error']) if value.empty?
45
- end),
46
- FastlaneCore::ConfigItem.new(key: :sauce_access_key,
47
- env_name: "SAUCE_ACCESS_KEY",
48
- description: "Your sauce labs access key in order to authenticate delete file from app storage",
49
- default_value: Actions.lane_context[SharedValues::SAUCE_ACCESS_KEY],
50
- optional: false,
51
- is_string: true,
52
- verify_block: proc do |value|
53
- UI.user_error!(@messages['sauce_api_key_error']) if value.empty?
54
- end),
55
- FastlaneCore::ConfigItem.new(key: :app_id,
56
- description: "The application id from sauce labs storage",
57
- optional: true,
58
- is_string: true),
59
- FastlaneCore::ConfigItem.new(key: :group_id,
60
- description: "The group id for sauce labs storage",
61
- optional: true,
62
- is_string: true)
63
- ]
64
- end
65
-
66
- def self.authors
67
- ["Ian Hamilton"]
68
- end
69
-
70
- def self.category
71
- :testing
72
- end
73
-
74
- def self.is_supported?(platform)
75
- [:ios, :android].include?(platform)
76
- end
77
-
78
- def self.example_code
79
- [
80
- "delete_from_storage(
81
- region: 'eu',
82
- sauce_username: 'sauce username',
83
- sauce_access_key: 'sauce api name',
84
- app_id: '1234-1234-1234-1234'
85
- )",
86
- "delete_from_storage(
87
- region: 'eu',
88
- sauce_username: 'sauce username',
89
- sauce_access_key: 'sauce api name',
90
- group_id: '123456789'
91
- )"
92
- ]
93
- end
94
- end
95
- end
96
- end
@@ -1,90 +0,0 @@
1
- require 'fastlane/action'
2
- require 'json'
3
- require 'yaml'
4
- require_relative '../helper/espresso'
5
- require_relative '../helper/xctest'
6
-
7
- module Fastlane
8
- module Actions
9
- class DisabledTestsAction < Action
10
- @messages = YAML.load_file("#{__dir__}/../strings/messages.yml")
11
-
12
- def self.run(params)
13
- verify_config(params)
14
- if params[:platform].eql?('android')
15
- params[:path_to_tests] ? params[:path_to_tests] : params[:path_to_tests] = "app/src/androidTest"
16
- Fastlane::Saucectl::Espresso.new(params).fetch_disabled_tests(params[:path_to_tests])
17
- else
18
- Fastlane::Saucectl::XCTest.new(params).fetch_disabled_tests
19
- end
20
- end
21
-
22
- def self.verify_config(params)
23
- if params[:platform].eql?('ios') && params[:test_plan].nil?
24
- UI.user_error!('Cannot get skipped tests for an ios project without a known test_plan')
25
- end
26
- if params[:platform].eql?('android') && !params[:test_plan].nil?
27
- UI.user_error!('test_plan option is reserved for ios projects only')
28
- end
29
- end
30
-
31
- def self.description
32
- "Fetches any disabled ui test cases (for android searches for @Ignore tests, and for ios skipped tests within an xcode test plan). Will be used in future for generating pretty HTML reports"
33
- end
34
-
35
- def self.details
36
- "Fetches any disabled ui test cases (for android searches for @Ignore tests, and for ios skipped tests within an xcode test plan). Will be used in future for generating pretty HTML reports"
37
- end
38
-
39
- def self.available_options
40
- [
41
- FastlaneCore::ConfigItem.new(key: :platform,
42
- description: "application under test platform (ios or android)",
43
- optional: false,
44
- is_string: true,
45
- verify_block: proc do |value|
46
- UI.user_error!(@messages['platform_error']) if value.to_s.empty?
47
- end),
48
- FastlaneCore::ConfigItem.new(key: :path_to_tests,
49
- description: "Android only, path to espresso tests. Default to app/src/androidTest",
50
- optional: true,
51
- is_string: true),
52
- FastlaneCore::ConfigItem.new(key: :test_plan,
53
- description: "Name of xcode test plan",
54
- optional: true,
55
- is_string: true),
56
- FastlaneCore::ConfigItem.new(key: :test_target,
57
- description: "Name of xcode test target",
58
- optional: true,
59
- is_string: true)
60
- ]
61
- end
62
-
63
- def self.authors
64
- ["Ian Hamilton"]
65
- end
66
-
67
- def self.category
68
- :testing
69
- end
70
-
71
- def self.is_supported?(platform)
72
- [:ios, :android].include?(platform)
73
- end
74
-
75
- def self.example_code
76
- [
77
- "disabled_tests({ platform: 'android',
78
- path_to_tests: 'my-demo-app-android/app/src/androidTest'
79
- })",
80
- "disabled_tests({ platform: 'ios',
81
- test_plan: 'UITests'
82
- })",
83
- "disabled_tests({ platform: 'ios',
84
- test_plan: 'UITests'
85
- })"
86
- ]
87
- end
88
- end
89
- end
90
- end
@@ -1,34 +0,0 @@
1
- require 'fastlane/action'
2
- require_relative '../helper/installer'
3
-
4
- module Fastlane
5
- module Actions
6
- class InstallSaucectlAction < Action
7
- def self.run(param = '')
8
- UI.message("Installing saucectl 🤖 🚀")
9
- installer = Saucectl::Installer.new
10
- installer.install
11
- end
12
-
13
- def self.description
14
- "Installs the Sauce Labs saucectl cli binary"
15
- end
16
-
17
- def self.details
18
- "Installs the Sauce Labs saucectl cli binary"
19
- end
20
-
21
- def self.authors
22
- ["Ian Hamilton"]
23
- end
24
-
25
- def self.category
26
- :testing
27
- end
28
-
29
- def self.is_supported?(platform)
30
- [:ios, :android].include?(platform)
31
- end
32
- end
33
- end
34
- end
@@ -1,96 +0,0 @@
1
- require 'fastlane/action'
2
- require 'json'
3
- require 'yaml'
4
- require_relative '../helper/api'
5
-
6
- module Fastlane
7
- module Actions
8
- class SauceAppsAction < Action
9
- @messages = YAML.load_file("#{__dir__}/../strings/messages.yml")
10
- def self.run(params)
11
- Fastlane::Saucectl::Api.new(params).retrieve_all_apps
12
- end
13
-
14
- def self.description
15
- "Returns the set of files by specific app id that have been uploaded to Sauce Storage by the requester"
16
- end
17
-
18
- def self.details
19
- "Returns the set of files by specific app id that have been uploaded to Sauce Storage by the requester"
20
- end
21
-
22
- def self.available_options
23
- [
24
- FastlaneCore::ConfigItem.new(key: :platform,
25
- description: "application under test platform (ios or android)",
26
- optional: false,
27
- type: String,
28
- verify_block: proc do |value|
29
- UI.user_error!(@messages['platform_error']) if value.to_s.empty?
30
- end),
31
- FastlaneCore::ConfigItem.new(key: :query,
32
- description: "Any search term (such as build number or file name) by which you want to filter results",
33
- optional: false,
34
- type: String,
35
- verify_block: proc do |value|
36
- UI.user_error!(@messages['missing_file_name']) if value.to_s.empty?
37
- end),
38
- FastlaneCore::ConfigItem.new(key: :region,
39
- description: "Data Center region (us or eu), set using: region: 'eu'",
40
- optional: false,
41
- type: String,
42
- verify_block: proc do |value|
43
- UI.user_error!(@messages['region_error'].gsub!('$region', value)) unless @messages['supported_regions'].include?(value)
44
- end),
45
- FastlaneCore::ConfigItem.new(key: :sauce_username,
46
- env_name: "SAUCE_USERNAME",
47
- description: "Your sauce labs username in order to authenticate upload requests",
48
- default_value: Actions.lane_context[SharedValues::SAUCE_USERNAME],
49
- optional: false,
50
- type: String,
51
- verify_block: proc do |value|
52
- UI.user_error!(@messages['sauce_username_error']) unless value && !value.empty?
53
- end),
54
- FastlaneCore::ConfigItem.new(key: :sauce_access_key,
55
- env_name: "SAUCE_ACCESS_KEY",
56
- description: "Your sauce labs access key in order to authenticate upload requests",
57
- default_value: Actions.lane_context[SharedValues::SAUCE_ACCESS_KEY],
58
- optional: false,
59
- type: String,
60
- verify_block: proc do |value|
61
- UI.user_error!(@messages['sauce_api_key_error']) unless value && !value.empty?
62
- end)
63
- ]
64
- end
65
-
66
- def self.authors
67
- ["Ian Hamilton"]
68
- end
69
-
70
- def self.category
71
- :testing
72
- end
73
-
74
- def self.is_supported?(platform)
75
- [:ios, :android].include?(platform)
76
- end
77
-
78
- def self.example_code
79
- [
80
- "sauce_apps({platform: 'android',
81
- query: 'test.apk',
82
- region: 'eu',
83
- sauce_username: 'foo',
84
- sauce_access_key: 'bar123',
85
- })",
86
- "sauce_apps({platform: 'ios',
87
- query: 'test.app',
88
- region: 'eu',
89
- sauce_username: 'foo',
90
- sauce_access_key: 'bar123',
91
- })"
92
- ]
93
- end
94
- end
95
- end
96
- end