google-api-client 0.14.1 → 0.14.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 (88) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +33 -0
  3. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  4. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +0 -18
  5. data/generated/google/apis/adexperiencereport_v1.rb +1 -1
  6. data/generated/google/apis/adexperiencereport_v1/classes.rb +0 -6
  7. data/generated/google/apis/adexperiencereport_v1/representations.rb +0 -1
  8. data/generated/google/apis/admin_directory_v1.rb +1 -1
  9. data/generated/google/apis/admin_directory_v1/classes.rb +46 -0
  10. data/generated/google/apis/admin_directory_v1/representations.rb +19 -2
  11. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  12. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +14 -12
  13. data/generated/google/apis/androiddeviceprovisioning_v1/service.rb +7 -5
  14. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  15. data/generated/google/apis/androidmanagement_v1/classes.rb +8 -9
  16. data/generated/google/apis/androidpublisher_v2/service.rb +1 -1
  17. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  18. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +4 -2
  19. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  20. data/generated/google/apis/cloudbuild_v1/classes.rb +3 -0
  21. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  22. data/generated/google/apis/container_v1.rb +1 -1
  23. data/generated/google/apis/container_v1/classes.rb +93 -0
  24. data/generated/google/apis/container_v1/representations.rb +58 -0
  25. data/generated/google/apis/container_v1/service.rb +42 -0
  26. data/generated/google/apis/container_v1beta1.rb +1 -1
  27. data/generated/google/apis/container_v1beta1/classes.rb +119 -0
  28. data/generated/google/apis/container_v1beta1/representations.rb +62 -0
  29. data/generated/google/apis/container_v1beta1/service.rb +77 -0
  30. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  31. data/generated/google/apis/dataproc_v1beta2/classes.rb +184 -0
  32. data/generated/google/apis/dataproc_v1beta2/representations.rb +70 -0
  33. data/generated/google/apis/dataproc_v1beta2/service.rb +105 -0
  34. data/generated/google/apis/deploymentmanager_alpha.rb +1 -1
  35. data/generated/google/apis/deploymentmanager_alpha/classes.rb +63 -64
  36. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  37. data/generated/google/apis/deploymentmanager_v2/classes.rb +51 -50
  38. data/generated/google/apis/deploymentmanager_v2/service.rb +1 -1
  39. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  40. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +62 -62
  41. data/generated/google/apis/dlp_v2beta1.rb +1 -1
  42. data/generated/google/apis/dlp_v2beta1/classes.rb +23 -17
  43. data/generated/google/apis/dlp_v2beta1/service.rb +10 -10
  44. data/generated/google/apis/dns_v1/service.rb +1 -1
  45. data/generated/google/apis/genomics_v1.rb +1 -1
  46. data/generated/google/apis/genomics_v1/classes.rb +1 -1
  47. data/generated/google/apis/genomics_v1alpha2.rb +1 -1
  48. data/generated/google/apis/genomics_v1alpha2/classes.rb +1 -1
  49. data/generated/google/apis/gmail_v1.rb +1 -1
  50. data/generated/google/apis/oauth2_v2/service.rb +1 -1
  51. data/generated/google/apis/oslogin_v1alpha.rb +7 -1
  52. data/generated/google/apis/oslogin_v1alpha/classes.rb +2 -1
  53. data/generated/google/apis/oslogin_v1alpha/representations.rb +2 -2
  54. data/generated/google/apis/oslogin_v1beta.rb +43 -0
  55. data/generated/google/apis/oslogin_v1beta/classes.rb +202 -0
  56. data/generated/google/apis/oslogin_v1beta/representations.rb +105 -0
  57. data/generated/google/apis/oslogin_v1beta/service.rb +228 -0
  58. data/generated/google/apis/sheets_v4.rb +1 -1
  59. data/generated/google/apis/sheets_v4/classes.rb +906 -0
  60. data/generated/google/apis/sheets_v4/representations.rb +389 -0
  61. data/generated/google/apis/sheets_v4/service.rb +230 -0
  62. data/generated/google/apis/spanner_v1.rb +1 -1
  63. data/generated/google/apis/spanner_v1/classes.rb +73 -2
  64. data/generated/google/apis/spanner_v1/representations.rb +32 -0
  65. data/generated/google/apis/spanner_v1/service.rb +52 -1
  66. data/generated/google/apis/sqladmin_v1beta4/service.rb +1 -1
  67. data/generated/google/apis/storage_v1.rb +1 -1
  68. data/generated/google/apis/storage_v1/service.rb +15 -13
  69. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  70. data/generated/google/apis/storagetransfer_v1/classes.rb +0 -1
  71. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  72. data/generated/google/apis/streetviewpublish_v1/classes.rb +1 -1
  73. data/generated/google/apis/tagmanager_v2.rb +1 -1
  74. data/generated/google/apis/tagmanager_v2/classes.rb +181 -0
  75. data/generated/google/apis/tagmanager_v2/representations.rb +75 -0
  76. data/generated/google/apis/testing_v1.rb +38 -0
  77. data/generated/google/apis/testing_v1/classes.rb +1616 -0
  78. data/generated/google/apis/testing_v1/representations.rb +688 -0
  79. data/generated/google/apis/testing_v1/service.rb +221 -0
  80. data/generated/google/apis/videointelligence_v1beta1.rb +3 -3
  81. data/generated/google/apis/videointelligence_v1beta1/service.rb +2 -2
  82. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  83. data/generated/google/apis/youtube_v3.rb +1 -1
  84. data/generated/google/apis/youtube_v3/classes.rb +9 -0
  85. data/generated/google/apis/youtube_v3/representations.rb +1 -0
  86. data/generated/google/apis/youtube_v3/service.rb +1 -1
  87. data/lib/google/apis/version.rb +1 -1
  88. metadata +11 -3
@@ -0,0 +1,38 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/testing_v1/service.rb'
16
+ require 'google/apis/testing_v1/classes.rb'
17
+ require 'google/apis/testing_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Google Cloud Testing API
22
+ #
23
+ # Allows developers to run automated tests for their mobile applications on
24
+ # Google infrastructure.
25
+ #
26
+ # @see https://developers.google.com/cloud-test-lab/
27
+ module TestingV1
28
+ VERSION = 'V1'
29
+ REVISION = '20170905'
30
+
31
+ # View and manage your data across Google Cloud Platform services
32
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
33
+
34
+ # View your data across Google Cloud Platform services
35
+ AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only'
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,1616 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module TestingV1
24
+
25
+ # Identifies an account and how to log into it
26
+ class Account
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Enables automatic Google account login.
30
+ # If set, the service will automatically generate a Google test account and add
31
+ # it to the device, before executing the test. Note that test accounts might be
32
+ # reused.
33
+ # Many applications show their full set of functionalities when an account is
34
+ # present on the device. Logging into the device with these generated accounts
35
+ # allows testing more functionalities.
36
+ # Corresponds to the JSON property `googleAuto`
37
+ # @return [Google::Apis::TestingV1::GoogleAuto]
38
+ attr_accessor :google_auto
39
+
40
+ def initialize(**args)
41
+ update!(**args)
42
+ end
43
+
44
+ # Update properties of this object
45
+ def update!(**args)
46
+ @google_auto = args[:google_auto] if args.key?(:google_auto)
47
+ end
48
+ end
49
+
50
+ # A single Android device.
51
+ class AndroidDevice
52
+ include Google::Apis::Core::Hashable
53
+
54
+ # The id of the Android device to be used.
55
+ # Use the EnvironmentDiscoveryService to get supported options.
56
+ # Required
57
+ # Corresponds to the JSON property `androidModelId`
58
+ # @return [String]
59
+ attr_accessor :android_model_id
60
+
61
+ # The id of the Android OS version to be used.
62
+ # Use the EnvironmentDiscoveryService to get supported options.
63
+ # Required
64
+ # Corresponds to the JSON property `androidVersionId`
65
+ # @return [String]
66
+ attr_accessor :android_version_id
67
+
68
+ # The locale the test device used for testing.
69
+ # Use the EnvironmentDiscoveryService to get supported options.
70
+ # Required
71
+ # Corresponds to the JSON property `locale`
72
+ # @return [String]
73
+ attr_accessor :locale
74
+
75
+ # How the device is oriented during the test.
76
+ # Use the EnvironmentDiscoveryService to get supported options.
77
+ # Required
78
+ # Corresponds to the JSON property `orientation`
79
+ # @return [String]
80
+ attr_accessor :orientation
81
+
82
+ def initialize(**args)
83
+ update!(**args)
84
+ end
85
+
86
+ # Update properties of this object
87
+ def update!(**args)
88
+ @android_model_id = args[:android_model_id] if args.key?(:android_model_id)
89
+ @android_version_id = args[:android_version_id] if args.key?(:android_version_id)
90
+ @locale = args[:locale] if args.key?(:locale)
91
+ @orientation = args[:orientation] if args.key?(:orientation)
92
+ end
93
+ end
94
+
95
+ # The currently supported Android devices.
96
+ class AndroidDeviceCatalog
97
+ include Google::Apis::Core::Hashable
98
+
99
+ # The set of supported Android device models.
100
+ # @OutputOnly
101
+ # Corresponds to the JSON property `models`
102
+ # @return [Array<Google::Apis::TestingV1::AndroidModel>]
103
+ attr_accessor :models
104
+
105
+ # Configuration that can be selected at the time a test is run.
106
+ # Corresponds to the JSON property `runtimeConfiguration`
107
+ # @return [Google::Apis::TestingV1::AndroidRuntimeConfiguration]
108
+ attr_accessor :runtime_configuration
109
+
110
+ # The set of supported Android OS versions.
111
+ # @OutputOnly
112
+ # Corresponds to the JSON property `versions`
113
+ # @return [Array<Google::Apis::TestingV1::AndroidVersion>]
114
+ attr_accessor :versions
115
+
116
+ def initialize(**args)
117
+ update!(**args)
118
+ end
119
+
120
+ # Update properties of this object
121
+ def update!(**args)
122
+ @models = args[:models] if args.key?(:models)
123
+ @runtime_configuration = args[:runtime_configuration] if args.key?(:runtime_configuration)
124
+ @versions = args[:versions] if args.key?(:versions)
125
+ end
126
+ end
127
+
128
+ # A list of Android device configurations in which the test is to be executed.
129
+ class AndroidDeviceList
130
+ include Google::Apis::Core::Hashable
131
+
132
+ # A list of Android devices
133
+ # Required
134
+ # Corresponds to the JSON property `androidDevices`
135
+ # @return [Array<Google::Apis::TestingV1::AndroidDevice>]
136
+ attr_accessor :android_devices
137
+
138
+ def initialize(**args)
139
+ update!(**args)
140
+ end
141
+
142
+ # Update properties of this object
143
+ def update!(**args)
144
+ @android_devices = args[:android_devices] if args.key?(:android_devices)
145
+ end
146
+ end
147
+
148
+ # A test of an Android application that can control an Android component
149
+ # independently of its normal lifecycle.
150
+ # Android instrumentation tests run an application APK and test APK inside the
151
+ # same process on a virtual or physical AndroidDevice. They also specify
152
+ # a test runner class, such as com.google.GoogleTestRunner, which can vary
153
+ # on the specific instrumentation framework chosen.
154
+ # See <http://developer.android.com/tools/testing/testing_android.html> for
155
+ # more information on types of Android tests.
156
+ class AndroidInstrumentationTest
157
+ include Google::Apis::Core::Hashable
158
+
159
+ # A reference to a file, used for user inputs.
160
+ # Corresponds to the JSON property `appApk`
161
+ # @return [Google::Apis::TestingV1::FileReference]
162
+ attr_accessor :app_apk
163
+
164
+ # The java package for the application under test.
165
+ # Optional, default is determined by examining the application's manifest.
166
+ # Corresponds to the JSON property `appPackageId`
167
+ # @return [String]
168
+ attr_accessor :app_package_id
169
+
170
+ # The option of whether running each test within its own invocation of
171
+ # instrumentation with Android Test Orchestrator or not.
172
+ # ** Orchestrator is only compatible with AndroidJUnitRunner version 1.0 or
173
+ # higher! **
174
+ # Orchestrator offers the following benefits:
175
+ # - No shared state
176
+ # - Crashes are isolated
177
+ # - Logs are scoped per test
178
+ # See
179
+ # <https://developer.android.com/training/testing/junit-runner.html#using-
180
+ # android-test-orchestrator>
181
+ # for more information about Android Test Orchestrator.
182
+ # Optional, if empty, test will be run without orchestrator.
183
+ # Corresponds to the JSON property `orchestratorOption`
184
+ # @return [String]
185
+ attr_accessor :orchestrator_option
186
+
187
+ # A reference to a file, used for user inputs.
188
+ # Corresponds to the JSON property `testApk`
189
+ # @return [Google::Apis::TestingV1::FileReference]
190
+ attr_accessor :test_apk
191
+
192
+ # The java package for the test to be executed.
193
+ # Optional, default is determined by examining the application's manifest.
194
+ # Corresponds to the JSON property `testPackageId`
195
+ # @return [String]
196
+ attr_accessor :test_package_id
197
+
198
+ # The InstrumentationTestRunner class.
199
+ # Optional, default is determined by examining the application's manifest.
200
+ # Corresponds to the JSON property `testRunnerClass`
201
+ # @return [String]
202
+ attr_accessor :test_runner_class
203
+
204
+ # Each target must be fully qualified with the package name or class name,
205
+ # in one of these formats:
206
+ # - "package package_name"
207
+ # - "class package_name.class_name"
208
+ # - "class package_name.class_name#method_name"
209
+ # Optional, if empty, all targets in the module will be run.
210
+ # Corresponds to the JSON property `testTargets`
211
+ # @return [Array<String>]
212
+ attr_accessor :test_targets
213
+
214
+ def initialize(**args)
215
+ update!(**args)
216
+ end
217
+
218
+ # Update properties of this object
219
+ def update!(**args)
220
+ @app_apk = args[:app_apk] if args.key?(:app_apk)
221
+ @app_package_id = args[:app_package_id] if args.key?(:app_package_id)
222
+ @orchestrator_option = args[:orchestrator_option] if args.key?(:orchestrator_option)
223
+ @test_apk = args[:test_apk] if args.key?(:test_apk)
224
+ @test_package_id = args[:test_package_id] if args.key?(:test_package_id)
225
+ @test_runner_class = args[:test_runner_class] if args.key?(:test_runner_class)
226
+ @test_targets = args[:test_targets] if args.key?(:test_targets)
227
+ end
228
+ end
229
+
230
+ # A set of Android device configuration permutations is defined by the
231
+ # the cross-product of the given axes. Internally, the given AndroidMatrix
232
+ # will be expanded into a set of AndroidDevices.
233
+ # Only supported permutations will be instantiated. Invalid permutations
234
+ # (e.g., incompatible models/versions) are ignored.
235
+ class AndroidMatrix
236
+ include Google::Apis::Core::Hashable
237
+
238
+ # The ids of the set of Android device to be used.
239
+ # Use the EnvironmentDiscoveryService to get supported options.
240
+ # Required
241
+ # Corresponds to the JSON property `androidModelIds`
242
+ # @return [Array<String>]
243
+ attr_accessor :android_model_ids
244
+
245
+ # The ids of the set of Android OS version to be used.
246
+ # Use the EnvironmentDiscoveryService to get supported options.
247
+ # Required
248
+ # Corresponds to the JSON property `androidVersionIds`
249
+ # @return [Array<String>]
250
+ attr_accessor :android_version_ids
251
+
252
+ # The set of locales the test device will enable for testing.
253
+ # Use the EnvironmentDiscoveryService to get supported options.
254
+ # Required
255
+ # Corresponds to the JSON property `locales`
256
+ # @return [Array<String>]
257
+ attr_accessor :locales
258
+
259
+ # The set of orientations to test with.
260
+ # Use the EnvironmentDiscoveryService to get supported options.
261
+ # Required
262
+ # Corresponds to the JSON property `orientations`
263
+ # @return [Array<String>]
264
+ attr_accessor :orientations
265
+
266
+ def initialize(**args)
267
+ update!(**args)
268
+ end
269
+
270
+ # Update properties of this object
271
+ def update!(**args)
272
+ @android_model_ids = args[:android_model_ids] if args.key?(:android_model_ids)
273
+ @android_version_ids = args[:android_version_ids] if args.key?(:android_version_ids)
274
+ @locales = args[:locales] if args.key?(:locales)
275
+ @orientations = args[:orientations] if args.key?(:orientations)
276
+ end
277
+ end
278
+
279
+ # A description of an Android device tests may be run on.
280
+ class AndroidModel
281
+ include Google::Apis::Core::Hashable
282
+
283
+ # The company that this device is branded with.
284
+ # Example: "Google", "Samsung"
285
+ # @OutputOnly
286
+ # Corresponds to the JSON property `brand`
287
+ # @return [String]
288
+ attr_accessor :brand
289
+
290
+ # The name of the industrial design.
291
+ # This corresponds to android.os.Build.DEVICE
292
+ # @OutputOnly
293
+ # Corresponds to the JSON property `codename`
294
+ # @return [String]
295
+ attr_accessor :codename
296
+
297
+ # Whether this device is virtual or physical.
298
+ # @OutputOnly
299
+ # Corresponds to the JSON property `form`
300
+ # @return [String]
301
+ attr_accessor :form
302
+
303
+ # The unique opaque id for this model.
304
+ # Use this for invoking the TestExecutionService.
305
+ # @OutputOnly
306
+ # Corresponds to the JSON property `id`
307
+ # @return [String]
308
+ attr_accessor :id
309
+
310
+ # The manufacturer of this device.
311
+ # @OutputOnly
312
+ # Corresponds to the JSON property `manufacturer`
313
+ # @return [String]
314
+ attr_accessor :manufacturer
315
+
316
+ # The human-readable marketing name for this device model.
317
+ # Examples: "Nexus 5", "Galaxy S5"
318
+ # @OutputOnly
319
+ # Corresponds to the JSON property `name`
320
+ # @return [String]
321
+ attr_accessor :name
322
+
323
+ # Screen density in DPI.
324
+ # This corresponds to ro.sf.lcd_density
325
+ # @OutputOnly
326
+ # Corresponds to the JSON property `screenDensity`
327
+ # @return [Fixnum]
328
+ attr_accessor :screen_density
329
+
330
+ # Screen size in the horizontal (X) dimension measured in pixels.
331
+ # @OutputOnly
332
+ # Corresponds to the JSON property `screenX`
333
+ # @return [Fixnum]
334
+ attr_accessor :screen_x
335
+
336
+ # Screen size in the vertical (Y) dimension measured in pixels.
337
+ # @OutputOnly
338
+ # Corresponds to the JSON property `screenY`
339
+ # @return [Fixnum]
340
+ attr_accessor :screen_y
341
+
342
+ # The list of supported ABIs for this device.
343
+ # This corresponds to either android.os.Build.SUPPORTED_ABIS (for API level
344
+ # 21 and above) or android.os.Build.CPU_ABI/CPU_ABI2.
345
+ # The most preferred ABI is the first element in the list.
346
+ # Elements are optionally prefixed by "version_id:" (where version_id is
347
+ # the id of an AndroidVersion), denoting an ABI that is supported only on
348
+ # a particular version.
349
+ # @OutputOnly
350
+ # Corresponds to the JSON property `supportedAbis`
351
+ # @return [Array<String>]
352
+ attr_accessor :supported_abis
353
+
354
+ # The set of Android versions this device supports.
355
+ # @OutputOnly
356
+ # Corresponds to the JSON property `supportedVersionIds`
357
+ # @return [Array<String>]
358
+ attr_accessor :supported_version_ids
359
+
360
+ # Tags for this dimension.
361
+ # Examples: "default", "preview", "deprecated"
362
+ # Corresponds to the JSON property `tags`
363
+ # @return [Array<String>]
364
+ attr_accessor :tags
365
+
366
+ def initialize(**args)
367
+ update!(**args)
368
+ end
369
+
370
+ # Update properties of this object
371
+ def update!(**args)
372
+ @brand = args[:brand] if args.key?(:brand)
373
+ @codename = args[:codename] if args.key?(:codename)
374
+ @form = args[:form] if args.key?(:form)
375
+ @id = args[:id] if args.key?(:id)
376
+ @manufacturer = args[:manufacturer] if args.key?(:manufacturer)
377
+ @name = args[:name] if args.key?(:name)
378
+ @screen_density = args[:screen_density] if args.key?(:screen_density)
379
+ @screen_x = args[:screen_x] if args.key?(:screen_x)
380
+ @screen_y = args[:screen_y] if args.key?(:screen_y)
381
+ @supported_abis = args[:supported_abis] if args.key?(:supported_abis)
382
+ @supported_version_ids = args[:supported_version_ids] if args.key?(:supported_version_ids)
383
+ @tags = args[:tags] if args.key?(:tags)
384
+ end
385
+ end
386
+
387
+ # A test of an android application that explores the application on a virtual
388
+ # or physical Android Device, finding culprits and crashes as it goes.
389
+ class AndroidRoboTest
390
+ include Google::Apis::Core::Hashable
391
+
392
+ # A reference to a file, used for user inputs.
393
+ # Corresponds to the JSON property `appApk`
394
+ # @return [Google::Apis::TestingV1::FileReference]
395
+ attr_accessor :app_apk
396
+
397
+ # The initial activity that should be used to start the app.
398
+ # Optional
399
+ # Corresponds to the JSON property `appInitialActivity`
400
+ # @return [String]
401
+ attr_accessor :app_initial_activity
402
+
403
+ # The java package for the application under test.
404
+ # Optional, default is determined by examining the application's manifest.
405
+ # Corresponds to the JSON property `appPackageId`
406
+ # @return [String]
407
+ attr_accessor :app_package_id
408
+
409
+ # The max depth of the traversal stack Robo can explore. Needs to be at least
410
+ # 2 to make Robo explore the app beyond the first activity.
411
+ # Default is 50.
412
+ # Optional
413
+ # Corresponds to the JSON property `maxDepth`
414
+ # @return [Fixnum]
415
+ attr_accessor :max_depth
416
+
417
+ # The max number of steps Robo can execute.
418
+ # Default is no limit.
419
+ # Optional
420
+ # Corresponds to the JSON property `maxSteps`
421
+ # @return [Fixnum]
422
+ attr_accessor :max_steps
423
+
424
+ # A set of directives Robo should apply during the crawl.
425
+ # This allows users to customize the crawl. For example, the username and
426
+ # password for a test account can be provided.
427
+ # Optional
428
+ # Corresponds to the JSON property `roboDirectives`
429
+ # @return [Array<Google::Apis::TestingV1::RoboDirective>]
430
+ attr_accessor :robo_directives
431
+
432
+ def initialize(**args)
433
+ update!(**args)
434
+ end
435
+
436
+ # Update properties of this object
437
+ def update!(**args)
438
+ @app_apk = args[:app_apk] if args.key?(:app_apk)
439
+ @app_initial_activity = args[:app_initial_activity] if args.key?(:app_initial_activity)
440
+ @app_package_id = args[:app_package_id] if args.key?(:app_package_id)
441
+ @max_depth = args[:max_depth] if args.key?(:max_depth)
442
+ @max_steps = args[:max_steps] if args.key?(:max_steps)
443
+ @robo_directives = args[:robo_directives] if args.key?(:robo_directives)
444
+ end
445
+ end
446
+
447
+ # Configuration that can be selected at the time a test is run.
448
+ class AndroidRuntimeConfiguration
449
+ include Google::Apis::Core::Hashable
450
+
451
+ # The set of available locales.
452
+ # @OutputOnly
453
+ # Corresponds to the JSON property `locales`
454
+ # @return [Array<Google::Apis::TestingV1::Locale>]
455
+ attr_accessor :locales
456
+
457
+ # The set of available orientations.
458
+ # @OutputOnly
459
+ # Corresponds to the JSON property `orientations`
460
+ # @return [Array<Google::Apis::TestingV1::Orientation>]
461
+ attr_accessor :orientations
462
+
463
+ def initialize(**args)
464
+ update!(**args)
465
+ end
466
+
467
+ # Update properties of this object
468
+ def update!(**args)
469
+ @locales = args[:locales] if args.key?(:locales)
470
+ @orientations = args[:orientations] if args.key?(:orientations)
471
+ end
472
+ end
473
+
474
+ # A test of an Android Application with a Test Loop.
475
+ # The intent <intent-name> will be implicitly added, since Games is the only
476
+ # user of this api, for the time being.
477
+ class AndroidTestLoop
478
+ include Google::Apis::Core::Hashable
479
+
480
+ # A reference to a file, used for user inputs.
481
+ # Corresponds to the JSON property `appApk`
482
+ # @return [Google::Apis::TestingV1::FileReference]
483
+ attr_accessor :app_apk
484
+
485
+ # The java package for the application under test.
486
+ # Optional, default is determined by examining the application's manifest.
487
+ # Corresponds to the JSON property `appPackageId`
488
+ # @return [String]
489
+ attr_accessor :app_package_id
490
+
491
+ # The list of scenario labels that should be run during the test.
492
+ # The scenario labels should map to labels defined in the application's
493
+ # manifest. For example, player_experience and
494
+ # com.google.test.loops.player_experience add all of the loops labeled in the
495
+ # manifest with the com.google.test.loops.player_experience name to the
496
+ # execution.
497
+ # Optional. Scenarios can also be specified in the scenarios field.
498
+ # Corresponds to the JSON property `scenarioLabels`
499
+ # @return [Array<String>]
500
+ attr_accessor :scenario_labels
501
+
502
+ # The list of scenarios that should be run during the test.
503
+ # Optional, default is all test loops, derived from the application's
504
+ # manifest.
505
+ # Corresponds to the JSON property `scenarios`
506
+ # @return [Array<Fixnum>]
507
+ attr_accessor :scenarios
508
+
509
+ def initialize(**args)
510
+ update!(**args)
511
+ end
512
+
513
+ # Update properties of this object
514
+ def update!(**args)
515
+ @app_apk = args[:app_apk] if args.key?(:app_apk)
516
+ @app_package_id = args[:app_package_id] if args.key?(:app_package_id)
517
+ @scenario_labels = args[:scenario_labels] if args.key?(:scenario_labels)
518
+ @scenarios = args[:scenarios] if args.key?(:scenarios)
519
+ end
520
+ end
521
+
522
+ # A version of the Android OS
523
+ class AndroidVersion
524
+ include Google::Apis::Core::Hashable
525
+
526
+ # The API level for this Android version.
527
+ # Examples: 18, 19
528
+ # @OutputOnly
529
+ # Corresponds to the JSON property `apiLevel`
530
+ # @return [Fixnum]
531
+ attr_accessor :api_level
532
+
533
+ # The code name for this Android version.
534
+ # Examples: "JellyBean", "KitKat"
535
+ # @OutputOnly
536
+ # Corresponds to the JSON property `codeName`
537
+ # @return [String]
538
+ attr_accessor :code_name
539
+
540
+ # Data about the relative number of devices running a
541
+ # given configuration of the Android platform.
542
+ # Corresponds to the JSON property `distribution`
543
+ # @return [Google::Apis::TestingV1::Distribution]
544
+ attr_accessor :distribution
545
+
546
+ # An opaque id for this Android version.
547
+ # Use this id to invoke the TestExecutionService.
548
+ # @OutputOnly
549
+ # Corresponds to the JSON property `id`
550
+ # @return [String]
551
+ attr_accessor :id
552
+
553
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
554
+ # time zone are either specified elsewhere or are not significant. The date
555
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
556
+ # represent a year and month where the day is not significant, e.g. credit card
557
+ # expiration date. The year may be 0 to represent a month and day independent
558
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
559
+ # and `google.protobuf.Timestamp`.
560
+ # Corresponds to the JSON property `releaseDate`
561
+ # @return [Google::Apis::TestingV1::Date]
562
+ attr_accessor :release_date
563
+
564
+ # Tags for this dimension.
565
+ # Examples: "default", "preview", "deprecated"
566
+ # Corresponds to the JSON property `tags`
567
+ # @return [Array<String>]
568
+ attr_accessor :tags
569
+
570
+ # A string representing this version of the Android OS.
571
+ # Examples: "4.3", "4.4"
572
+ # @OutputOnly
573
+ # Corresponds to the JSON property `versionString`
574
+ # @return [String]
575
+ attr_accessor :version_string
576
+
577
+ def initialize(**args)
578
+ update!(**args)
579
+ end
580
+
581
+ # Update properties of this object
582
+ def update!(**args)
583
+ @api_level = args[:api_level] if args.key?(:api_level)
584
+ @code_name = args[:code_name] if args.key?(:code_name)
585
+ @distribution = args[:distribution] if args.key?(:distribution)
586
+ @id = args[:id] if args.key?(:id)
587
+ @release_date = args[:release_date] if args.key?(:release_date)
588
+ @tags = args[:tags] if args.key?(:tags)
589
+ @version_string = args[:version_string] if args.key?(:version_string)
590
+ end
591
+ end
592
+
593
+ # Response containing the current state of the specified test matrix.
594
+ class CancelTestMatrixResponse
595
+ include Google::Apis::Core::Hashable
596
+
597
+ # The current rolled-up state of the test matrix.
598
+ # If this state is already final, then the cancelation request will
599
+ # have no effect.
600
+ # Corresponds to the JSON property `testState`
601
+ # @return [String]
602
+ attr_accessor :test_state
603
+
604
+ def initialize(**args)
605
+ update!(**args)
606
+ end
607
+
608
+ # Update properties of this object
609
+ def update!(**args)
610
+ @test_state = args[:test_state] if args.key?(:test_state)
611
+ end
612
+ end
613
+
614
+ # Information about the client which invoked the test.
615
+ class ClientInfo
616
+ include Google::Apis::Core::Hashable
617
+
618
+ # The list of detailed information about client.
619
+ # Corresponds to the JSON property `clientInfoDetails`
620
+ # @return [Array<Google::Apis::TestingV1::ClientInfoDetail>]
621
+ attr_accessor :client_info_details
622
+
623
+ # Client name, such as gcloud.
624
+ # Required
625
+ # Corresponds to the JSON property `name`
626
+ # @return [String]
627
+ attr_accessor :name
628
+
629
+ def initialize(**args)
630
+ update!(**args)
631
+ end
632
+
633
+ # Update properties of this object
634
+ def update!(**args)
635
+ @client_info_details = args[:client_info_details] if args.key?(:client_info_details)
636
+ @name = args[:name] if args.key?(:name)
637
+ end
638
+ end
639
+
640
+ # Key-value pair of detailed information about the client which invoked the
641
+ # test. For example `'Version', '1.0'`, `'Release Track', 'BETA'`
642
+ class ClientInfoDetail
643
+ include Google::Apis::Core::Hashable
644
+
645
+ # The key of detailed client information.
646
+ # Required
647
+ # Corresponds to the JSON property `key`
648
+ # @return [String]
649
+ attr_accessor :key
650
+
651
+ # The value of detailed client information.
652
+ # Required
653
+ # Corresponds to the JSON property `value`
654
+ # @return [String]
655
+ attr_accessor :value
656
+
657
+ def initialize(**args)
658
+ update!(**args)
659
+ end
660
+
661
+ # Update properties of this object
662
+ def update!(**args)
663
+ @key = args[:key] if args.key?(:key)
664
+ @value = args[:value] if args.key?(:value)
665
+ end
666
+ end
667
+
668
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
669
+ # time zone are either specified elsewhere or are not significant. The date
670
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
671
+ # represent a year and month where the day is not significant, e.g. credit card
672
+ # expiration date. The year may be 0 to represent a month and day independent
673
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
674
+ # and `google.protobuf.Timestamp`.
675
+ class Date
676
+ include Google::Apis::Core::Hashable
677
+
678
+ # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
679
+ # if specifying a year/month where the day is not significant.
680
+ # Corresponds to the JSON property `day`
681
+ # @return [Fixnum]
682
+ attr_accessor :day
683
+
684
+ # Month of year. Must be from 1 to 12.
685
+ # Corresponds to the JSON property `month`
686
+ # @return [Fixnum]
687
+ attr_accessor :month
688
+
689
+ # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
690
+ # a year.
691
+ # Corresponds to the JSON property `year`
692
+ # @return [Fixnum]
693
+ attr_accessor :year
694
+
695
+ def initialize(**args)
696
+ update!(**args)
697
+ end
698
+
699
+ # Update properties of this object
700
+ def update!(**args)
701
+ @day = args[:day] if args.key?(:day)
702
+ @month = args[:month] if args.key?(:month)
703
+ @year = args[:year] if args.key?(:year)
704
+ end
705
+ end
706
+
707
+ # A single device file description.
708
+ class DeviceFile
709
+ include Google::Apis::Core::Hashable
710
+
711
+ # An opaque binary blob file to install on the device before the test starts
712
+ # Corresponds to the JSON property `obbFile`
713
+ # @return [Google::Apis::TestingV1::ObbFile]
714
+ attr_accessor :obb_file
715
+
716
+ def initialize(**args)
717
+ update!(**args)
718
+ end
719
+
720
+ # Update properties of this object
721
+ def update!(**args)
722
+ @obb_file = args[:obb_file] if args.key?(:obb_file)
723
+ end
724
+ end
725
+
726
+ # Data about the relative number of devices running a
727
+ # given configuration of the Android platform.
728
+ class Distribution
729
+ include Google::Apis::Core::Hashable
730
+
731
+ # The estimated fraction (0-1) of the total market with this configuration.
732
+ # @OutputOnly
733
+ # Corresponds to the JSON property `marketShare`
734
+ # @return [Float]
735
+ attr_accessor :market_share
736
+
737
+ # The time this distribution was measured.
738
+ # @OutputOnly
739
+ # Corresponds to the JSON property `measurementTime`
740
+ # @return [String]
741
+ attr_accessor :measurement_time
742
+
743
+ def initialize(**args)
744
+ update!(**args)
745
+ end
746
+
747
+ # Update properties of this object
748
+ def update!(**args)
749
+ @market_share = args[:market_share] if args.key?(:market_share)
750
+ @measurement_time = args[:measurement_time] if args.key?(:measurement_time)
751
+ end
752
+ end
753
+
754
+ # The environment in which the test is run.
755
+ class Environment
756
+ include Google::Apis::Core::Hashable
757
+
758
+ # A single Android device.
759
+ # Corresponds to the JSON property `androidDevice`
760
+ # @return [Google::Apis::TestingV1::AndroidDevice]
761
+ attr_accessor :android_device
762
+
763
+ def initialize(**args)
764
+ update!(**args)
765
+ end
766
+
767
+ # Update properties of this object
768
+ def update!(**args)
769
+ @android_device = args[:android_device] if args.key?(:android_device)
770
+ end
771
+ end
772
+
773
+ # The matrix of environments in which the test is to be executed.
774
+ class EnvironmentMatrix
775
+ include Google::Apis::Core::Hashable
776
+
777
+ # A list of Android device configurations in which the test is to be executed.
778
+ # Corresponds to the JSON property `androidDeviceList`
779
+ # @return [Google::Apis::TestingV1::AndroidDeviceList]
780
+ attr_accessor :android_device_list
781
+
782
+ # A set of Android device configuration permutations is defined by the
783
+ # the cross-product of the given axes. Internally, the given AndroidMatrix
784
+ # will be expanded into a set of AndroidDevices.
785
+ # Only supported permutations will be instantiated. Invalid permutations
786
+ # (e.g., incompatible models/versions) are ignored.
787
+ # Corresponds to the JSON property `androidMatrix`
788
+ # @return [Google::Apis::TestingV1::AndroidMatrix]
789
+ attr_accessor :android_matrix
790
+
791
+ def initialize(**args)
792
+ update!(**args)
793
+ end
794
+
795
+ # Update properties of this object
796
+ def update!(**args)
797
+ @android_device_list = args[:android_device_list] if args.key?(:android_device_list)
798
+ @android_matrix = args[:android_matrix] if args.key?(:android_matrix)
799
+ end
800
+ end
801
+
802
+ # A key-value pair passed as an environment variable to the test
803
+ class EnvironmentVariable
804
+ include Google::Apis::Core::Hashable
805
+
806
+ # Key for the environment variable
807
+ # Corresponds to the JSON property `key`
808
+ # @return [String]
809
+ attr_accessor :key
810
+
811
+ # Value for the environment variable
812
+ # Corresponds to the JSON property `value`
813
+ # @return [String]
814
+ attr_accessor :value
815
+
816
+ def initialize(**args)
817
+ update!(**args)
818
+ end
819
+
820
+ # Update properties of this object
821
+ def update!(**args)
822
+ @key = args[:key] if args.key?(:key)
823
+ @value = args[:value] if args.key?(:value)
824
+ end
825
+ end
826
+
827
+ # A reference to a file, used for user inputs.
828
+ class FileReference
829
+ include Google::Apis::Core::Hashable
830
+
831
+ # A path to a file in Google Cloud Storage.
832
+ # Example: gs://build-app-1414623860166/app-debug-unaligned.apk
833
+ # Corresponds to the JSON property `gcsPath`
834
+ # @return [String]
835
+ attr_accessor :gcs_path
836
+
837
+ def initialize(**args)
838
+ update!(**args)
839
+ end
840
+
841
+ # Update properties of this object
842
+ def update!(**args)
843
+ @gcs_path = args[:gcs_path] if args.key?(:gcs_path)
844
+ end
845
+ end
846
+
847
+ # Enables automatic Google account login.
848
+ # If set, the service will automatically generate a Google test account and add
849
+ # it to the device, before executing the test. Note that test accounts might be
850
+ # reused.
851
+ # Many applications show their full set of functionalities when an account is
852
+ # present on the device. Logging into the device with these generated accounts
853
+ # allows testing more functionalities.
854
+ class GoogleAuto
855
+ include Google::Apis::Core::Hashable
856
+
857
+ def initialize(**args)
858
+ update!(**args)
859
+ end
860
+
861
+ # Update properties of this object
862
+ def update!(**args)
863
+ end
864
+ end
865
+
866
+ # A storage location within Google cloud storage (GCS).
867
+ class GoogleCloudStorage
868
+ include Google::Apis::Core::Hashable
869
+
870
+ # The path to a directory in GCS that will
871
+ # eventually contain the results for this test.
872
+ # The requesting user must have write access on the bucket in the supplied
873
+ # path.
874
+ # Required
875
+ # Corresponds to the JSON property `gcsPath`
876
+ # @return [String]
877
+ attr_accessor :gcs_path
878
+
879
+ def initialize(**args)
880
+ update!(**args)
881
+ end
882
+
883
+ # Update properties of this object
884
+ def update!(**args)
885
+ @gcs_path = args[:gcs_path] if args.key?(:gcs_path)
886
+ end
887
+ end
888
+
889
+ # A location/region designation for language.
890
+ class Locale
891
+ include Google::Apis::Core::Hashable
892
+
893
+ # The id for this locale.
894
+ # Example: "en_US"
895
+ # @OutputOnly
896
+ # Corresponds to the JSON property `id`
897
+ # @return [String]
898
+ attr_accessor :id
899
+
900
+ # A human-friendly name for this language/locale.
901
+ # Example: "English"
902
+ # @OutputOnly
903
+ # Corresponds to the JSON property `name`
904
+ # @return [String]
905
+ attr_accessor :name
906
+
907
+ # A human-friendy string representing the region for this locale.
908
+ # Example: "United States"
909
+ # Not present for every locale.
910
+ # @OutputOnly
911
+ # Corresponds to the JSON property `region`
912
+ # @return [String]
913
+ attr_accessor :region
914
+
915
+ # Tags for this dimension.
916
+ # Examples: "default"
917
+ # Corresponds to the JSON property `tags`
918
+ # @return [Array<String>]
919
+ attr_accessor :tags
920
+
921
+ def initialize(**args)
922
+ update!(**args)
923
+ end
924
+
925
+ # Update properties of this object
926
+ def update!(**args)
927
+ @id = args[:id] if args.key?(:id)
928
+ @name = args[:name] if args.key?(:name)
929
+ @region = args[:region] if args.key?(:region)
930
+ @tags = args[:tags] if args.key?(:tags)
931
+ end
932
+ end
933
+
934
+ #
935
+ class NetworkConfiguration
936
+ include Google::Apis::Core::Hashable
937
+
938
+ # Network emulation parameters
939
+ # Corresponds to the JSON property `downRule`
940
+ # @return [Google::Apis::TestingV1::TrafficRule]
941
+ attr_accessor :down_rule
942
+
943
+ # The unique opaque id for this network traffic configuration
944
+ # @OutputOnly
945
+ # Corresponds to the JSON property `id`
946
+ # @return [String]
947
+ attr_accessor :id
948
+
949
+ # Network emulation parameters
950
+ # Corresponds to the JSON property `upRule`
951
+ # @return [Google::Apis::TestingV1::TrafficRule]
952
+ attr_accessor :up_rule
953
+
954
+ def initialize(**args)
955
+ update!(**args)
956
+ end
957
+
958
+ # Update properties of this object
959
+ def update!(**args)
960
+ @down_rule = args[:down_rule] if args.key?(:down_rule)
961
+ @id = args[:id] if args.key?(:id)
962
+ @up_rule = args[:up_rule] if args.key?(:up_rule)
963
+ end
964
+ end
965
+
966
+ #
967
+ class NetworkConfigurationCatalog
968
+ include Google::Apis::Core::Hashable
969
+
970
+ #
971
+ # Corresponds to the JSON property `configurations`
972
+ # @return [Array<Google::Apis::TestingV1::NetworkConfiguration>]
973
+ attr_accessor :configurations
974
+
975
+ def initialize(**args)
976
+ update!(**args)
977
+ end
978
+
979
+ # Update properties of this object
980
+ def update!(**args)
981
+ @configurations = args[:configurations] if args.key?(:configurations)
982
+ end
983
+ end
984
+
985
+ # An opaque binary blob file to install on the device before the test starts
986
+ class ObbFile
987
+ include Google::Apis::Core::Hashable
988
+
989
+ # A reference to a file, used for user inputs.
990
+ # Corresponds to the JSON property `obb`
991
+ # @return [Google::Apis::TestingV1::FileReference]
992
+ attr_accessor :obb
993
+
994
+ # OBB file name which must conform to the format as specified by
995
+ # Android
996
+ # e.g. [main|patch].0300110.com.example.android.obb
997
+ # which will be installed into
998
+ # <shared-storage>/Android/obb/<package-name>/
999
+ # on the device
1000
+ # Required
1001
+ # Corresponds to the JSON property `obbFileName`
1002
+ # @return [String]
1003
+ attr_accessor :obb_file_name
1004
+
1005
+ def initialize(**args)
1006
+ update!(**args)
1007
+ end
1008
+
1009
+ # Update properties of this object
1010
+ def update!(**args)
1011
+ @obb = args[:obb] if args.key?(:obb)
1012
+ @obb_file_name = args[:obb_file_name] if args.key?(:obb_file_name)
1013
+ end
1014
+ end
1015
+
1016
+ # Screen orientation of the device.
1017
+ class Orientation
1018
+ include Google::Apis::Core::Hashable
1019
+
1020
+ # The id for this orientation.
1021
+ # Example: "portrait"
1022
+ # @OutputOnly
1023
+ # Corresponds to the JSON property `id`
1024
+ # @return [String]
1025
+ attr_accessor :id
1026
+
1027
+ # A human-friendly name for this orientation.
1028
+ # Example: "portrait"
1029
+ # @OutputOnly
1030
+ # Corresponds to the JSON property `name`
1031
+ # @return [String]
1032
+ attr_accessor :name
1033
+
1034
+ # Tags for this dimension.
1035
+ # Examples: "default"
1036
+ # Corresponds to the JSON property `tags`
1037
+ # @return [Array<String>]
1038
+ attr_accessor :tags
1039
+
1040
+ def initialize(**args)
1041
+ update!(**args)
1042
+ end
1043
+
1044
+ # Update properties of this object
1045
+ def update!(**args)
1046
+ @id = args[:id] if args.key?(:id)
1047
+ @name = args[:name] if args.key?(:name)
1048
+ @tags = args[:tags] if args.key?(:tags)
1049
+ end
1050
+ end
1051
+
1052
+ # Locations where the results of running the test are stored.
1053
+ class ResultStorage
1054
+ include Google::Apis::Core::Hashable
1055
+
1056
+ # A storage location within Google cloud storage (GCS).
1057
+ # Corresponds to the JSON property `googleCloudStorage`
1058
+ # @return [Google::Apis::TestingV1::GoogleCloudStorage]
1059
+ attr_accessor :google_cloud_storage
1060
+
1061
+ # Represents a tool results execution resource.
1062
+ # This has the results of a TestMatrix.
1063
+ # Corresponds to the JSON property `toolResultsExecution`
1064
+ # @return [Google::Apis::TestingV1::ToolResultsExecution]
1065
+ attr_accessor :tool_results_execution
1066
+
1067
+ # Represents a tool results history resource.
1068
+ # Corresponds to the JSON property `toolResultsHistory`
1069
+ # @return [Google::Apis::TestingV1::ToolResultsHistory]
1070
+ attr_accessor :tool_results_history
1071
+
1072
+ def initialize(**args)
1073
+ update!(**args)
1074
+ end
1075
+
1076
+ # Update properties of this object
1077
+ def update!(**args)
1078
+ @google_cloud_storage = args[:google_cloud_storage] if args.key?(:google_cloud_storage)
1079
+ @tool_results_execution = args[:tool_results_execution] if args.key?(:tool_results_execution)
1080
+ @tool_results_history = args[:tool_results_history] if args.key?(:tool_results_history)
1081
+ end
1082
+ end
1083
+
1084
+ # Directs Robo to interact with a specific UI element if it is encountered
1085
+ # during the crawl. Currently, Robo can perform text entry or element click.
1086
+ class RoboDirective
1087
+ include Google::Apis::Core::Hashable
1088
+
1089
+ # The type of action that Robo should perform on the specified element.
1090
+ # Required.
1091
+ # Corresponds to the JSON property `actionType`
1092
+ # @return [String]
1093
+ attr_accessor :action_type
1094
+
1095
+ # The text that Robo is directed to set. If left empty, the directive will be
1096
+ # treated as a CLICK on the element matching the resource_name.
1097
+ # Optional
1098
+ # Corresponds to the JSON property `inputText`
1099
+ # @return [String]
1100
+ attr_accessor :input_text
1101
+
1102
+ # The android resource name of the target UI element
1103
+ # For example,
1104
+ # in Java: R.string.foo
1105
+ # in xml: @string/foo
1106
+ # Only the “foo” part is needed.
1107
+ # Reference doc:
1108
+ # https://developer.android.com/guide/topics/resources/accessing-resources.html
1109
+ # Required
1110
+ # Corresponds to the JSON property `resourceName`
1111
+ # @return [String]
1112
+ attr_accessor :resource_name
1113
+
1114
+ def initialize(**args)
1115
+ update!(**args)
1116
+ end
1117
+
1118
+ # Update properties of this object
1119
+ def update!(**args)
1120
+ @action_type = args[:action_type] if args.key?(:action_type)
1121
+ @input_text = args[:input_text] if args.key?(:input_text)
1122
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
1123
+ end
1124
+ end
1125
+
1126
+ # Additional details about the progress of the running test.
1127
+ class TestDetails
1128
+ include Google::Apis::Core::Hashable
1129
+
1130
+ # If the TestState is ERROR, then this string will contain human-readable
1131
+ # details about the error.
1132
+ # @OutputOnly
1133
+ # Corresponds to the JSON property `errorMessage`
1134
+ # @return [String]
1135
+ attr_accessor :error_message
1136
+
1137
+ # Human-readable, detailed descriptions of the test's progress.
1138
+ # For example: "Provisioning a device", "Starting Test".
1139
+ # During the course of execution new data may be appended
1140
+ # to the end of progress_messages.
1141
+ # @OutputOnly
1142
+ # Corresponds to the JSON property `progressMessages`
1143
+ # @return [Array<String>]
1144
+ attr_accessor :progress_messages
1145
+
1146
+ def initialize(**args)
1147
+ update!(**args)
1148
+ end
1149
+
1150
+ # Update properties of this object
1151
+ def update!(**args)
1152
+ @error_message = args[:error_message] if args.key?(:error_message)
1153
+ @progress_messages = args[:progress_messages] if args.key?(:progress_messages)
1154
+ end
1155
+ end
1156
+
1157
+ # A description of a test environment.
1158
+ class TestEnvironmentCatalog
1159
+ include Google::Apis::Core::Hashable
1160
+
1161
+ # The currently supported Android devices.
1162
+ # Corresponds to the JSON property `androidDeviceCatalog`
1163
+ # @return [Google::Apis::TestingV1::AndroidDeviceCatalog]
1164
+ attr_accessor :android_device_catalog
1165
+
1166
+ # Supported network configurations
1167
+ # Corresponds to the JSON property `networkConfigurationCatalog`
1168
+ # @return [Google::Apis::TestingV1::NetworkConfigurationCatalog]
1169
+ attr_accessor :network_configuration_catalog
1170
+
1171
+ def initialize(**args)
1172
+ update!(**args)
1173
+ end
1174
+
1175
+ # Update properties of this object
1176
+ def update!(**args)
1177
+ @android_device_catalog = args[:android_device_catalog] if args.key?(:android_device_catalog)
1178
+ @network_configuration_catalog = args[:network_configuration_catalog] if args.key?(:network_configuration_catalog)
1179
+ end
1180
+ end
1181
+
1182
+ # Specifies a single test to be executed in a single environment.
1183
+ class TestExecution
1184
+ include Google::Apis::Core::Hashable
1185
+
1186
+ # The environment in which the test is run.
1187
+ # Corresponds to the JSON property `environment`
1188
+ # @return [Google::Apis::TestingV1::Environment]
1189
+ attr_accessor :environment
1190
+
1191
+ # Unique id set by the backend.
1192
+ # @OutputOnly
1193
+ # Corresponds to the JSON property `id`
1194
+ # @return [String]
1195
+ attr_accessor :id
1196
+
1197
+ # Id of the containing TestMatrix.
1198
+ # @OutputOnly
1199
+ # Corresponds to the JSON property `matrixId`
1200
+ # @return [String]
1201
+ attr_accessor :matrix_id
1202
+
1203
+ # The cloud project that owns the test execution.
1204
+ # @OutputOnly
1205
+ # Corresponds to the JSON property `projectId`
1206
+ # @return [String]
1207
+ attr_accessor :project_id
1208
+
1209
+ # Indicates the current progress of the test execution (e.g., FINISHED).
1210
+ # @OutputOnly
1211
+ # Corresponds to the JSON property `state`
1212
+ # @return [String]
1213
+ attr_accessor :state
1214
+
1215
+ # Additional details about the progress of the running test.
1216
+ # Corresponds to the JSON property `testDetails`
1217
+ # @return [Google::Apis::TestingV1::TestDetails]
1218
+ attr_accessor :test_details
1219
+
1220
+ # A description of how to run the test.
1221
+ # Corresponds to the JSON property `testSpecification`
1222
+ # @return [Google::Apis::TestingV1::TestSpecification]
1223
+ attr_accessor :test_specification
1224
+
1225
+ # The time this test execution was initially created.
1226
+ # @OutputOnly
1227
+ # Corresponds to the JSON property `timestamp`
1228
+ # @return [String]
1229
+ attr_accessor :timestamp
1230
+
1231
+ # Represents a tool results step resource.
1232
+ # This has the results of a TestExecution.
1233
+ # Corresponds to the JSON property `toolResultsStep`
1234
+ # @return [Google::Apis::TestingV1::ToolResultsStep]
1235
+ attr_accessor :tool_results_step
1236
+
1237
+ def initialize(**args)
1238
+ update!(**args)
1239
+ end
1240
+
1241
+ # Update properties of this object
1242
+ def update!(**args)
1243
+ @environment = args[:environment] if args.key?(:environment)
1244
+ @id = args[:id] if args.key?(:id)
1245
+ @matrix_id = args[:matrix_id] if args.key?(:matrix_id)
1246
+ @project_id = args[:project_id] if args.key?(:project_id)
1247
+ @state = args[:state] if args.key?(:state)
1248
+ @test_details = args[:test_details] if args.key?(:test_details)
1249
+ @test_specification = args[:test_specification] if args.key?(:test_specification)
1250
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
1251
+ @tool_results_step = args[:tool_results_step] if args.key?(:tool_results_step)
1252
+ end
1253
+ end
1254
+
1255
+ # A group of one or more TestExecutions, built by taking a
1256
+ # product of values over a pre-defined set of axes.
1257
+ class TestMatrix
1258
+ include Google::Apis::Core::Hashable
1259
+
1260
+ # Information about the client which invoked the test.
1261
+ # Corresponds to the JSON property `clientInfo`
1262
+ # @return [Google::Apis::TestingV1::ClientInfo]
1263
+ attr_accessor :client_info
1264
+
1265
+ # The matrix of environments in which the test is to be executed.
1266
+ # Corresponds to the JSON property `environmentMatrix`
1267
+ # @return [Google::Apis::TestingV1::EnvironmentMatrix]
1268
+ attr_accessor :environment_matrix
1269
+
1270
+ # Describes why the matrix is considered invalid.
1271
+ # Only useful for matrices in the INVALID state.
1272
+ # @OutputOnly
1273
+ # Corresponds to the JSON property `invalidMatrixDetails`
1274
+ # @return [String]
1275
+ attr_accessor :invalid_matrix_details
1276
+
1277
+ # The cloud project that owns the test matrix.
1278
+ # @OutputOnly
1279
+ # Corresponds to the JSON property `projectId`
1280
+ # @return [String]
1281
+ attr_accessor :project_id
1282
+
1283
+ # Locations where the results of running the test are stored.
1284
+ # Corresponds to the JSON property `resultStorage`
1285
+ # @return [Google::Apis::TestingV1::ResultStorage]
1286
+ attr_accessor :result_storage
1287
+
1288
+ # Indicates the current progress of the test matrix (e.g., FINISHED)
1289
+ # @OutputOnly
1290
+ # Corresponds to the JSON property `state`
1291
+ # @return [String]
1292
+ attr_accessor :state
1293
+
1294
+ # The list of test executions that the service creates for this matrix.
1295
+ # @OutputOnly
1296
+ # Corresponds to the JSON property `testExecutions`
1297
+ # @return [Array<Google::Apis::TestingV1::TestExecution>]
1298
+ attr_accessor :test_executions
1299
+
1300
+ # Unique id set by the service.
1301
+ # @OutputOnly
1302
+ # Corresponds to the JSON property `testMatrixId`
1303
+ # @return [String]
1304
+ attr_accessor :test_matrix_id
1305
+
1306
+ # A description of how to run the test.
1307
+ # Corresponds to the JSON property `testSpecification`
1308
+ # @return [Google::Apis::TestingV1::TestSpecification]
1309
+ attr_accessor :test_specification
1310
+
1311
+ # The time this test matrix was initially created.
1312
+ # @OutputOnly
1313
+ # Corresponds to the JSON property `timestamp`
1314
+ # @return [String]
1315
+ attr_accessor :timestamp
1316
+
1317
+ def initialize(**args)
1318
+ update!(**args)
1319
+ end
1320
+
1321
+ # Update properties of this object
1322
+ def update!(**args)
1323
+ @client_info = args[:client_info] if args.key?(:client_info)
1324
+ @environment_matrix = args[:environment_matrix] if args.key?(:environment_matrix)
1325
+ @invalid_matrix_details = args[:invalid_matrix_details] if args.key?(:invalid_matrix_details)
1326
+ @project_id = args[:project_id] if args.key?(:project_id)
1327
+ @result_storage = args[:result_storage] if args.key?(:result_storage)
1328
+ @state = args[:state] if args.key?(:state)
1329
+ @test_executions = args[:test_executions] if args.key?(:test_executions)
1330
+ @test_matrix_id = args[:test_matrix_id] if args.key?(:test_matrix_id)
1331
+ @test_specification = args[:test_specification] if args.key?(:test_specification)
1332
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
1333
+ end
1334
+ end
1335
+
1336
+ # A description of how to set up the device prior to running the test
1337
+ class TestSetup
1338
+ include Google::Apis::Core::Hashable
1339
+
1340
+ # Identifies an account and how to log into it
1341
+ # Corresponds to the JSON property `account`
1342
+ # @return [Google::Apis::TestingV1::Account]
1343
+ attr_accessor :account
1344
+
1345
+ # The directories on the device to upload to GCS at the end of the test;
1346
+ # they must be absolute, whitelisted paths.
1347
+ # Refer to RegularFile for whitelisted paths.
1348
+ # Optional
1349
+ # Corresponds to the JSON property `directoriesToPull`
1350
+ # @return [Array<String>]
1351
+ attr_accessor :directories_to_pull
1352
+
1353
+ # Environment variables to set for the test (only applicable for
1354
+ # instrumentation tests).
1355
+ # Corresponds to the JSON property `environmentVariables`
1356
+ # @return [Array<Google::Apis::TestingV1::EnvironmentVariable>]
1357
+ attr_accessor :environment_variables
1358
+
1359
+ # Optional
1360
+ # Corresponds to the JSON property `filesToPush`
1361
+ # @return [Array<Google::Apis::TestingV1::DeviceFile>]
1362
+ attr_accessor :files_to_push
1363
+
1364
+ # The network traffic profile used for running the test.
1365
+ # Optional
1366
+ # Corresponds to the JSON property `networkProfile`
1367
+ # @return [String]
1368
+ attr_accessor :network_profile
1369
+
1370
+ def initialize(**args)
1371
+ update!(**args)
1372
+ end
1373
+
1374
+ # Update properties of this object
1375
+ def update!(**args)
1376
+ @account = args[:account] if args.key?(:account)
1377
+ @directories_to_pull = args[:directories_to_pull] if args.key?(:directories_to_pull)
1378
+ @environment_variables = args[:environment_variables] if args.key?(:environment_variables)
1379
+ @files_to_push = args[:files_to_push] if args.key?(:files_to_push)
1380
+ @network_profile = args[:network_profile] if args.key?(:network_profile)
1381
+ end
1382
+ end
1383
+
1384
+ # A description of how to run the test.
1385
+ class TestSpecification
1386
+ include Google::Apis::Core::Hashable
1387
+
1388
+ # A test of an Android application that can control an Android component
1389
+ # independently of its normal lifecycle.
1390
+ # Android instrumentation tests run an application APK and test APK inside the
1391
+ # same process on a virtual or physical AndroidDevice. They also specify
1392
+ # a test runner class, such as com.google.GoogleTestRunner, which can vary
1393
+ # on the specific instrumentation framework chosen.
1394
+ # See <http://developer.android.com/tools/testing/testing_android.html> for
1395
+ # more information on types of Android tests.
1396
+ # Corresponds to the JSON property `androidInstrumentationTest`
1397
+ # @return [Google::Apis::TestingV1::AndroidInstrumentationTest]
1398
+ attr_accessor :android_instrumentation_test
1399
+
1400
+ # A test of an android application that explores the application on a virtual
1401
+ # or physical Android Device, finding culprits and crashes as it goes.
1402
+ # Corresponds to the JSON property `androidRoboTest`
1403
+ # @return [Google::Apis::TestingV1::AndroidRoboTest]
1404
+ attr_accessor :android_robo_test
1405
+
1406
+ # A test of an Android Application with a Test Loop.
1407
+ # The intent <intent-name> will be implicitly added, since Games is the only
1408
+ # user of this api, for the time being.
1409
+ # Corresponds to the JSON property `androidTestLoop`
1410
+ # @return [Google::Apis::TestingV1::AndroidTestLoop]
1411
+ attr_accessor :android_test_loop
1412
+
1413
+ # Enables automatic Google account login.
1414
+ # If set, the service will automatically generate a Google test account and
1415
+ # add it to the device, before executing the test. Note that test accounts
1416
+ # might be reused.
1417
+ # Many applications show their full set of functionalities when an account is
1418
+ # present on the device. Logging into the device with these generated
1419
+ # accounts allows testing more functionalities.
1420
+ # Default is false.
1421
+ # Optional
1422
+ # Corresponds to the JSON property `autoGoogleLogin`
1423
+ # @return [Boolean]
1424
+ attr_accessor :auto_google_login
1425
+ alias_method :auto_google_login?, :auto_google_login
1426
+
1427
+ # Disables performance metrics recording; may reduce test latency.
1428
+ # Corresponds to the JSON property `disablePerformanceMetrics`
1429
+ # @return [Boolean]
1430
+ attr_accessor :disable_performance_metrics
1431
+ alias_method :disable_performance_metrics?, :disable_performance_metrics
1432
+
1433
+ # Disables video recording; may reduce test latency.
1434
+ # Corresponds to the JSON property `disableVideoRecording`
1435
+ # @return [Boolean]
1436
+ attr_accessor :disable_video_recording
1437
+ alias_method :disable_video_recording?, :disable_video_recording
1438
+
1439
+ # A description of how to set up the device prior to running the test
1440
+ # Corresponds to the JSON property `testSetup`
1441
+ # @return [Google::Apis::TestingV1::TestSetup]
1442
+ attr_accessor :test_setup
1443
+
1444
+ # Max time a test execution is allowed to run before it is
1445
+ # automatically cancelled.
1446
+ # Optional, default is 5 min.
1447
+ # Corresponds to the JSON property `testTimeout`
1448
+ # @return [String]
1449
+ attr_accessor :test_timeout
1450
+
1451
+ def initialize(**args)
1452
+ update!(**args)
1453
+ end
1454
+
1455
+ # Update properties of this object
1456
+ def update!(**args)
1457
+ @android_instrumentation_test = args[:android_instrumentation_test] if args.key?(:android_instrumentation_test)
1458
+ @android_robo_test = args[:android_robo_test] if args.key?(:android_robo_test)
1459
+ @android_test_loop = args[:android_test_loop] if args.key?(:android_test_loop)
1460
+ @auto_google_login = args[:auto_google_login] if args.key?(:auto_google_login)
1461
+ @disable_performance_metrics = args[:disable_performance_metrics] if args.key?(:disable_performance_metrics)
1462
+ @disable_video_recording = args[:disable_video_recording] if args.key?(:disable_video_recording)
1463
+ @test_setup = args[:test_setup] if args.key?(:test_setup)
1464
+ @test_timeout = args[:test_timeout] if args.key?(:test_timeout)
1465
+ end
1466
+ end
1467
+
1468
+ # Represents a tool results execution resource.
1469
+ # This has the results of a TestMatrix.
1470
+ class ToolResultsExecution
1471
+ include Google::Apis::Core::Hashable
1472
+
1473
+ # A tool results execution ID.
1474
+ # @OutputOnly
1475
+ # Corresponds to the JSON property `executionId`
1476
+ # @return [String]
1477
+ attr_accessor :execution_id
1478
+
1479
+ # A tool results history ID.
1480
+ # @OutputOnly
1481
+ # Corresponds to the JSON property `historyId`
1482
+ # @return [String]
1483
+ attr_accessor :history_id
1484
+
1485
+ # The cloud project that owns the tool results execution.
1486
+ # @OutputOnly
1487
+ # Corresponds to the JSON property `projectId`
1488
+ # @return [String]
1489
+ attr_accessor :project_id
1490
+
1491
+ def initialize(**args)
1492
+ update!(**args)
1493
+ end
1494
+
1495
+ # Update properties of this object
1496
+ def update!(**args)
1497
+ @execution_id = args[:execution_id] if args.key?(:execution_id)
1498
+ @history_id = args[:history_id] if args.key?(:history_id)
1499
+ @project_id = args[:project_id] if args.key?(:project_id)
1500
+ end
1501
+ end
1502
+
1503
+ # Represents a tool results history resource.
1504
+ class ToolResultsHistory
1505
+ include Google::Apis::Core::Hashable
1506
+
1507
+ # A tool results history ID.
1508
+ # Required
1509
+ # Corresponds to the JSON property `historyId`
1510
+ # @return [String]
1511
+ attr_accessor :history_id
1512
+
1513
+ # The cloud project that owns the tool results history.
1514
+ # Required
1515
+ # Corresponds to the JSON property `projectId`
1516
+ # @return [String]
1517
+ attr_accessor :project_id
1518
+
1519
+ def initialize(**args)
1520
+ update!(**args)
1521
+ end
1522
+
1523
+ # Update properties of this object
1524
+ def update!(**args)
1525
+ @history_id = args[:history_id] if args.key?(:history_id)
1526
+ @project_id = args[:project_id] if args.key?(:project_id)
1527
+ end
1528
+ end
1529
+
1530
+ # Represents a tool results step resource.
1531
+ # This has the results of a TestExecution.
1532
+ class ToolResultsStep
1533
+ include Google::Apis::Core::Hashable
1534
+
1535
+ # A tool results execution ID.
1536
+ # @OutputOnly
1537
+ # Corresponds to the JSON property `executionId`
1538
+ # @return [String]
1539
+ attr_accessor :execution_id
1540
+
1541
+ # A tool results history ID.
1542
+ # @OutputOnly
1543
+ # Corresponds to the JSON property `historyId`
1544
+ # @return [String]
1545
+ attr_accessor :history_id
1546
+
1547
+ # The cloud project that owns the tool results step.
1548
+ # @OutputOnly
1549
+ # Corresponds to the JSON property `projectId`
1550
+ # @return [String]
1551
+ attr_accessor :project_id
1552
+
1553
+ # A tool results step ID.
1554
+ # @OutputOnly
1555
+ # Corresponds to the JSON property `stepId`
1556
+ # @return [String]
1557
+ attr_accessor :step_id
1558
+
1559
+ def initialize(**args)
1560
+ update!(**args)
1561
+ end
1562
+
1563
+ # Update properties of this object
1564
+ def update!(**args)
1565
+ @execution_id = args[:execution_id] if args.key?(:execution_id)
1566
+ @history_id = args[:history_id] if args.key?(:history_id)
1567
+ @project_id = args[:project_id] if args.key?(:project_id)
1568
+ @step_id = args[:step_id] if args.key?(:step_id)
1569
+ end
1570
+ end
1571
+
1572
+ # Network emulation parameters
1573
+ class TrafficRule
1574
+ include Google::Apis::Core::Hashable
1575
+
1576
+ # Bandwidth in kbits/second
1577
+ # Corresponds to the JSON property `bandwidth`
1578
+ # @return [Float]
1579
+ attr_accessor :bandwidth
1580
+
1581
+ # Burst size in kbits
1582
+ # Corresponds to the JSON property `burst`
1583
+ # @return [Float]
1584
+ attr_accessor :burst
1585
+
1586
+ # Packet delay, must be >= 0
1587
+ # Corresponds to the JSON property `delay`
1588
+ # @return [String]
1589
+ attr_accessor :delay
1590
+
1591
+ # Packet duplication ratio (0.0 - 1.0)
1592
+ # Corresponds to the JSON property `packetDuplicationRatio`
1593
+ # @return [Float]
1594
+ attr_accessor :packet_duplication_ratio
1595
+
1596
+ # Packet loss ratio (0.0 - 1.0)
1597
+ # Corresponds to the JSON property `packetLossRatio`
1598
+ # @return [Float]
1599
+ attr_accessor :packet_loss_ratio
1600
+
1601
+ def initialize(**args)
1602
+ update!(**args)
1603
+ end
1604
+
1605
+ # Update properties of this object
1606
+ def update!(**args)
1607
+ @bandwidth = args[:bandwidth] if args.key?(:bandwidth)
1608
+ @burst = args[:burst] if args.key?(:burst)
1609
+ @delay = args[:delay] if args.key?(:delay)
1610
+ @packet_duplication_ratio = args[:packet_duplication_ratio] if args.key?(:packet_duplication_ratio)
1611
+ @packet_loss_ratio = args[:packet_loss_ratio] if args.key?(:packet_loss_ratio)
1612
+ end
1613
+ end
1614
+ end
1615
+ end
1616
+ end