google-api-client 0.38.0 → 0.39.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (329) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +124 -0
  3. data/api_list_config.yaml +1 -2
  4. data/bin/generate-api +1 -1
  5. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  6. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +22 -1
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +3 -0
  8. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  9. data/generated/google/apis/androidenterprise_v1/classes.rb +2 -1
  10. data/generated/google/apis/androidpublisher_v1.rb +1 -4
  11. data/generated/google/apis/androidpublisher_v1/classes.rb +0 -41
  12. data/generated/google/apis/androidpublisher_v1/representations.rb +0 -16
  13. data/generated/google/apis/androidpublisher_v1/service.rb +1 -81
  14. data/generated/google/apis/androidpublisher_v1_1.rb +1 -1
  15. data/generated/google/apis/androidpublisher_v1_1/classes.rb +0 -41
  16. data/generated/google/apis/androidpublisher_v1_1/representations.rb +0 -16
  17. data/generated/google/apis/androidpublisher_v1_1/service.rb +0 -80
  18. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  19. data/generated/google/apis/androidpublisher_v2/classes.rb +36 -1661
  20. data/generated/google/apis/androidpublisher_v2/representations.rb +0 -739
  21. data/generated/google/apis/androidpublisher_v2/service.rb +0 -2359
  22. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  23. data/generated/google/apis/androidpublisher_v3/classes.rb +3 -2
  24. data/generated/google/apis/androidpublisher_v3/service.rb +4 -3
  25. data/generated/google/apis/apigee_v1.rb +40 -0
  26. data/generated/google/apis/apigee_v1/classes.rb +5205 -0
  27. data/generated/google/apis/apigee_v1/representations.rb +1944 -0
  28. data/generated/google/apis/apigee_v1/service.rb +6068 -0
  29. data/generated/google/apis/bigquery_v2.rb +1 -1
  30. data/generated/google/apis/bigquery_v2/classes.rb +51 -19
  31. data/generated/google/apis/bigquery_v2/representations.rb +21 -4
  32. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  33. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +1 -2
  34. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +2 -2
  35. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  36. data/generated/google/apis/bigqueryreservation_v1/classes.rb +12 -12
  37. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  38. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +12 -12
  39. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  40. data/generated/google/apis/binaryauthorization_v1/classes.rb +23 -10
  41. data/generated/google/apis/binaryauthorization_v1/service.rb +10 -4
  42. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  43. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +23 -10
  44. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +10 -4
  45. data/generated/google/apis/calendar_v3.rb +1 -1
  46. data/generated/google/apis/calendar_v3/classes.rb +5 -5
  47. data/generated/google/apis/classroom_v1.rb +1 -1
  48. data/generated/google/apis/classroom_v1/classes.rb +14 -14
  49. data/generated/google/apis/classroom_v1/service.rb +11 -11
  50. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  51. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +2 -0
  52. data/generated/google/apis/{osconfig_v1beta.rb → cloudasset_v1p4beta1.rb} +8 -9
  53. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +924 -0
  54. data/generated/google/apis/cloudasset_v1p4beta1/representations.rb +377 -0
  55. data/generated/google/apis/cloudasset_v1p4beta1/service.rb +217 -0
  56. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  57. data/generated/google/apis/cloudbilling_v1/classes.rb +24 -12
  58. data/generated/google/apis/cloudbilling_v1/service.rb +3 -0
  59. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  60. data/generated/google/apis/cloudbuild_v1/classes.rb +2 -2
  61. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  62. data/generated/google/apis/clouddebugger_v2/classes.rb +26 -0
  63. data/generated/google/apis/clouddebugger_v2/representations.rb +4 -0
  64. data/generated/google/apis/clouddebugger_v2/service.rb +9 -2
  65. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  66. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +214 -66
  67. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +64 -10
  68. data/generated/google/apis/cloudiot_v1.rb +1 -1
  69. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  70. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +1 -2
  71. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  72. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +1 -2
  73. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  74. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +1 -2
  75. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  76. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +1 -2
  77. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  78. data/generated/google/apis/cloudscheduler_v1/classes.rb +1 -1
  79. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  80. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +1 -1
  81. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  82. data/generated/google/apis/cloudsearch_v1/classes.rb +6 -4
  83. data/generated/google/apis/cloudsearch_v1/service.rb +3 -1
  84. data/generated/google/apis/cloudshell_v1.rb +1 -1
  85. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  86. data/generated/google/apis/cloudshell_v1alpha1/classes.rb +6 -0
  87. data/generated/google/apis/cloudshell_v1alpha1/representations.rb +2 -0
  88. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  89. data/generated/google/apis/cloudtasks_v2/classes.rb +6 -9
  90. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  91. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +6 -9
  92. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  93. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +6 -9
  94. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  95. data/generated/google/apis/cloudtrace_v2/classes.rb +3 -4
  96. data/generated/google/apis/composer_v1beta1.rb +1 -1
  97. data/generated/google/apis/composer_v1beta1/classes.rb +1 -2
  98. data/generated/google/apis/compute_alpha.rb +1 -1
  99. data/generated/google/apis/compute_alpha/classes.rb +414 -29
  100. data/generated/google/apis/compute_alpha/representations.rb +141 -0
  101. data/generated/google/apis/compute_alpha/service.rb +351 -1
  102. data/generated/google/apis/compute_beta.rb +1 -1
  103. data/generated/google/apis/compute_beta/classes.rb +34 -29
  104. data/generated/google/apis/compute_beta/service.rb +3 -1
  105. data/generated/google/apis/compute_v1.rb +1 -1
  106. data/generated/google/apis/compute_v1/classes.rb +129 -10
  107. data/generated/google/apis/compute_v1/representations.rb +38 -0
  108. data/generated/google/apis/compute_v1/service.rb +3 -1
  109. data/generated/google/apis/container_v1.rb +1 -1
  110. data/generated/google/apis/container_v1/classes.rb +145 -132
  111. data/generated/google/apis/container_v1/service.rb +168 -159
  112. data/generated/google/apis/container_v1beta1.rb +1 -1
  113. data/generated/google/apis/container_v1beta1/classes.rb +186 -134
  114. data/generated/google/apis/container_v1beta1/representations.rb +16 -0
  115. data/generated/google/apis/container_v1beta1/service.rb +169 -160
  116. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  117. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +26 -10
  118. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  119. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +360 -10
  120. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +159 -0
  121. data/generated/google/apis/content_v2.rb +1 -1
  122. data/generated/google/apis/content_v2/classes.rb +1176 -1094
  123. data/generated/google/apis/content_v2/representations.rb +31 -0
  124. data/generated/google/apis/content_v2/service.rb +45 -45
  125. data/generated/google/apis/content_v2_1.rb +1 -1
  126. data/generated/google/apis/content_v2_1/classes.rb +1801 -931
  127. data/generated/google/apis/content_v2_1/representations.rb +351 -0
  128. data/generated/google/apis/content_v2_1/service.rb +299 -47
  129. data/generated/google/apis/customsearch_v1.rb +1 -1
  130. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  131. data/generated/google/apis/datacatalog_v1beta1/classes.rb +67 -7
  132. data/generated/google/apis/datacatalog_v1beta1/representations.rb +3 -0
  133. data/generated/google/apis/datacatalog_v1beta1/service.rb +43 -33
  134. data/generated/google/apis/dataproc_v1.rb +1 -1
  135. data/generated/google/apis/dataproc_v1/classes.rb +69 -36
  136. data/generated/google/apis/dataproc_v1/service.rb +14 -14
  137. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  138. data/generated/google/apis/dataproc_v1beta2/classes.rb +46 -26
  139. data/generated/google/apis/dialogflow_v2.rb +1 -1
  140. data/generated/google/apis/dialogflow_v2/classes.rb +203 -35
  141. data/generated/google/apis/dialogflow_v2/representations.rb +46 -0
  142. data/generated/google/apis/dialogflow_v2/service.rb +39 -0
  143. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  144. data/generated/google/apis/dialogflow_v2beta1/classes.rb +261 -36
  145. data/generated/google/apis/dialogflow_v2beta1/representations.rb +64 -0
  146. data/generated/google/apis/dialogflow_v2beta1/service.rb +88 -10
  147. data/generated/google/apis/displayvideo_v1.rb +1 -1
  148. data/generated/google/apis/displayvideo_v1/classes.rb +7216 -220
  149. data/generated/google/apis/displayvideo_v1/representations.rb +2846 -55
  150. data/generated/google/apis/displayvideo_v1/service.rb +2665 -0
  151. data/generated/google/apis/dlp_v2.rb +1 -1
  152. data/generated/google/apis/dlp_v2/classes.rb +6 -1
  153. data/generated/google/apis/drive_v2.rb +1 -1
  154. data/generated/google/apis/drive_v2/classes.rb +1 -0
  155. data/generated/google/apis/drive_v2/service.rb +51 -57
  156. data/generated/google/apis/drive_v3.rb +1 -1
  157. data/generated/google/apis/drive_v3/service.rb +28 -29
  158. data/generated/google/apis/driveactivity_v2.rb +1 -1
  159. data/generated/google/apis/driveactivity_v2/classes.rb +9 -5
  160. data/generated/google/apis/file_v1.rb +1 -1
  161. data/generated/google/apis/file_v1/classes.rb +1 -1
  162. data/generated/google/apis/file_v1/service.rb +5 -5
  163. data/generated/google/apis/file_v1beta1.rb +1 -1
  164. data/generated/google/apis/file_v1beta1/classes.rb +1 -1
  165. data/generated/google/apis/file_v1beta1/service.rb +10 -7
  166. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  167. data/generated/google/apis/firebase_v1beta1/service.rb +5 -2
  168. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  169. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +8 -58
  170. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +1 -31
  171. data/generated/google/apis/firebasehosting_v1beta1/service.rb +0 -70
  172. data/generated/google/apis/firebaseml_v1beta2.rb +34 -0
  173. data/generated/google/apis/firebaseml_v1beta2/classes.rb +344 -0
  174. data/generated/google/apis/firebaseml_v1beta2/representations.rb +154 -0
  175. data/generated/google/apis/firebaseml_v1beta2/service.rb +267 -0
  176. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  177. data/generated/google/apis/games_configuration_v1configuration/classes.rb +9 -10
  178. data/generated/google/apis/games_configuration_v1configuration/service.rb +2 -2
  179. data/generated/google/apis/games_management_v1management.rb +1 -1
  180. data/generated/google/apis/games_management_v1management/classes.rb +0 -6
  181. data/generated/google/apis/games_management_v1management/representations.rb +0 -1
  182. data/generated/google/apis/games_v1.rb +1 -1
  183. data/generated/google/apis/games_v1/classes.rb +1 -7
  184. data/generated/google/apis/games_v1/representations.rb +0 -1
  185. data/generated/google/apis/games_v1/service.rb +3 -12
  186. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  187. data/generated/google/apis/gameservices_v1beta/classes.rb +1 -2
  188. data/generated/google/apis/gameservices_v1beta/service.rb +2 -2
  189. data/generated/google/apis/healthcare_v1.rb +1 -1
  190. data/generated/google/apis/healthcare_v1/classes.rb +0 -1
  191. data/generated/google/apis/healthcare_v1/service.rb +9 -7
  192. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  193. data/generated/google/apis/healthcare_v1beta1/service.rb +124 -1
  194. data/generated/google/apis/homegraph_v1.rb +1 -1
  195. data/generated/google/apis/homegraph_v1/classes.rb +8 -6
  196. data/generated/google/apis/iamcredentials_v1.rb +1 -1
  197. data/generated/google/apis/iamcredentials_v1/classes.rb +9 -4
  198. data/generated/google/apis/managedidentities_v1.rb +1 -1
  199. data/generated/google/apis/managedidentities_v1/service.rb +2 -2
  200. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  201. data/generated/google/apis/managedidentities_v1alpha1/service.rb +2 -2
  202. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  203. data/generated/google/apis/managedidentities_v1beta1/service.rb +2 -2
  204. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  205. data/generated/google/apis/memcache_v1beta2/classes.rb +7 -7
  206. data/generated/google/apis/memcache_v1beta2/service.rb +1 -1
  207. data/generated/google/apis/ml_v1.rb +1 -1
  208. data/generated/google/apis/ml_v1/classes.rb +41 -38
  209. data/generated/google/apis/ml_v1/service.rb +17 -11
  210. data/generated/google/apis/monitoring_v3.rb +1 -1
  211. data/generated/google/apis/monitoring_v3/classes.rb +27 -38
  212. data/generated/google/apis/monitoring_v3/representations.rb +3 -16
  213. data/generated/google/apis/monitoring_v3/service.rb +6 -5
  214. data/generated/google/apis/people_v1.rb +7 -1
  215. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  216. data/generated/google/apis/policytroubleshooter_v1/classes.rb +23 -10
  217. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  218. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +23 -10
  219. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  220. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +13 -0
  221. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +2 -0
  222. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +6 -0
  223. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  224. data/generated/google/apis/remotebuildexecution_v1/classes.rb +57 -1
  225. data/generated/google/apis/remotebuildexecution_v1/representations.rb +19 -0
  226. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  227. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +57 -1
  228. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +19 -0
  229. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  230. data/generated/google/apis/remotebuildexecution_v2/classes.rb +57 -1
  231. data/generated/google/apis/remotebuildexecution_v2/representations.rb +19 -0
  232. data/generated/google/apis/run_v1.rb +1 -1
  233. data/generated/google/apis/run_v1/classes.rb +22 -46
  234. data/generated/google/apis/run_v1/representations.rb +5 -19
  235. data/generated/google/apis/run_v1alpha1.rb +1 -1
  236. data/generated/google/apis/run_v1alpha1/classes.rb +1 -2
  237. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  238. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +23 -10
  239. data/generated/google/apis/runtimeconfig_v1beta1/service.rb +8 -5
  240. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  241. data/generated/google/apis/sasportal_v1alpha1/classes.rb +13 -0
  242. data/generated/google/apis/sasportal_v1alpha1/representations.rb +2 -0
  243. data/generated/google/apis/sasportal_v1alpha1/service.rb +6 -0
  244. data/generated/google/apis/script_v1.rb +1 -1
  245. data/generated/google/apis/script_v1/classes.rb +4 -22
  246. data/generated/google/apis/secretmanager_v1.rb +1 -1
  247. data/generated/google/apis/secretmanager_v1/classes.rb +1 -2
  248. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  249. data/generated/google/apis/secretmanager_v1beta1/classes.rb +1 -2
  250. data/generated/google/apis/securitycenter_v1.rb +1 -1
  251. data/generated/google/apis/securitycenter_v1/classes.rb +0 -12
  252. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  253. data/generated/google/apis/securitycenter_v1beta1/classes.rb +0 -8
  254. data/generated/google/apis/securitycenter_v1p1alpha1.rb +1 -1
  255. data/generated/google/apis/securitycenter_v1p1alpha1/classes.rb +0 -8
  256. data/generated/google/apis/securitycenter_v1p1beta1.rb +1 -1
  257. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +0 -8
  258. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  259. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +34 -14
  260. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  261. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +34 -14
  262. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  263. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  264. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  265. data/generated/google/apis/servicemanagement_v1/service.rb +6 -1
  266. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  267. data/generated/google/apis/servicenetworking_v1/classes.rb +34 -14
  268. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  269. data/generated/google/apis/servicenetworking_v1beta/classes.rb +34 -14
  270. data/generated/google/apis/serviceusage_v1.rb +1 -1
  271. data/generated/google/apis/serviceusage_v1/classes.rb +34 -14
  272. data/generated/google/apis/serviceusage_v1/service.rb +1 -1
  273. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  274. data/generated/google/apis/serviceusage_v1beta1/classes.rb +34 -14
  275. data/generated/google/apis/sheets_v4.rb +1 -1
  276. data/generated/google/apis/sheets_v4/classes.rb +2 -2
  277. data/generated/google/apis/slides_v1.rb +1 -1
  278. data/generated/google/apis/slides_v1/classes.rb +1 -1
  279. data/generated/google/apis/slides_v1/service.rb +1 -1
  280. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  281. data/generated/google/apis/sourcerepo_v1/classes.rb +1 -2
  282. data/generated/google/apis/speech_v1.rb +1 -1
  283. data/generated/google/apis/speech_v1/classes.rb +2 -1
  284. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  285. data/generated/google/apis/speech_v1p1beta1/classes.rb +182 -1
  286. data/generated/google/apis/speech_v1p1beta1/representations.rb +77 -0
  287. data/generated/google/apis/storage_v1.rb +1 -1
  288. data/generated/google/apis/storage_v1/classes.rb +21 -0
  289. data/generated/google/apis/storage_v1/representations.rb +5 -0
  290. data/generated/google/apis/tagmanager_v1.rb +1 -1
  291. data/generated/google/apis/tagmanager_v1/service.rb +1 -1
  292. data/generated/google/apis/tagmanager_v2.rb +1 -1
  293. data/generated/google/apis/tagmanager_v2/service.rb +1 -1
  294. data/generated/google/apis/testing_v1.rb +1 -1
  295. data/generated/google/apis/testing_v1/classes.rb +9 -0
  296. data/generated/google/apis/testing_v1/representations.rb +1 -0
  297. data/generated/google/apis/toolresults_v1beta3.rb +2 -2
  298. data/generated/google/apis/toolresults_v1beta3/classes.rb +1431 -1231
  299. data/generated/google/apis/toolresults_v1beta3/representations.rb +442 -2
  300. data/generated/google/apis/toolresults_v1beta3/service.rb +647 -720
  301. data/generated/google/apis/vault_v1.rb +1 -1
  302. data/generated/google/apis/vault_v1/classes.rb +6 -6
  303. data/generated/google/apis/vault_v1/service.rb +7 -7
  304. data/generated/google/apis/videointelligence_v1.rb +1 -1
  305. data/generated/google/apis/videointelligence_v1/classes.rb +215 -76
  306. data/generated/google/apis/videointelligence_v1/representations.rb +23 -0
  307. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  308. data/generated/google/apis/videointelligence_v1beta2/classes.rb +215 -76
  309. data/generated/google/apis/videointelligence_v1beta2/representations.rb +23 -0
  310. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  311. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +215 -76
  312. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +23 -0
  313. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  314. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +215 -76
  315. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +23 -0
  316. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  317. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +222 -83
  318. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +23 -0
  319. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  320. data/generated/google/apis/youtube_v3.rb +1 -1
  321. data/lib/google/apis/version.rb +1 -1
  322. metadata +15 -11
  323. data/generated/google/apis/commentanalyzer_v1alpha1.rb +0 -39
  324. data/generated/google/apis/commentanalyzer_v1alpha1/classes.rb +0 -480
  325. data/generated/google/apis/commentanalyzer_v1alpha1/representations.rb +0 -210
  326. data/generated/google/apis/commentanalyzer_v1alpha1/service.rb +0 -124
  327. data/generated/google/apis/osconfig_v1beta/classes.rb +0 -2365
  328. data/generated/google/apis/osconfig_v1beta/representations.rb +0 -966
  329. data/generated/google/apis/osconfig_v1beta/service.rb +0 -605
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/tag-manager
27
27
  module TagmanagerV1
28
28
  VERSION = 'V1'
29
- REVISION = '20200220'
29
+ REVISION = '20200504'
30
30
 
31
31
  # Delete your Google Tag Manager containers
32
32
  AUTH_TAGMANAGER_DELETE_CONTAINERS = 'https://www.googleapis.com/auth/tagmanager.delete.containers'
@@ -45,7 +45,7 @@ module Google
45
45
 
46
46
  def initialize
47
47
  super('https://www.googleapis.com/', '')
48
- @batch_path = 'batch'
48
+ @batch_path = 'batch/tagmanager/v1'
49
49
  end
50
50
 
51
51
  # Gets a GTM Account.
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/tag-manager
27
27
  module TagmanagerV2
28
28
  VERSION = 'V2'
29
- REVISION = '20200220'
29
+ REVISION = '20200504'
30
30
 
31
31
  # Delete your Google Tag Manager containers
32
32
  AUTH_TAGMANAGER_DELETE_CONTAINERS = 'https://www.googleapis.com/auth/tagmanager.delete.containers'
@@ -45,7 +45,7 @@ module Google
45
45
 
46
46
  def initialize
47
47
  super('https://www.googleapis.com/', '')
48
- @batch_path = 'batch'
48
+ @batch_path = 'batch/tagmanager/v2'
49
49
  end
50
50
 
51
51
  # Gets a GTM Account.
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/cloud-test-lab/
27
27
  module TestingV1
28
28
  VERSION = 'V1'
29
- REVISION = '20200226'
29
+ REVISION = '20200429'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -1425,6 +1425,14 @@ module Google
1425
1425
  # @return [String]
1426
1426
  attr_accessor :app_bundle_id
1427
1427
 
1428
+ # The option to test special app entitlements. Setting this would re-sign the
1429
+ # app having special entitlements with an explicit application-identifier.
1430
+ # Currently supports testing aps-environment entitlement.
1431
+ # Corresponds to the JSON property `testSpecialEntitlements`
1432
+ # @return [Boolean]
1433
+ attr_accessor :test_special_entitlements
1434
+ alias_method :test_special_entitlements?, :test_special_entitlements
1435
+
1428
1436
  # A reference to a file, used for user inputs.
1429
1437
  # Corresponds to the JSON property `testsZip`
1430
1438
  # @return [Google::Apis::TestingV1::FileReference]
@@ -1449,6 +1457,7 @@ module Google
1449
1457
  # Update properties of this object
1450
1458
  def update!(**args)
1451
1459
  @app_bundle_id = args[:app_bundle_id] if args.key?(:app_bundle_id)
1460
+ @test_special_entitlements = args[:test_special_entitlements] if args.key?(:test_special_entitlements)
1452
1461
  @tests_zip = args[:tests_zip] if args.key?(:tests_zip)
1453
1462
  @xcode_version = args[:xcode_version] if args.key?(:xcode_version)
1454
1463
  @xctestrun = args[:xctestrun] if args.key?(:xctestrun)
@@ -815,6 +815,7 @@ module Google
815
815
  # @private
816
816
  class Representation < Google::Apis::Core::JsonRepresentation
817
817
  property :app_bundle_id, as: 'appBundleId'
818
+ property :test_special_entitlements, as: 'testSpecialEntitlements'
818
819
  property :tests_zip, as: 'testsZip', class: Google::Apis::TestingV1::FileReference, decorator: Google::Apis::TestingV1::FileReference::Representation
819
820
 
820
821
  property :xcode_version, as: 'xcodeVersion'
@@ -20,12 +20,12 @@ module Google
20
20
  module Apis
21
21
  # Cloud Tool Results API
22
22
  #
23
- # Reads and publishes results from Firebase Test Lab.
23
+ # API to publish and access results from developer tools.
24
24
  #
25
25
  # @see https://firebase.google.com/docs/test-lab/
26
26
  module ToolresultsV1beta3
27
27
  VERSION = 'V1beta3'
28
- REVISION = '20200317'
28
+ REVISION = '20200430'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -22,26 +22,49 @@ module Google
22
22
  module Apis
23
23
  module ToolresultsV1beta3
24
24
 
25
+ # Additional details for an ANR crash.
26
+ class Anr
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # A stacktrace.
30
+ # Corresponds to the JSON property `stackTrace`
31
+ # @return [Google::Apis::ToolresultsV1beta3::StackTrace]
32
+ attr_accessor :stack_trace
33
+
34
+ def initialize(**args)
35
+ update!(**args)
36
+ end
37
+
38
+ # Update properties of this object
39
+ def update!(**args)
40
+ @stack_trace = args[:stack_trace] if args.key?(:stack_trace)
41
+ end
42
+ end
43
+
25
44
  # Android app information.
26
45
  class AndroidAppInfo
27
46
  include Google::Apis::Core::Hashable
28
47
 
29
- # The name of the app. Optional
48
+ # The name of the app.
49
+ # Optional
30
50
  # Corresponds to the JSON property `name`
31
51
  # @return [String]
32
52
  attr_accessor :name
33
53
 
34
- # The package name of the app. Required.
54
+ # The package name of the app.
55
+ # Required.
35
56
  # Corresponds to the JSON property `packageName`
36
57
  # @return [String]
37
58
  attr_accessor :package_name
38
59
 
39
- # The internal version code of the app. Optional.
60
+ # The internal version code of the app.
61
+ # Optional.
40
62
  # Corresponds to the JSON property `versionCode`
41
63
  # @return [String]
42
64
  attr_accessor :version_code
43
65
 
44
- # The version name of the app. Optional.
66
+ # The version name of the app.
67
+ # Optional.
45
68
  # Corresponds to the JSON property `versionName`
46
69
  # @return [String]
47
70
  attr_accessor :version_name
@@ -61,30 +84,35 @@ module Google
61
84
 
62
85
  # A test of an Android application that can control an Android component
63
86
  # independently of its normal lifecycle.
64
- # See for more information on types of Android tests.
87
+ # See <http://developer.android.com/tools/testing/testing_android.html> for
88
+ # more information on types of Android tests.
65
89
  class AndroidInstrumentationTest
66
90
  include Google::Apis::Core::Hashable
67
91
 
68
- # The java package for the test to be executed. Required
92
+ # The java package for the test to be executed.
93
+ # Required
69
94
  # Corresponds to the JSON property `testPackageId`
70
95
  # @return [String]
71
96
  attr_accessor :test_package_id
72
97
 
73
- # The InstrumentationTestRunner class. Required
98
+ # The InstrumentationTestRunner class.
99
+ # Required
74
100
  # Corresponds to the JSON property `testRunnerClass`
75
101
  # @return [String]
76
102
  attr_accessor :test_runner_class
77
103
 
78
- # Each target must be fully qualified with the package name or class name, in
79
- # one of these formats: - "package package_name" - "class package_name.
80
- # class_name" - "class package_name.class_name#method_name"
104
+ # Each target must be fully qualified with the package name or class name,
105
+ # in one of these formats:
106
+ # - "package package_name"
107
+ # - "class package_name.class_name"
108
+ # - "class package_name.class_name#method_name"
81
109
  # If empty, all targets in the module will be run.
82
110
  # Corresponds to the JSON property `testTargets`
83
111
  # @return [Array<String>]
84
112
  attr_accessor :test_targets
85
113
 
86
- # The flag indicates whether Android Test Orchestrator will be used to run test
87
- # or not.
114
+ # The flag indicates whether Android Test Orchestrator will be used to run
115
+ # test or not.
88
116
  # Corresponds to the JSON property `useOrchestrator`
89
117
  # @return [Boolean]
90
118
  attr_accessor :use_orchestrator
@@ -103,32 +131,37 @@ module Google
103
131
  end
104
132
  end
105
133
 
106
- # A test of an android application that explores the application on a virtual or
107
- # physical Android device, finding culprits and crashes as it goes.
134
+ # A test of an android application that explores the application on a virtual
135
+ # or physical Android device, finding culprits and crashes as it goes.
108
136
  class AndroidRoboTest
109
137
  include Google::Apis::Core::Hashable
110
138
 
111
- # The initial activity that should be used to start the app. Optional
139
+ # The initial activity that should be used to start the app.
140
+ # Optional
112
141
  # Corresponds to the JSON property `appInitialActivity`
113
142
  # @return [String]
114
143
  attr_accessor :app_initial_activity
115
144
 
116
- # The java package for the bootstrap. Optional
145
+ # The java package for the bootstrap.
146
+ # Optional
117
147
  # Corresponds to the JSON property `bootstrapPackageId`
118
148
  # @return [String]
119
149
  attr_accessor :bootstrap_package_id
120
150
 
121
- # The runner class for the bootstrap. Optional
151
+ # The runner class for the bootstrap.
152
+ # Optional
122
153
  # Corresponds to the JSON property `bootstrapRunnerClass`
123
154
  # @return [String]
124
155
  attr_accessor :bootstrap_runner_class
125
156
 
126
- # The max depth of the traversal stack Robo can explore. Optional
157
+ # The max depth of the traversal stack Robo can explore.
158
+ # Optional
127
159
  # Corresponds to the JSON property `maxDepth`
128
160
  # @return [Fixnum]
129
161
  attr_accessor :max_depth
130
162
 
131
- # The max number of steps/actions Robo can execute. Default is no limit (0).
163
+ # The max number of steps/actions Robo can execute.
164
+ # Default is no limit (0).
132
165
  # Optional
133
166
  # Corresponds to the JSON property `maxSteps`
134
167
  # @return [Fixnum]
@@ -159,47 +192,30 @@ module Google
159
192
 
160
193
  # A test of an Android application that can control an Android component
161
194
  # independently of its normal lifecycle.
162
- # See for more information on types of Android tests.
195
+ # See <http://developer.android.com/tools/testing/testing_android.html> for
196
+ # more information on types of Android tests.
163
197
  # Corresponds to the JSON property `androidInstrumentationTest`
164
198
  # @return [Google::Apis::ToolresultsV1beta3::AndroidInstrumentationTest]
165
199
  attr_accessor :android_instrumentation_test
166
200
 
167
- # A test of an android application that explores the application on a virtual or
168
- # physical Android device, finding culprits and crashes as it goes.
201
+ # A test of an android application that explores the application on a virtual
202
+ # or physical Android device, finding culprits and crashes as it goes.
169
203
  # Corresponds to the JSON property `androidRoboTest`
170
204
  # @return [Google::Apis::ToolresultsV1beta3::AndroidRoboTest]
171
205
  attr_accessor :android_robo_test
172
206
 
173
- # A Duration represents a signed, fixed-length span of time represented as a
174
- # count of seconds and fractions of seconds at nanosecond resolution. It is
175
- # independent of any calendar and concepts like "day" or "month". It is related
176
- # to Timestamp in that the difference between two Timestamp values is a Duration
177
- # and it can be added or subtracted from a Timestamp. Range is approximately +-
178
- # 10,000 years.
179
- # # Examples
180
- # Example 1: Compute Duration from two Timestamps in pseudo code.
181
- # Timestamp start = ...; Timestamp end = ...; Duration duration = ...;
182
- # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos -
183
- # start.nanos;
184
- # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000;
185
- # ` else if (duration.seconds > 0 && duration.nanos < 0) ` duration.seconds -=
186
- # 1; duration.nanos += 1000000000; `
187
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
188
- # Timestamp start = ...; Duration duration = ...; Timestamp end = ...;
189
- # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos +
190
- # duration.nanos;
191
- # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; `
192
- # Example 3: Compute Duration from datetime.timedelta in Python.
193
- # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.
194
- # FromTimedelta(td)
195
- # # JSON Mapping
196
- # In JSON format, the Duration type is encoded as a string rather than an object,
197
- # where the string ends in the suffix "s" (indicating seconds) and is preceded
198
- # by the number of seconds, with nanoseconds expressed as fractional seconds.
199
- # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "
200
- # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.
201
- # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON
202
- # format as "3.000001s".
207
+ # Test Loops are tests that can be launched by the app itself, determining
208
+ # when to run by listening for an intent. go/ftl-games-dd
209
+ # Corresponds to the JSON property `androidTestLoop`
210
+ # @return [Google::Apis::ToolresultsV1beta3::AndroidTestLoop]
211
+ attr_accessor :android_test_loop
212
+
213
+ # A Duration represents a signed, fixed-length span of time represented
214
+ # as a count of seconds and fractions of seconds at nanosecond
215
+ # resolution. It is independent of any calendar and concepts like "day"
216
+ # or "month". It is related to Timestamp in that the difference between
217
+ # two Timestamp values is a Duration and it can be added or subtracted
218
+ # from a Timestamp. Range is approximately +-10,000 years.
203
219
  # Corresponds to the JSON property `testTimeout`
204
220
  # @return [Google::Apis::ToolresultsV1beta3::Duration]
205
221
  attr_accessor :test_timeout
@@ -213,63 +229,113 @@ module Google
213
229
  @android_app_info = args[:android_app_info] if args.key?(:android_app_info)
214
230
  @android_instrumentation_test = args[:android_instrumentation_test] if args.key?(:android_instrumentation_test)
215
231
  @android_robo_test = args[:android_robo_test] if args.key?(:android_robo_test)
232
+ @android_test_loop = args[:android_test_loop] if args.key?(:android_test_loop)
216
233
  @test_timeout = args[:test_timeout] if args.key?(:test_timeout)
217
234
  end
218
235
  end
219
236
 
237
+ # Test Loops are tests that can be launched by the app itself, determining
238
+ # when to run by listening for an intent. go/ftl-games-dd
239
+ class AndroidTestLoop
240
+ include Google::Apis::Core::Hashable
241
+
242
+ def initialize(**args)
243
+ update!(**args)
244
+ end
245
+
246
+ # Update properties of this object
247
+ def update!(**args)
248
+ end
249
+ end
250
+
220
251
  # `Any` contains an arbitrary serialized protocol buffer message along with a
221
252
  # URL that describes the type of the serialized message.
222
- # Protobuf library provides support to pack/unpack Any values in the form of
223
- # utility functions or additional generated methods of the Any type.
253
+ # Protobuf library provides support to pack/unpack Any values in the form
254
+ # of utility functions or additional generated methods of the Any type.
224
255
  # Example 1: Pack and unpack a message in C++.
225
- # Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) ` ... `
256
+ # Foo foo = ...;
257
+ # Any any;
258
+ # any.PackFrom(foo);
259
+ # ...
260
+ # if (any.UnpackTo(&foo)) `
261
+ # ...
262
+ # `
226
263
  # Example 2: Pack and unpack a message in Java.
227
- # Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) ` foo = any.
228
- # unpack(Foo.class); `
264
+ # Foo foo = ...;
265
+ # Any any = Any.pack(foo);
266
+ # ...
267
+ # if (any.is(Foo.class)) `
268
+ # foo = any.unpack(Foo.class);
269
+ # `
229
270
  # Example 3: Pack and unpack a message in Python.
230
- # foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.
231
- # Unpack(foo) ...
271
+ # foo = Foo(...)
272
+ # any = Any()
273
+ # any.Pack(foo)
274
+ # ...
275
+ # if any.Is(Foo.DESCRIPTOR):
276
+ # any.Unpack(foo)
277
+ # ...
232
278
  # Example 4: Pack and unpack a message in Go
233
- # foo := &pb.Foo`...` any, err := ptypes.MarshalAny(foo) ... foo := &pb.Foo`` if
234
- # err := ptypes.UnmarshalAny(any, foo); err != nil ` ... `
235
- # The pack methods provided by protobuf library will by default use 'type.
236
- # googleapis.com/full.type.name' as the type URL and the unpack methods only use
237
- # the fully qualified type name after the last '/' in the type URL, for example "
238
- # foo.bar.com/x/y.z" will yield type name "y.z".
239
- # JSON ==== The JSON representation of an `Any` value uses the regular
240
- # representation of the deserialized, embedded message, with an additional field
241
- # `@type` which contains the type URL. Example:
242
- # package google.profile; message Person ` string first_name = 1; string
243
- # last_name = 2; `
244
- # ` "@type": "type.googleapis.com/google.profile.Person", "firstName": , "
245
- # lastName": `
279
+ # foo := &pb.Foo`...`
280
+ # any, err := ptypes.MarshalAny(foo)
281
+ # ...
282
+ # foo := &pb.Foo``
283
+ # if err := ptypes.UnmarshalAny(any, foo); err != nil `
284
+ # ...
285
+ # `
286
+ # The pack methods provided by protobuf library will by default use
287
+ # 'type.googleapis.com/full.type.name' as the type URL and the unpack
288
+ # methods only use the fully qualified type name after the last '/'
289
+ # in the type URL, for example "foo.bar.com/x/y.z" will yield type
290
+ # name "y.z".
291
+ # # JSON
292
+ # The JSON representation of an `Any` value uses the regular
293
+ # representation of the deserialized, embedded message, with an
294
+ # additional field `@type` which contains the type URL. Example:
295
+ # package google.profile;
296
+ # message Person `
297
+ # string first_name = 1;
298
+ # string last_name = 2;
299
+ # `
300
+ # `
301
+ # "@type": "type.googleapis.com/google.profile.Person",
302
+ # "firstName": <string>,
303
+ # "lastName": <string>
304
+ # `
246
305
  # If the embedded message type is well-known and has a custom JSON
247
- # representation, that representation will be embedded adding a field `value`
248
- # which holds the custom JSON in addition to the `@type` field. Example (for
249
- # message [google.protobuf.Duration][]):
250
- # ` "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" `
306
+ # representation, that representation will be embedded adding a field
307
+ # `value` which holds the custom JSON in addition to the `@type`
308
+ # field. Example (for message google.protobuf.Duration):
309
+ # `
310
+ # "@type": "type.googleapis.com/google.protobuf.Duration",
311
+ # "value": "1.212s"
312
+ # `
251
313
  class Any
252
314
  include Google::Apis::Core::Hashable
253
315
 
254
316
  # A URL/resource name that uniquely identifies the type of the serialized
255
- # protocol buffer message. This string must contain at least one "/" character.
256
- # The last segment of the URL's path must represent the fully qualified name of
257
- # the type (as in `path/google.protobuf.Duration`). The name should be in a
258
- # canonical form (e.g., leading "." is not accepted).
317
+ # protocol buffer message. This string must contain at least
318
+ # one "/" character. The last segment of the URL's path must represent
319
+ # the fully qualified name of the type (as in
320
+ # `path/google.protobuf.Duration`). The name should be in a canonical form
321
+ # (e.g., leading "." is not accepted).
259
322
  # In practice, teams usually precompile into the binary all types that they
260
- # expect it to use in the context of Any. However, for URLs which use the scheme
261
- # `http`, `https`, or no scheme, one can optionally set up a type server that
262
- # maps type URLs to message definitions as follows:
263
- # * If no scheme is provided, `https` is assumed. * An HTTP GET on the URL must
264
- # yield a [google.protobuf.Type][] value in binary format, or produce an error. *
265
- # Applications are allowed to cache lookup results based on the URL, or have
266
- # them precompiled into a binary to avoid any lookup. Therefore, binary
267
- # compatibility needs to be preserved on changes to types. (Use versioned type
268
- # names to manage breaking changes.)
269
- # Note: this functionality is not currently available in the official protobuf
270
- # release, and it is not used for type URLs beginning with type.googleapis.com.
271
- # Schemes other than `http`, `https` (or the empty scheme) might be used with
272
- # implementation specific semantics.
323
+ # expect it to use in the context of Any. However, for URLs which use the
324
+ # scheme `http`, `https`, or no scheme, one can optionally set up a type
325
+ # server that maps type URLs to message definitions as follows:
326
+ # * If no scheme is provided, `https` is assumed.
327
+ # * An HTTP GET on the URL must yield a google.protobuf.Type
328
+ # value in binary format, or produce an error.
329
+ # * Applications are allowed to cache lookup results based on the
330
+ # URL, or have them precompiled into a binary to avoid any
331
+ # lookup. Therefore, binary compatibility needs to be preserved
332
+ # on changes to types. (Use versioned type names to manage
333
+ # breaking changes.)
334
+ # Note: this functionality is not currently available in the official
335
+ # protobuf release, and it is not used for type URLs beginning with
336
+ # type.googleapis.com.
337
+ # Schemes other than `http`, `https` (or the empty scheme) might be
338
+ # used with implementation specific semantics.
273
339
  # Corresponds to the JSON property `typeUrl`
274
340
  # @return [String]
275
341
  attr_accessor :type_url
@@ -295,70 +361,22 @@ module Google
295
361
  class AppStartTime
296
362
  include Google::Apis::Core::Hashable
297
363
 
298
- # A Duration represents a signed, fixed-length span of time represented as a
299
- # count of seconds and fractions of seconds at nanosecond resolution. It is
300
- # independent of any calendar and concepts like "day" or "month". It is related
301
- # to Timestamp in that the difference between two Timestamp values is a Duration
302
- # and it can be added or subtracted from a Timestamp. Range is approximately +-
303
- # 10,000 years.
304
- # # Examples
305
- # Example 1: Compute Duration from two Timestamps in pseudo code.
306
- # Timestamp start = ...; Timestamp end = ...; Duration duration = ...;
307
- # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos -
308
- # start.nanos;
309
- # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000;
310
- # ` else if (duration.seconds > 0 && duration.nanos < 0) ` duration.seconds -=
311
- # 1; duration.nanos += 1000000000; `
312
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
313
- # Timestamp start = ...; Duration duration = ...; Timestamp end = ...;
314
- # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos +
315
- # duration.nanos;
316
- # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; `
317
- # Example 3: Compute Duration from datetime.timedelta in Python.
318
- # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.
319
- # FromTimedelta(td)
320
- # # JSON Mapping
321
- # In JSON format, the Duration type is encoded as a string rather than an object,
322
- # where the string ends in the suffix "s" (indicating seconds) and is preceded
323
- # by the number of seconds, with nanoseconds expressed as fractional seconds.
324
- # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "
325
- # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.
326
- # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON
327
- # format as "3.000001s".
364
+ # A Duration represents a signed, fixed-length span of time represented
365
+ # as a count of seconds and fractions of seconds at nanosecond
366
+ # resolution. It is independent of any calendar and concepts like "day"
367
+ # or "month". It is related to Timestamp in that the difference between
368
+ # two Timestamp values is a Duration and it can be added or subtracted
369
+ # from a Timestamp. Range is approximately +-10,000 years.
328
370
  # Corresponds to the JSON property `fullyDrawnTime`
329
371
  # @return [Google::Apis::ToolresultsV1beta3::Duration]
330
372
  attr_accessor :fully_drawn_time
331
373
 
332
- # A Duration represents a signed, fixed-length span of time represented as a
333
- # count of seconds and fractions of seconds at nanosecond resolution. It is
334
- # independent of any calendar and concepts like "day" or "month". It is related
335
- # to Timestamp in that the difference between two Timestamp values is a Duration
336
- # and it can be added or subtracted from a Timestamp. Range is approximately +-
337
- # 10,000 years.
338
- # # Examples
339
- # Example 1: Compute Duration from two Timestamps in pseudo code.
340
- # Timestamp start = ...; Timestamp end = ...; Duration duration = ...;
341
- # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos -
342
- # start.nanos;
343
- # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000;
344
- # ` else if (duration.seconds > 0 && duration.nanos < 0) ` duration.seconds -=
345
- # 1; duration.nanos += 1000000000; `
346
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
347
- # Timestamp start = ...; Duration duration = ...; Timestamp end = ...;
348
- # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos +
349
- # duration.nanos;
350
- # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; `
351
- # Example 3: Compute Duration from datetime.timedelta in Python.
352
- # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.
353
- # FromTimedelta(td)
354
- # # JSON Mapping
355
- # In JSON format, the Duration type is encoded as a string rather than an object,
356
- # where the string ends in the suffix "s" (indicating seconds) and is preceded
357
- # by the number of seconds, with nanoseconds expressed as fractional seconds.
358
- # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "
359
- # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.
360
- # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON
361
- # format as "3.000001s".
374
+ # A Duration represents a signed, fixed-length span of time represented
375
+ # as a count of seconds and fractions of seconds at nanosecond
376
+ # resolution. It is independent of any calendar and concepts like "day"
377
+ # or "month". It is related to Timestamp in that the difference between
378
+ # two Timestamp values is a Duration and it can be added or subtracted
379
+ # from a Timestamp. Range is approximately +-10,000 years.
362
380
  # Corresponds to the JSON property `initialDisplayTime`
363
381
  # @return [Google::Apis::ToolresultsV1beta3::Duration]
364
382
  attr_accessor :initial_display_time
@@ -374,6 +392,19 @@ module Google
374
392
  end
375
393
  end
376
394
 
395
+ # A suggestion to use deep links for a Robo run.
396
+ class AvailableDeepLinks
397
+ include Google::Apis::Core::Hashable
398
+
399
+ def initialize(**args)
400
+ update!(**args)
401
+ end
402
+
403
+ # Update properties of this object
404
+ def update!(**args)
405
+ end
406
+ end
407
+
377
408
  # Encapsulates the metadata for basic sample series represented by a line chart
378
409
  class BasicPerfSampleSeries
379
410
  include Google::Apis::Core::Hashable
@@ -405,8 +436,8 @@ module Google
405
436
  end
406
437
  end
407
438
 
408
- # The request must provide up to a maximum of 5000 samples to be created; a
409
- # larger sample size will cause an INVALID_ARGUMENT error
439
+ # The request must provide up to a maximum of 5000 samples to be
440
+ # created; a larger sample size will cause an INVALID_ARGUMENT error
410
441
  class BatchCreatePerfSamplesRequest
411
442
  include Google::Apis::Core::Hashable
412
443
 
@@ -444,6 +475,26 @@ module Google
444
475
  end
445
476
  end
446
477
 
478
+ # A warning that Robo encountered a screen that was mostly blank; this may
479
+ # indicate a problem with the app.
480
+ class BlankScreen
481
+ include Google::Apis::Core::Hashable
482
+
483
+ # The screen id of the element
484
+ # Corresponds to the JSON property `screenId`
485
+ # @return [String]
486
+ attr_accessor :screen_id
487
+
488
+ def initialize(**args)
489
+ update!(**args)
490
+ end
491
+
492
+ # Update properties of this object
493
+ def update!(**args)
494
+ @screen_id = args[:screen_id] if args.key?(:screen_id)
495
+ end
496
+ end
497
+
447
498
  #
448
499
  class CpuInfo
449
500
  include Google::Apis::Core::Hashable
@@ -475,51 +526,47 @@ module Google
475
526
  end
476
527
  end
477
528
 
478
- # A Duration represents a signed, fixed-length span of time represented as a
479
- # count of seconds and fractions of seconds at nanosecond resolution. It is
480
- # independent of any calendar and concepts like "day" or "month". It is related
481
- # to Timestamp in that the difference between two Timestamp values is a Duration
482
- # and it can be added or subtracted from a Timestamp. Range is approximately +-
483
- # 10,000 years.
484
- # # Examples
485
- # Example 1: Compute Duration from two Timestamps in pseudo code.
486
- # Timestamp start = ...; Timestamp end = ...; Duration duration = ...;
487
- # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos -
488
- # start.nanos;
489
- # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000;
490
- # ` else if (duration.seconds > 0 && duration.nanos < 0) ` duration.seconds -=
491
- # 1; duration.nanos += 1000000000; `
492
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
493
- # Timestamp start = ...; Duration duration = ...; Timestamp end = ...;
494
- # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos +
495
- # duration.nanos;
496
- # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; `
497
- # Example 3: Compute Duration from datetime.timedelta in Python.
498
- # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.
499
- # FromTimedelta(td)
500
- # # JSON Mapping
501
- # In JSON format, the Duration type is encoded as a string rather than an object,
502
- # where the string ends in the suffix "s" (indicating seconds) and is preceded
503
- # by the number of seconds, with nanoseconds expressed as fractional seconds.
504
- # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "
505
- # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.
506
- # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON
507
- # format as "3.000001s".
529
+ # Crash dialog was detected during the test execution
530
+ class CrashDialogError
531
+ include Google::Apis::Core::Hashable
532
+
533
+ # The name of the package that caused the dialog.
534
+ # Corresponds to the JSON property `crashPackage`
535
+ # @return [String]
536
+ attr_accessor :crash_package
537
+
538
+ def initialize(**args)
539
+ update!(**args)
540
+ end
541
+
542
+ # Update properties of this object
543
+ def update!(**args)
544
+ @crash_package = args[:crash_package] if args.key?(:crash_package)
545
+ end
546
+ end
547
+
548
+ # A Duration represents a signed, fixed-length span of time represented
549
+ # as a count of seconds and fractions of seconds at nanosecond
550
+ # resolution. It is independent of any calendar and concepts like "day"
551
+ # or "month". It is related to Timestamp in that the difference between
552
+ # two Timestamp values is a Duration and it can be added or subtracted
553
+ # from a Timestamp. Range is approximately +-10,000 years.
508
554
  class Duration
509
555
  include Google::Apis::Core::Hashable
510
556
 
511
- # Signed fractions of a second at nanosecond resolution of the span of time.
512
- # Durations less than one second are represented with a 0 `seconds` field and a
513
- # positive or negative `nanos` field. For durations of one second or more, a non-
514
- # zero value for the `nanos` field must be of the same sign as the `seconds`
515
- # field. Must be from -999,999,999 to +999,999,999 inclusive.
557
+ # Signed fractions of a second at nanosecond resolution of the span
558
+ # of time. Durations less than one second are represented with a 0
559
+ # `seconds` field and a positive or negative `nanos` field. For durations
560
+ # of one second or more, a non-zero value for the `nanos` field must be
561
+ # of the same sign as the `seconds` field. Must be from -999,999,999
562
+ # to +999,999,999 inclusive.
516
563
  # Corresponds to the JSON property `nanos`
517
564
  # @return [Fixnum]
518
565
  attr_accessor :nanos
519
566
 
520
- # Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,
521
- # 000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/
522
- # hr * 24 hr/day * 365.25 days/year * 10000 years
567
+ # Signed seconds of the span of time. Must be from -315,576,000,000
568
+ # to +315,576,000,000 inclusive. Note: these bounds are computed from:
569
+ # 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
523
570
  # Corresponds to the JSON property `seconds`
524
571
  # @return [Fixnum]
525
572
  attr_accessor :seconds
@@ -535,138 +582,107 @@ module Google
535
582
  end
536
583
  end
537
584
 
585
+ # Additional details about encountered login screens.
586
+ class EncounteredLoginScreen
587
+ include Google::Apis::Core::Hashable
588
+
589
+ # Number of encountered distinct login screens.
590
+ # Corresponds to the JSON property `distinctScreens`
591
+ # @return [Fixnum]
592
+ attr_accessor :distinct_screens
593
+
594
+ # Subset of login screens.
595
+ # Corresponds to the JSON property `screenIds`
596
+ # @return [Array<String>]
597
+ attr_accessor :screen_ids
598
+
599
+ def initialize(**args)
600
+ update!(**args)
601
+ end
602
+
603
+ # Update properties of this object
604
+ def update!(**args)
605
+ @distinct_screens = args[:distinct_screens] if args.key?(:distinct_screens)
606
+ @screen_ids = args[:screen_ids] if args.key?(:screen_ids)
607
+ end
608
+ end
609
+
610
+ # Additional details about encountered screens with elements that are not
611
+ # Android UI widgets.
612
+ class EncounteredNonAndroidUiWidgetScreen
613
+ include Google::Apis::Core::Hashable
614
+
615
+ # Number of encountered distinct screens with non Android UI widgets.
616
+ # Corresponds to the JSON property `distinctScreens`
617
+ # @return [Fixnum]
618
+ attr_accessor :distinct_screens
619
+
620
+ # Subset of screens which contain non Android UI widgets.
621
+ # Corresponds to the JSON property `screenIds`
622
+ # @return [Array<String>]
623
+ attr_accessor :screen_ids
624
+
625
+ def initialize(**args)
626
+ update!(**args)
627
+ end
628
+
629
+ # Update properties of this object
630
+ def update!(**args)
631
+ @distinct_screens = args[:distinct_screens] if args.key?(:distinct_screens)
632
+ @screen_ids = args[:screen_ids] if args.key?(:screen_ids)
633
+ end
634
+ end
635
+
538
636
  # An Environment represents the set of test runs (Steps) from the parent
539
- # Execution that are configured with the same set of dimensions (Model, Version,
540
- # Locale, and Orientation). Multiple such runs occur particularly because of
541
- # features like sharding (splitting up a test suite to run in parallel across
542
- # devices) and reruns (running a test multiple times to check for different
543
- # outcomes).
637
+ # Execution that are configured with the same set of dimensions (Model,
638
+ # Version, Locale, and Orientation). Multiple such runs occur particularly
639
+ # because of features like sharding (splitting up a test suite to run in
640
+ # parallel across devices) and reruns (running a test multiple times to check
641
+ # for different outcomes).
544
642
  class Environment
545
643
  include Google::Apis::Core::Hashable
546
644
 
547
645
  # A Timestamp represents a point in time independent of any time zone or local
548
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
549
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
550
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
551
- # backwards to year one.
646
+ # calendar, encoded as a count of seconds and fractions of seconds at
647
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
648
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
649
+ # Gregorian calendar backwards to year one.
552
650
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
553
- # second table is needed for interpretation, using a [24-hour linear smear](
554
- # https://developers.google.com/time/smear).
651
+ # second table is needed for interpretation, using a [24-hour linear
652
+ # smear](https://developers.google.com/time/smear).
555
653
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
556
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
557
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
558
- # # Examples
559
- # Example 1: Compute Timestamp from POSIX `time()`.
560
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
561
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
562
- # struct timeval tv; gettimeofday(&tv, NULL);
563
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
564
- # tv_usec * 1000);
565
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
566
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
567
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
568
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
569
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
570
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
571
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
572
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
573
- # long millis = System.currentTimeMillis();
574
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
575
- # setNanos((int) ((millis % 1000) * 1000000)).build();
576
- # Example 5: Compute Timestamp from current time in Python.
577
- # timestamp = Timestamp() timestamp.GetCurrentTime()
578
- # # JSON Mapping
579
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
580
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
581
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
582
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
583
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
584
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
585
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
586
- # serializer should always use UTC (as indicated by "Z") when printing the
587
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
588
- # other timezones (as indicated by an offset).
589
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
590
- # January 15, 2017.
591
- # In JavaScript, one can convert a Date object to this format using the standard
592
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
593
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
594
- # datetime.datetime` object can be converted to this format using [`strftime`](
595
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
596
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
597
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
598
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
599
- # formatter capable of generating timestamps in this format.
654
+ # restricting to that range, we ensure that we can convert to and from [RFC
655
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
600
656
  # Corresponds to the JSON property `completionTime`
601
657
  # @return [Google::Apis::ToolresultsV1beta3::Timestamp]
602
658
  attr_accessor :completion_time
603
659
 
604
660
  # A Timestamp represents a point in time independent of any time zone or local
605
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
606
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
607
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
608
- # backwards to year one.
661
+ # calendar, encoded as a count of seconds and fractions of seconds at
662
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
663
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
664
+ # Gregorian calendar backwards to year one.
609
665
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
610
- # second table is needed for interpretation, using a [24-hour linear smear](
611
- # https://developers.google.com/time/smear).
666
+ # second table is needed for interpretation, using a [24-hour linear
667
+ # smear](https://developers.google.com/time/smear).
612
668
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
613
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
614
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
615
- # # Examples
616
- # Example 1: Compute Timestamp from POSIX `time()`.
617
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
618
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
619
- # struct timeval tv; gettimeofday(&tv, NULL);
620
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
621
- # tv_usec * 1000);
622
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
623
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
624
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
625
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
626
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
627
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
628
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
629
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
630
- # long millis = System.currentTimeMillis();
631
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
632
- # setNanos((int) ((millis % 1000) * 1000000)).build();
633
- # Example 5: Compute Timestamp from current time in Python.
634
- # timestamp = Timestamp() timestamp.GetCurrentTime()
635
- # # JSON Mapping
636
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
637
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
638
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
639
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
640
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
641
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
642
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
643
- # serializer should always use UTC (as indicated by "Z") when printing the
644
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
645
- # other timezones (as indicated by an offset).
646
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
647
- # January 15, 2017.
648
- # In JavaScript, one can convert a Date object to this format using the standard
649
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
650
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
651
- # datetime.datetime` object can be converted to this format using [`strftime`](
652
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
653
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
654
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
655
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
656
- # formatter capable of generating timestamps in this format.
669
+ # restricting to that range, we ensure that we can convert to and from [RFC
670
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
657
671
  # Corresponds to the JSON property `creationTime`
658
672
  # @return [Google::Apis::ToolresultsV1beta3::Timestamp]
659
673
  attr_accessor :creation_time
660
674
 
661
- # Dimension values describing the environment. Dimension values always consist
662
- # of "Model", "Version", "Locale", and "Orientation".
663
- # - In response: always set - In create request: always set - In update request:
664
- # never set
675
+ # Dimension values describing the environment. Dimension values always
676
+ # consist of "Model", "Version", "Locale", and "Orientation".
677
+ # - In response: always set
678
+ # - In create request: always set
679
+ # - In update request: never set
665
680
  # Corresponds to the JSON property `dimensionValue`
666
681
  # @return [Array<Google::Apis::ToolresultsV1beta3::EnvironmentDimensionValueEntry>]
667
682
  attr_accessor :dimension_value
668
683
 
669
- # A short human-readable name to display in the UI. Maximum of 100 characters.
684
+ # A short human-readable name to display in the UI.
685
+ # Maximum of 100 characters.
670
686
  # For example: Nexus 5, API 27.
671
687
  # Corresponds to the JSON property `displayName`
672
688
  # @return [String]
@@ -759,131 +775,62 @@ module Google
759
775
  end
760
776
 
761
777
  # An Execution represents a collection of Steps. For instance, it could
762
- # represent: - a mobile test executed across a range of device configurations -
763
- # a jenkins job with a build step followed by a test step
778
+ # represent:
779
+ # - a mobile test executed across a range of device configurations
780
+ # - a jenkins job with a build step followed by a test step
764
781
  # The maximum size of an execution message is 1 MiB.
765
- # An Execution can be updated until its state is set to COMPLETE at which point
766
- # it becomes immutable.
782
+ # An Execution can be updated until its state is set to COMPLETE at which
783
+ # point it becomes immutable.
767
784
  class Execution
768
785
  include Google::Apis::Core::Hashable
769
786
 
770
787
  # A Timestamp represents a point in time independent of any time zone or local
771
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
772
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
773
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
774
- # backwards to year one.
788
+ # calendar, encoded as a count of seconds and fractions of seconds at
789
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
790
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
791
+ # Gregorian calendar backwards to year one.
775
792
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
776
- # second table is needed for interpretation, using a [24-hour linear smear](
777
- # https://developers.google.com/time/smear).
793
+ # second table is needed for interpretation, using a [24-hour linear
794
+ # smear](https://developers.google.com/time/smear).
778
795
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
779
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
780
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
781
- # # Examples
782
- # Example 1: Compute Timestamp from POSIX `time()`.
783
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
784
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
785
- # struct timeval tv; gettimeofday(&tv, NULL);
786
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
787
- # tv_usec * 1000);
788
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
789
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
790
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
791
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
792
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
793
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
794
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
795
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
796
- # long millis = System.currentTimeMillis();
797
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
798
- # setNanos((int) ((millis % 1000) * 1000000)).build();
799
- # Example 5: Compute Timestamp from current time in Python.
800
- # timestamp = Timestamp() timestamp.GetCurrentTime()
801
- # # JSON Mapping
802
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
803
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
804
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
805
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
806
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
807
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
808
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
809
- # serializer should always use UTC (as indicated by "Z") when printing the
810
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
811
- # other timezones (as indicated by an offset).
812
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
813
- # January 15, 2017.
814
- # In JavaScript, one can convert a Date object to this format using the standard
815
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
816
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
817
- # datetime.datetime` object can be converted to this format using [`strftime`](
818
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
819
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
820
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
821
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
822
- # formatter capable of generating timestamps in this format.
796
+ # restricting to that range, we ensure that we can convert to and from [RFC
797
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
823
798
  # Corresponds to the JSON property `completionTime`
824
799
  # @return [Google::Apis::ToolresultsV1beta3::Timestamp]
825
800
  attr_accessor :completion_time
826
801
 
827
802
  # A Timestamp represents a point in time independent of any time zone or local
828
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
829
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
830
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
831
- # backwards to year one.
803
+ # calendar, encoded as a count of seconds and fractions of seconds at
804
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
805
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
806
+ # Gregorian calendar backwards to year one.
832
807
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
833
- # second table is needed for interpretation, using a [24-hour linear smear](
834
- # https://developers.google.com/time/smear).
808
+ # second table is needed for interpretation, using a [24-hour linear
809
+ # smear](https://developers.google.com/time/smear).
835
810
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
836
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
837
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
838
- # # Examples
839
- # Example 1: Compute Timestamp from POSIX `time()`.
840
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
841
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
842
- # struct timeval tv; gettimeofday(&tv, NULL);
843
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
844
- # tv_usec * 1000);
845
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
846
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
847
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
848
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
849
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
850
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
851
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
852
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
853
- # long millis = System.currentTimeMillis();
854
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
855
- # setNanos((int) ((millis % 1000) * 1000000)).build();
856
- # Example 5: Compute Timestamp from current time in Python.
857
- # timestamp = Timestamp() timestamp.GetCurrentTime()
858
- # # JSON Mapping
859
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
860
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
861
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
862
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
863
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
864
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
865
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
866
- # serializer should always use UTC (as indicated by "Z") when printing the
867
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
868
- # other timezones (as indicated by an offset).
869
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
870
- # January 15, 2017.
871
- # In JavaScript, one can convert a Date object to this format using the standard
872
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
873
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
874
- # datetime.datetime` object can be converted to this format using [`strftime`](
875
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
876
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
877
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
878
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
879
- # formatter capable of generating timestamps in this format.
811
+ # restricting to that range, we ensure that we can convert to and from [RFC
812
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
880
813
  # Corresponds to the JSON property `creationTime`
881
814
  # @return [Google::Apis::ToolresultsV1beta3::Timestamp]
882
815
  attr_accessor :creation_time
883
816
 
817
+ # The dimensions along which different steps in this execution may vary.
818
+ # This must remain fixed over the life of the execution.
819
+ # Returns INVALID_ARGUMENT if this field is set in an update request.
820
+ # Returns INVALID_ARGUMENT if the same name occurs in more than one
821
+ # dimension_definition.
822
+ # Returns INVALID_ARGUMENT if the size of the list is over 100.
823
+ # - In response: present if set by create
824
+ # - In create request: optional
825
+ # - In update request: never set
826
+ # Corresponds to the JSON property `dimensionDefinitions`
827
+ # @return [Array<Google::Apis::ToolresultsV1beta3::MatrixDimensionDefinition>]
828
+ attr_accessor :dimension_definitions
829
+
884
830
  # A unique identifier within a History for this Execution.
885
831
  # Returns INVALID_ARGUMENT if this field is set or overwritten by the caller.
886
- # - In response always set - In create/update request: never set
832
+ # - In response always set
833
+ # - In create/update request: never set
887
834
  # Corresponds to the JSON property `executionId`
888
835
  # @return [String]
889
836
  attr_accessor :execution_id
@@ -900,20 +847,23 @@ module Google
900
847
 
901
848
  # The initial state is IN_PROGRESS.
902
849
  # The only legal state transitions is from IN_PROGRESS to COMPLETE.
903
- # A PRECONDITION_FAILED will be returned if an invalid transition is requested.
850
+ # A PRECONDITION_FAILED will be returned if an invalid transition is
851
+ # requested.
904
852
  # The state can only be set to COMPLETE once. A FAILED_PRECONDITION will be
905
853
  # returned if the state is set to COMPLETE multiple times.
906
854
  # If the state is set to COMPLETE, all the in-progress steps within the
907
- # execution will be set as COMPLETE. If the outcome of the step is not set, the
908
- # outcome will be set to INCONCLUSIVE.
909
- # - In response always set - In create/update request: optional
855
+ # execution will be set as COMPLETE. If the outcome of the step is not set,
856
+ # the outcome will be set to INCONCLUSIVE.
857
+ # - In response always set
858
+ # - In create/update request: optional
910
859
  # Corresponds to the JSON property `state`
911
860
  # @return [String]
912
861
  attr_accessor :state
913
862
 
914
863
  # TestExecution Matrix ID that the TestExecutionService uses.
915
- # - In response: present if set by create - In create: optional - In update:
916
- # never set
864
+ # - In response: present if set by create
865
+ # - In create: optional
866
+ # - In update: never set
917
867
  # Corresponds to the JSON property `testExecutionMatrixId`
918
868
  # @return [String]
919
869
  attr_accessor :test_execution_matrix_id
@@ -926,6 +876,7 @@ module Google
926
876
  def update!(**args)
927
877
  @completion_time = args[:completion_time] if args.key?(:completion_time)
928
878
  @creation_time = args[:creation_time] if args.key?(:creation_time)
879
+ @dimension_definitions = args[:dimension_definitions] if args.key?(:dimension_definitions)
929
880
  @execution_id = args[:execution_id] if args.key?(:execution_id)
930
881
  @outcome = args[:outcome] if args.key?(:outcome)
931
882
  @specification = args[:specification] if args.key?(:specification)
@@ -934,6 +885,19 @@ module Google
934
885
  end
935
886
  end
936
887
 
888
+ # Failed to install the APK.
889
+ class FailedToInstall
890
+ include Google::Apis::Core::Hashable
891
+
892
+ def initialize(**args)
893
+ update!(**args)
894
+ end
895
+
896
+ # Update properties of this object
897
+ def update!(**args)
898
+ end
899
+ end
900
+
937
901
  # Details for an outcome with a FAILURE outcome summary.
938
902
  class FailureDetail
939
903
  include Google::Apis::Core::Hashable
@@ -944,8 +908,8 @@ module Google
944
908
  attr_accessor :crashed
945
909
  alias_method :crashed?, :crashed
946
910
 
947
- # If an app is not installed and thus no test can be run with the app. This
948
- # might be caused by trying to run a test on an unsupported platform.
911
+ # If an app is not installed and thus no test can be run with the app.
912
+ # This might be caused by trying to run a test on an unsupported platform.
949
913
  # Corresponds to the JSON property `notInstalled`
950
914
  # @return [Boolean]
951
915
  attr_accessor :not_installed
@@ -963,7 +927,8 @@ module Google
963
927
  attr_accessor :timed_out
964
928
  alias_method :timed_out?, :timed_out
965
929
 
966
- # If the robo was unable to crawl the app; perhaps because the app did not start.
930
+ # If the robo was unable to crawl the app; perhaps because the app did not
931
+ # start.
967
932
  # Corresponds to the JSON property `unableToCrawl`
968
933
  # @return [Boolean]
969
934
  attr_accessor :unable_to_crawl
@@ -983,16 +948,38 @@ module Google
983
948
  end
984
949
  end
985
950
 
951
+ # Additional details for a fatal exception.
952
+ class FatalException
953
+ include Google::Apis::Core::Hashable
954
+
955
+ # A stacktrace.
956
+ # Corresponds to the JSON property `stackTrace`
957
+ # @return [Google::Apis::ToolresultsV1beta3::StackTrace]
958
+ attr_accessor :stack_trace
959
+
960
+ def initialize(**args)
961
+ update!(**args)
962
+ end
963
+
964
+ # Update properties of this object
965
+ def update!(**args)
966
+ @stack_trace = args[:stack_trace] if args.key?(:stack_trace)
967
+ end
968
+ end
969
+
986
970
  # A reference to a file.
987
971
  class FileReference
988
972
  include Google::Apis::Core::Hashable
989
973
 
990
974
  # The URI of a file stored in Google Cloud Storage.
991
- # For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in
992
- # gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://
993
- # mybucket/path/to/test.xml#1360383693690000
994
- # An INVALID_ARGUMENT error will be returned if the URI format is not supported.
995
- # - In response: always set - In create/update request: always set
975
+ # For example: http://storage.googleapis.com/mybucket/path/to/test.xml
976
+ # or in gsutil format: gs://mybucket/path/to/test.xml
977
+ # with version-specific info,
978
+ # gs://mybucket/path/to/test.xml#1360383693690000
979
+ # An INVALID_ARGUMENT error will be returned if the URI format is not
980
+ # supported.
981
+ # - In response: always set
982
+ # - In create/update request: always set
996
983
  # Corresponds to the JSON property `fileUri`
997
984
  # @return [String]
998
985
  attr_accessor :file_uri
@@ -1007,14 +994,16 @@ module Google
1007
994
  end
1008
995
  end
1009
996
 
1010
- # Graphics statistics for the App. The information is collected from 'adb shell
1011
- # dumpsys graphicsstats'. For more info see: https://developer.android.com/
1012
- # training/testing/performance.html Statistics will only be present for API 23+.
997
+ # Graphics statistics for the App.
998
+ # The information is collected from 'adb shell dumpsys graphicsstats'.
999
+ # For more info see:
1000
+ # https://developer.android.com/training/testing/performance.html
1001
+ # Statistics will only be present for API 23+.
1013
1002
  class GraphicsStats
1014
1003
  include Google::Apis::Core::Hashable
1015
1004
 
1016
- # Histogram of frame render times. There should be 154 buckets ranging from [5ms,
1017
- # 6ms) to [4950ms, infinity)
1005
+ # Histogram of frame render times. There should be 154 buckets ranging from
1006
+ # [5ms, 6ms) to [4950ms, infinity)
1018
1007
  # Corresponds to the JSON property `buckets`
1019
1008
  # @return [Array<Google::Apis::ToolresultsV1beta3::GraphicsStatsBucket>]
1020
1009
  attr_accessor :buckets
@@ -1124,28 +1113,31 @@ module Google
1124
1113
  # start_timestamp_millis field (descending). It can be used to group all the
1125
1114
  # Executions of a continuous build.
1126
1115
  # Note that the ordering only operates on one-dimension. If a repository has
1127
- # multiple branches, it means that multiple histories will need to be used in
1128
- # order to order Executions per branch.
1116
+ # multiple branches, it means that multiple histories will need to be
1117
+ # used in order to order Executions per branch.
1129
1118
  class History
1130
1119
  include Google::Apis::Core::Hashable
1131
1120
 
1132
- # A short human-readable (plain text) name to display in the UI. Maximum of 100
1133
- # characters.
1134
- # - In response: present if set during create. - In create request: optional
1121
+ # A short human-readable (plain text) name to display in the UI.
1122
+ # Maximum of 100 characters.
1123
+ # - In response: present if set during create.
1124
+ # - In create request: optional
1135
1125
  # Corresponds to the JSON property `displayName`
1136
1126
  # @return [String]
1137
1127
  attr_accessor :display_name
1138
1128
 
1139
1129
  # A unique identifier within a project for this History.
1140
1130
  # Returns INVALID_ARGUMENT if this field is set or overwritten by the caller.
1141
- # - In response always set - In create request: never set
1131
+ # - In response always set
1132
+ # - In create request: never set
1142
1133
  # Corresponds to the JSON property `historyId`
1143
1134
  # @return [String]
1144
1135
  attr_accessor :history_id
1145
1136
 
1146
- # A name to uniquely identify a history within a project. Maximum of 200
1147
- # characters.
1148
- # - In response always set - In create request: always set
1137
+ # A name to uniquely identify a history within a project.
1138
+ # Maximum of 200 characters.
1139
+ # - In response always set
1140
+ # - In create request: always set
1149
1141
  # Corresponds to the JSON property `name`
1150
1142
  # @return [String]
1151
1143
  attr_accessor :name
@@ -1166,12 +1158,12 @@ module Google
1166
1158
  class Image
1167
1159
  include Google::Apis::Core::Hashable
1168
1160
 
1169
- # The `Status` type defines a logical error model that is suitable for different
1170
- # programming environments, including REST APIs and RPC APIs. It is used by [
1171
- # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1172
- # data: error code, error message, and error details.
1173
- # You can find out more about this error model and how to work with it in the [
1174
- # API Design Guide](https://cloud.google.com/apis/design/errors).
1161
+ # The `Status` type defines a logical error model that is suitable for
1162
+ # different programming environments, including REST APIs and RPC APIs. It is
1163
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1164
+ # three pieces of data: error code, error message, and error details.
1165
+ # You can find out more about this error model and how to work with it in the
1166
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
1175
1167
  # Corresponds to the JSON property `error`
1176
1168
  # @return [Google::Apis::ToolresultsV1beta3::Status]
1177
1169
  attr_accessor :error
@@ -1205,20 +1197,47 @@ module Google
1205
1197
  end
1206
1198
  end
1207
1199
 
1200
+ # Additional details of in-app purchases encountered during the crawl.
1201
+ class InAppPurchasesFound
1202
+ include Google::Apis::Core::Hashable
1203
+
1204
+ # The total number of in-app purchases flows explored: how many times the
1205
+ # robo tries to buy a SKU.
1206
+ # Corresponds to the JSON property `inAppPurchasesFlowsExplored`
1207
+ # @return [Fixnum]
1208
+ attr_accessor :in_app_purchases_flows_explored
1209
+
1210
+ # The total number of in-app purchases flows started.
1211
+ # Corresponds to the JSON property `inAppPurchasesFlowsStarted`
1212
+ # @return [Fixnum]
1213
+ attr_accessor :in_app_purchases_flows_started
1214
+
1215
+ def initialize(**args)
1216
+ update!(**args)
1217
+ end
1218
+
1219
+ # Update properties of this object
1220
+ def update!(**args)
1221
+ @in_app_purchases_flows_explored = args[:in_app_purchases_flows_explored] if args.key?(:in_app_purchases_flows_explored)
1222
+ @in_app_purchases_flows_started = args[:in_app_purchases_flows_started] if args.key?(:in_app_purchases_flows_started)
1223
+ end
1224
+ end
1225
+
1208
1226
  # Details for an outcome with an INCONCLUSIVE outcome summary.
1209
1227
  class InconclusiveDetail
1210
1228
  include Google::Apis::Core::Hashable
1211
1229
 
1212
1230
  # If the end user aborted the test execution before a pass or fail could be
1213
- # determined. For example, the user pressed ctrl-c which sent a kill signal to
1214
- # the test runner while the test was running.
1231
+ # determined.
1232
+ # For example, the user pressed ctrl-c which sent a kill signal to the test
1233
+ # runner while the test was running.
1215
1234
  # Corresponds to the JSON property `abortedByUser`
1216
1235
  # @return [Boolean]
1217
1236
  attr_accessor :aborted_by_user
1218
1237
  alias_method :aborted_by_user?, :aborted_by_user
1219
1238
 
1220
- # If results are being provided to the user in certain cases of infrastructure
1221
- # failures
1239
+ # If results are being provided to the user in certain cases of
1240
+ # infrastructure failures
1222
1241
  # Corresponds to the JSON property `hasErrorLogs`
1223
1242
  # @return [Boolean]
1224
1243
  attr_accessor :has_error_logs
@@ -1245,13 +1264,14 @@ module Google
1245
1264
  end
1246
1265
  end
1247
1266
 
1248
- # Step Id and outcome of each individual step that was run as a group with other
1249
- # steps with the same configuration.
1267
+ # Step Id and outcome of each individual step that was run as a group with
1268
+ # other steps with the same configuration.
1250
1269
  class IndividualOutcome
1251
1270
  include Google::Apis::Core::Hashable
1252
1271
 
1253
- # Unique int given to each step. Ranges from 0(inclusive) to total number of
1254
- # steps(exclusive). The primary step is 0.
1272
+ # Unique int given to each step.
1273
+ # Ranges from 0(inclusive) to total number of steps(exclusive).
1274
+ # The primary step is 0.
1255
1275
  # Corresponds to the JSON property `multistepNumber`
1256
1276
  # @return [Fixnum]
1257
1277
  attr_accessor :multistep_number
@@ -1261,36 +1281,12 @@ module Google
1261
1281
  # @return [String]
1262
1282
  attr_accessor :outcome_summary
1263
1283
 
1264
- # A Duration represents a signed, fixed-length span of time represented as a
1265
- # count of seconds and fractions of seconds at nanosecond resolution. It is
1266
- # independent of any calendar and concepts like "day" or "month". It is related
1267
- # to Timestamp in that the difference between two Timestamp values is a Duration
1268
- # and it can be added or subtracted from a Timestamp. Range is approximately +-
1269
- # 10,000 years.
1270
- # # Examples
1271
- # Example 1: Compute Duration from two Timestamps in pseudo code.
1272
- # Timestamp start = ...; Timestamp end = ...; Duration duration = ...;
1273
- # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos -
1274
- # start.nanos;
1275
- # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000;
1276
- # ` else if (duration.seconds > 0 && duration.nanos < 0) ` duration.seconds -=
1277
- # 1; duration.nanos += 1000000000; `
1278
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
1279
- # Timestamp start = ...; Duration duration = ...; Timestamp end = ...;
1280
- # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos +
1281
- # duration.nanos;
1282
- # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; `
1283
- # Example 3: Compute Duration from datetime.timedelta in Python.
1284
- # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.
1285
- # FromTimedelta(td)
1286
- # # JSON Mapping
1287
- # In JSON format, the Duration type is encoded as a string rather than an object,
1288
- # where the string ends in the suffix "s" (indicating seconds) and is preceded
1289
- # by the number of seconds, with nanoseconds expressed as fractional seconds.
1290
- # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "
1291
- # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.
1292
- # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON
1293
- # format as "3.000001s".
1284
+ # A Duration represents a signed, fixed-length span of time represented
1285
+ # as a count of seconds and fractions of seconds at nanosecond
1286
+ # resolution. It is independent of any calendar and concepts like "day"
1287
+ # or "month". It is related to Timestamp in that the difference between
1288
+ # two Timestamp values is a Duration and it can be added or subtracted
1289
+ # from a Timestamp. Range is approximately +-10,000 years.
1294
1290
  # Corresponds to the JSON property `runDuration`
1295
1291
  # @return [Google::Apis::ToolresultsV1beta3::Duration]
1296
1292
  attr_accessor :run_duration
@@ -1313,6 +1309,51 @@ module Google
1313
1309
  end
1314
1310
  end
1315
1311
 
1312
+ # A warning that Robo did not crawl potentially important parts of the app.
1313
+ class InsufficientCoverage
1314
+ include Google::Apis::Core::Hashable
1315
+
1316
+ def initialize(**args)
1317
+ update!(**args)
1318
+ end
1319
+
1320
+ # Update properties of this object
1321
+ def update!(**args)
1322
+ end
1323
+ end
1324
+
1325
+ # Additional details for an iOS app crash.
1326
+ class IosAppCrashed
1327
+ include Google::Apis::Core::Hashable
1328
+
1329
+ # A stacktrace.
1330
+ # Corresponds to the JSON property `stackTrace`
1331
+ # @return [Google::Apis::ToolresultsV1beta3::StackTrace]
1332
+ attr_accessor :stack_trace
1333
+
1334
+ def initialize(**args)
1335
+ update!(**args)
1336
+ end
1337
+
1338
+ # Update properties of this object
1339
+ def update!(**args)
1340
+ @stack_trace = args[:stack_trace] if args.key?(:stack_trace)
1341
+ end
1342
+ end
1343
+
1344
+ # Failed to find the launcher activity of an app.
1345
+ class LauncherActivityNotFound
1346
+ include Google::Apis::Core::Hashable
1347
+
1348
+ def initialize(**args)
1349
+ update!(**args)
1350
+ end
1351
+
1352
+ # Update properties of this object
1353
+ def update!(**args)
1354
+ end
1355
+ end
1356
+
1316
1357
  # Response message for EnvironmentService.ListEnvironments.
1317
1358
  class ListEnvironmentsResponse
1318
1359
  include Google::Apis::Core::Hashable
@@ -1399,10 +1440,10 @@ module Google
1399
1440
 
1400
1441
  # A continuation token to resume the query at the next item.
1401
1442
  # Will only be set if there are more histories to fetch.
1402
- # Tokens are valid for up to one hour from the time of the first list request.
1403
- # For instance, if you make a list request at 1PM and use the token from this
1404
- # first request 10 minutes later, the token from this second response will only
1405
- # be valid for 50 minutes.
1443
+ # Tokens are valid for up to one hour from the time of the first list
1444
+ # request. For instance, if you make a list request at 1PM and use the token
1445
+ # from this first request 10 minutes later, the token from this second
1446
+ # response will only be valid for 50 minutes.
1406
1447
  # Corresponds to the JSON property `nextPageToken`
1407
1448
  # @return [String]
1408
1449
  attr_accessor :next_page_token
@@ -1442,8 +1483,8 @@ module Google
1442
1483
  include Google::Apis::Core::Hashable
1443
1484
 
1444
1485
  # Optional, returned if result size exceeds the page size specified in the
1445
- # request (or the default page size, 500, if unspecified). It indicates the last
1446
- # sample timestamp to be used as page_token in subsequent request
1486
+ # request (or the default page size, 500, if unspecified). It indicates the
1487
+ # last sample timestamp to be used as page_token in subsequent request
1447
1488
  # Corresponds to the JSON property `nextPageToken`
1448
1489
  # @return [String]
1449
1490
  attr_accessor :next_page_token
@@ -1468,7 +1509,8 @@ module Google
1468
1509
  class ListScreenshotClustersResponse
1469
1510
  include Google::Apis::Core::Hashable
1470
1511
 
1471
- # The set of clusters associated with an execution Always set
1512
+ # The set of clusters associated with an execution
1513
+ # Always set
1472
1514
  # Corresponds to the JSON property `clusters`
1473
1515
  # @return [Array<Google::Apis::ToolresultsV1beta3::ScreenshotCluster>]
1474
1516
  attr_accessor :clusters
@@ -1487,17 +1529,19 @@ module Google
1487
1529
  class ListStepAccessibilityClustersResponse
1488
1530
  include Google::Apis::Core::Hashable
1489
1531
 
1490
- # A sequence of accessibility suggestions, grouped into clusters. Within the
1491
- # sequence, clusters that belong to the same SuggestionCategory should be
1492
- # adjacent. Within each category, clusters should be ordered by their
1493
- # SuggestionPriority (ERRORs first). The categories should be ordered by their
1494
- # highest priority cluster.
1532
+ # A sequence of accessibility suggestions, grouped into clusters.
1533
+ # Within the sequence, clusters that belong to the same SuggestionCategory
1534
+ # should be adjacent.
1535
+ # Within each category, clusters should be ordered by their
1536
+ # SuggestionPriority (ERRORs first).
1537
+ # The categories should be ordered by their highest priority cluster.
1495
1538
  # Corresponds to the JSON property `clusters`
1496
1539
  # @return [Array<Google::Apis::ToolresultsV1beta3::SuggestionClusterProto>]
1497
1540
  attr_accessor :clusters
1498
1541
 
1499
- # A full resource name of the step. For example, projects/my-project/histories/
1500
- # bh.1234567890abcdef/executions/ 1234567890123456789/steps/bs.1234567890abcdef
1542
+ # A full resource name of the step.
1543
+ # For example, projects/my-project/histories/bh.1234567890abcdef/executions/
1544
+ # 1234567890123456789/steps/bs.1234567890abcdef
1501
1545
  # Always presents.
1502
1546
  # Corresponds to the JSON property `name`
1503
1547
  # @return [String]
@@ -1527,11 +1571,14 @@ module Google
1527
1571
 
1528
1572
  # A list of image data.
1529
1573
  # Images are returned in a deterministic order; they are ordered by these
1530
- # factors, in order of importance: * First, by their associated test case.
1531
- # Images without a test case are considered greater than images with one. *
1532
- # Second, by their creation time. Images without a creation time are greater
1533
- # than images with one. * Third, by the order in which they were added to the
1534
- # step (by calls to CreateStep or UpdateStep).
1574
+ # factors, in order of
1575
+ # importance:
1576
+ # * First, by their associated test case. Images without a test case are
1577
+ # considered greater than images with one.
1578
+ # * Second, by their creation time. Images without a creation time are
1579
+ # greater than images with one.
1580
+ # * Third, by the order in which they were added to the step (by calls to
1581
+ # CreateStep or UpdateStep).
1535
1582
  # Corresponds to the JSON property `thumbnails`
1536
1583
  # @return [Array<Google::Apis::ToolresultsV1beta3::Image>]
1537
1584
  attr_accessor :thumbnails
@@ -1599,6 +1646,19 @@ module Google
1599
1646
  end
1600
1647
  end
1601
1648
 
1649
+ # One dimension of the matrix of different runs of a step.
1650
+ class MatrixDimensionDefinition
1651
+ include Google::Apis::Core::Hashable
1652
+
1653
+ def initialize(**args)
1654
+ update!(**args)
1655
+ end
1656
+
1657
+ # Update properties of this object
1658
+ def update!(**args)
1659
+ end
1660
+ end
1661
+
1602
1662
  #
1603
1663
  class MemoryInfo
1604
1664
  include Google::Apis::Core::Hashable
@@ -1642,16 +1702,17 @@ module Google
1642
1702
  # @return [String]
1643
1703
  attr_accessor :state
1644
1704
 
1645
- # The combined and rolled-up result of each test suite that was run as part of
1646
- # this environment.
1647
- # Combining: When the test cases from a suite are run in different steps (
1648
- # sharding), the results are added back together in one overview. (e.g., if
1649
- # shard1 has 2 failures and shard2 has 1 failure than the overview failure_count
1650
- # = 3).
1651
- # Rollup: When test cases from the same suite are run multiple times (flaky),
1652
- # the results are combined (e.g., if testcase1.run1 fails, testcase1.run2 passes,
1653
- # and both testcase2.run1 and testcase2.run2 fail then the overview flaky_count
1654
- # = 1 and failure_count = 1).
1705
+ # The combined and rolled-up result of each test suite that was run as part
1706
+ # of this environment.
1707
+ # Combining:
1708
+ # When the test cases from a suite are run in different steps (sharding),
1709
+ # the results are added back together in one overview. (e.g., if shard1 has
1710
+ # 2 failures and shard2 has 1 failure than the overview failure_count = 3).
1711
+ # Rollup:
1712
+ # When test cases from the same suite are run multiple times (flaky), the
1713
+ # results are combined (e.g., if testcase1.run1 fails, testcase1.run2
1714
+ # passes, and both testcase2.run1 and testcase2.run2 fail then the overview
1715
+ # flaky_count = 1 and failure_count = 1).
1655
1716
  # Corresponds to the JSON property `testSuiteOverviews`
1656
1717
  # @return [Array<Google::Apis::ToolresultsV1beta3::TestSuiteOverview>]
1657
1718
  attr_accessor :test_suite_overviews
@@ -1672,8 +1733,9 @@ module Google
1672
1733
  class MultiStep
1673
1734
  include Google::Apis::Core::Hashable
1674
1735
 
1675
- # Unique int given to each step. Ranges from 0(inclusive) to total number of
1676
- # steps(exclusive). The primary step is 0.
1736
+ # Unique int given to each step.
1737
+ # Ranges from 0(inclusive) to total number of steps(exclusive).
1738
+ # The primary step is 0.
1677
1739
  # Corresponds to the JSON property `multistepNumber`
1678
1740
  # @return [Fixnum]
1679
1741
  attr_accessor :multistep_number
@@ -1701,6 +1763,174 @@ module Google
1701
1763
  end
1702
1764
  end
1703
1765
 
1766
+ # Additional details for a native crash.
1767
+ class NativeCrash
1768
+ include Google::Apis::Core::Hashable
1769
+
1770
+ # A stacktrace.
1771
+ # Corresponds to the JSON property `stackTrace`
1772
+ # @return [Google::Apis::ToolresultsV1beta3::StackTrace]
1773
+ attr_accessor :stack_trace
1774
+
1775
+ def initialize(**args)
1776
+ update!(**args)
1777
+ end
1778
+
1779
+ # Update properties of this object
1780
+ def update!(**args)
1781
+ @stack_trace = args[:stack_trace] if args.key?(:stack_trace)
1782
+ end
1783
+ end
1784
+
1785
+ # A non-sdk API and examples of it being called along with other metadata
1786
+ # See
1787
+ # https://developer.android.com/distribute/best-practices/develop/restrictions-
1788
+ # non-sdk-interfaces
1789
+ class NonSdkApi
1790
+ include Google::Apis::Core::Hashable
1791
+
1792
+ # The signature of the Non-SDK API
1793
+ # Corresponds to the JSON property `apiSignature`
1794
+ # @return [String]
1795
+ attr_accessor :api_signature
1796
+
1797
+ # Example stack traces of this API being called.
1798
+ # Corresponds to the JSON property `exampleStackTraces`
1799
+ # @return [Array<String>]
1800
+ attr_accessor :example_stack_traces
1801
+
1802
+ # Optional debugging insights for non-SDK API violations.
1803
+ # Corresponds to the JSON property `insights`
1804
+ # @return [Array<Google::Apis::ToolresultsV1beta3::NonSdkApiInsight>]
1805
+ attr_accessor :insights
1806
+
1807
+ # The total number of times this API was observed to have been called.
1808
+ # Corresponds to the JSON property `invocationCount`
1809
+ # @return [Fixnum]
1810
+ attr_accessor :invocation_count
1811
+
1812
+ # Which list this API appears on
1813
+ # Corresponds to the JSON property `list`
1814
+ # @return [String]
1815
+ attr_accessor :list
1816
+
1817
+ def initialize(**args)
1818
+ update!(**args)
1819
+ end
1820
+
1821
+ # Update properties of this object
1822
+ def update!(**args)
1823
+ @api_signature = args[:api_signature] if args.key?(:api_signature)
1824
+ @example_stack_traces = args[:example_stack_traces] if args.key?(:example_stack_traces)
1825
+ @insights = args[:insights] if args.key?(:insights)
1826
+ @invocation_count = args[:invocation_count] if args.key?(:invocation_count)
1827
+ @list = args[:list] if args.key?(:list)
1828
+ end
1829
+ end
1830
+
1831
+ # Non-SDK API insights (to address debugging solutions).
1832
+ class NonSdkApiInsight
1833
+ include Google::Apis::Core::Hashable
1834
+
1835
+ # Optional sample stack traces, for which this insight applies (there
1836
+ # should be at least one).
1837
+ # Corresponds to the JSON property `exampleTraceMessages`
1838
+ # @return [Array<String>]
1839
+ attr_accessor :example_trace_messages
1840
+
1841
+ # A unique ID, to be used for determining the effectiveness of this
1842
+ # particular insight in the context of a matcher. (required)
1843
+ # Corresponds to the JSON property `matcherId`
1844
+ # @return [String]
1845
+ attr_accessor :matcher_id
1846
+
1847
+ # This insight indicates that the hidden API usage originates from a
1848
+ # Google-provided library. Users need not take any action.
1849
+ # Corresponds to the JSON property `pendingGoogleUpdateInsight`
1850
+ # @return [Google::Apis::ToolresultsV1beta3::PendingGoogleUpdateInsight]
1851
+ attr_accessor :pending_google_update_insight
1852
+
1853
+ # This insight is a recommendation to upgrade a given library to the specified
1854
+ # version, in order to avoid dependencies on non-SDK APIs.
1855
+ # Corresponds to the JSON property `upgradeInsight`
1856
+ # @return [Google::Apis::ToolresultsV1beta3::UpgradeInsight]
1857
+ attr_accessor :upgrade_insight
1858
+
1859
+ def initialize(**args)
1860
+ update!(**args)
1861
+ end
1862
+
1863
+ # Update properties of this object
1864
+ def update!(**args)
1865
+ @example_trace_messages = args[:example_trace_messages] if args.key?(:example_trace_messages)
1866
+ @matcher_id = args[:matcher_id] if args.key?(:matcher_id)
1867
+ @pending_google_update_insight = args[:pending_google_update_insight] if args.key?(:pending_google_update_insight)
1868
+ @upgrade_insight = args[:upgrade_insight] if args.key?(:upgrade_insight)
1869
+ end
1870
+ end
1871
+
1872
+ # Additional details for a non-sdk API usage violation.
1873
+ class NonSdkApiUsageViolation
1874
+ include Google::Apis::Core::Hashable
1875
+
1876
+ # Signatures of a subset of those hidden API's.
1877
+ # Corresponds to the JSON property `apiSignatures`
1878
+ # @return [Array<String>]
1879
+ attr_accessor :api_signatures
1880
+
1881
+ # Total number of unique hidden API's accessed.
1882
+ # Corresponds to the JSON property `uniqueApis`
1883
+ # @return [Fixnum]
1884
+ attr_accessor :unique_apis
1885
+
1886
+ def initialize(**args)
1887
+ update!(**args)
1888
+ end
1889
+
1890
+ # Update properties of this object
1891
+ def update!(**args)
1892
+ @api_signatures = args[:api_signatures] if args.key?(:api_signatures)
1893
+ @unique_apis = args[:unique_apis] if args.key?(:unique_apis)
1894
+ end
1895
+ end
1896
+
1897
+ # Contains a summary and examples of non-sdk API usage violations.
1898
+ class NonSdkApiUsageViolationReport
1899
+ include Google::Apis::Core::Hashable
1900
+
1901
+ # Examples of the detected API usages.
1902
+ # Corresponds to the JSON property `exampleApis`
1903
+ # @return [Array<Google::Apis::ToolresultsV1beta3::NonSdkApi>]
1904
+ attr_accessor :example_apis
1905
+
1906
+ # Minimum API level required for the application to run.
1907
+ # Corresponds to the JSON property `minSdkVersion`
1908
+ # @return [Fixnum]
1909
+ attr_accessor :min_sdk_version
1910
+
1911
+ # Specifies the API Level on which the application is designed to run.
1912
+ # Corresponds to the JSON property `targetSdkVersion`
1913
+ # @return [Fixnum]
1914
+ attr_accessor :target_sdk_version
1915
+
1916
+ # Total number of unique Non-SDK API's accessed.
1917
+ # Corresponds to the JSON property `uniqueApis`
1918
+ # @return [Fixnum]
1919
+ attr_accessor :unique_apis
1920
+
1921
+ def initialize(**args)
1922
+ update!(**args)
1923
+ end
1924
+
1925
+ # Update properties of this object
1926
+ def update!(**args)
1927
+ @example_apis = args[:example_apis] if args.key?(:example_apis)
1928
+ @min_sdk_version = args[:min_sdk_version] if args.key?(:min_sdk_version)
1929
+ @target_sdk_version = args[:target_sdk_version] if args.key?(:target_sdk_version)
1930
+ @unique_apis = args[:unique_apis] if args.key?(:unique_apis)
1931
+ end
1932
+ end
1933
+
1704
1934
  # Interprets a result so that humans and machines can act on it.
1705
1935
  class Outcome
1706
1936
  include Google::Apis::Core::Hashable
@@ -1720,7 +1950,8 @@ module Google
1720
1950
  # @return [Google::Apis::ToolresultsV1beta3::SkippedDetail]
1721
1951
  attr_accessor :skipped_detail
1722
1952
 
1723
- # Details for an outcome with a SUCCESS outcome summary. LINT.IfChange
1953
+ # Details for an outcome with a SUCCESS outcome summary.
1954
+ # LINT.IfChange
1724
1955
  # Corresponds to the JSON property `successDetail`
1725
1956
  # @return [Google::Apis::ToolresultsV1beta3::SuccessDetail]
1726
1957
  attr_accessor :success_detail
@@ -1745,6 +1976,52 @@ module Google
1745
1976
  end
1746
1977
  end
1747
1978
 
1979
+ # A warning that Robo encountered a screen that has overlapping clickable
1980
+ # elements; this may indicate a potential UI issue.
1981
+ class OverlappingUiElements
1982
+ include Google::Apis::Core::Hashable
1983
+
1984
+ # Resource names of the overlapping screen elements
1985
+ # Corresponds to the JSON property `resourceName`
1986
+ # @return [Array<String>]
1987
+ attr_accessor :resource_name
1988
+
1989
+ # The screen id of the elements
1990
+ # Corresponds to the JSON property `screenId`
1991
+ # @return [String]
1992
+ attr_accessor :screen_id
1993
+
1994
+ def initialize(**args)
1995
+ update!(**args)
1996
+ end
1997
+
1998
+ # Update properties of this object
1999
+ def update!(**args)
2000
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
2001
+ @screen_id = args[:screen_id] if args.key?(:screen_id)
2002
+ end
2003
+ end
2004
+
2005
+ # This insight indicates that the hidden API usage originates from a
2006
+ # Google-provided library. Users need not take any action.
2007
+ class PendingGoogleUpdateInsight
2008
+ include Google::Apis::Core::Hashable
2009
+
2010
+ # The name of the Google-provided library with the non-SDK API dependency.
2011
+ # Corresponds to the JSON property `nameOfGoogleLibrary`
2012
+ # @return [String]
2013
+ attr_accessor :name_of_google_library
2014
+
2015
+ def initialize(**args)
2016
+ update!(**args)
2017
+ end
2018
+
2019
+ # Update properties of this object
2020
+ def update!(**args)
2021
+ @name_of_google_library = args[:name_of_google_library] if args.key?(:name_of_google_library)
2022
+ end
2023
+ end
2024
+
1748
2025
  # Encapsulates performance environment info
1749
2026
  class PerfEnvironment
1750
2027
  include Google::Apis::Core::Hashable
@@ -1780,18 +2057,22 @@ module Google
1780
2057
  attr_accessor :app_start_time
1781
2058
 
1782
2059
  # A tool results execution ID.
2060
+ # @OutputOnly
1783
2061
  # Corresponds to the JSON property `executionId`
1784
2062
  # @return [String]
1785
2063
  attr_accessor :execution_id
1786
2064
 
1787
- # Graphics statistics for the App. The information is collected from 'adb shell
1788
- # dumpsys graphicsstats'. For more info see: https://developer.android.com/
1789
- # training/testing/performance.html Statistics will only be present for API 23+.
2065
+ # Graphics statistics for the App.
2066
+ # The information is collected from 'adb shell dumpsys graphicsstats'.
2067
+ # For more info see:
2068
+ # https://developer.android.com/training/testing/performance.html
2069
+ # Statistics will only be present for API 23+.
1790
2070
  # Corresponds to the JSON property `graphicsStats`
1791
2071
  # @return [Google::Apis::ToolresultsV1beta3::GraphicsStats]
1792
2072
  attr_accessor :graphics_stats
1793
2073
 
1794
2074
  # A tool results history ID.
2075
+ # @OutputOnly
1795
2076
  # Corresponds to the JSON property `historyId`
1796
2077
  # @return [String]
1797
2078
  attr_accessor :history_id
@@ -1807,11 +2088,13 @@ module Google
1807
2088
  attr_accessor :perf_metrics
1808
2089
 
1809
2090
  # The cloud project
2091
+ # @OutputOnly
1810
2092
  # Corresponds to the JSON property `projectId`
1811
2093
  # @return [String]
1812
2094
  attr_accessor :project_id
1813
2095
 
1814
2096
  # A tool results step ID.
2097
+ # @OutputOnly
1815
2098
  # Corresponds to the JSON property `stepId`
1816
2099
  # @return [String]
1817
2100
  attr_accessor :step_id
@@ -1838,58 +2121,16 @@ module Google
1838
2121
  include Google::Apis::Core::Hashable
1839
2122
 
1840
2123
  # A Timestamp represents a point in time independent of any time zone or local
1841
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
1842
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
1843
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
1844
- # backwards to year one.
2124
+ # calendar, encoded as a count of seconds and fractions of seconds at
2125
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
2126
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
2127
+ # Gregorian calendar backwards to year one.
1845
2128
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
1846
- # second table is needed for interpretation, using a [24-hour linear smear](
1847
- # https://developers.google.com/time/smear).
2129
+ # second table is needed for interpretation, using a [24-hour linear
2130
+ # smear](https://developers.google.com/time/smear).
1848
2131
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
1849
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
1850
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
1851
- # # Examples
1852
- # Example 1: Compute Timestamp from POSIX `time()`.
1853
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
1854
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
1855
- # struct timeval tv; gettimeofday(&tv, NULL);
1856
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
1857
- # tv_usec * 1000);
1858
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
1859
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
1860
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
1861
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
1862
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
1863
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
1864
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
1865
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
1866
- # long millis = System.currentTimeMillis();
1867
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
1868
- # setNanos((int) ((millis % 1000) * 1000000)).build();
1869
- # Example 5: Compute Timestamp from current time in Python.
1870
- # timestamp = Timestamp() timestamp.GetCurrentTime()
1871
- # # JSON Mapping
1872
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
1873
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
1874
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
1875
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
1876
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
1877
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
1878
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
1879
- # serializer should always use UTC (as indicated by "Z") when printing the
1880
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
1881
- # other timezones (as indicated by an offset).
1882
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
1883
- # January 15, 2017.
1884
- # In JavaScript, one can convert a Date object to this format using the standard
1885
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
1886
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
1887
- # datetime.datetime` object can be converted to this format using [`strftime`](
1888
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
1889
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
1890
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
1891
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
1892
- # formatter capable of generating timestamps in this format.
2132
+ # restricting to that range, we ensure that we can convert to and from [RFC
2133
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
1893
2134
  # Corresponds to the JSON property `sampleTime`
1894
2135
  # @return [Google::Apis::ToolresultsV1beta3::Timestamp]
1895
2136
  attr_accessor :sample_time
@@ -1920,26 +2161,31 @@ module Google
1920
2161
  attr_accessor :basic_perf_sample_series
1921
2162
 
1922
2163
  # A tool results execution ID.
2164
+ # @OutputOnly
1923
2165
  # Corresponds to the JSON property `executionId`
1924
2166
  # @return [String]
1925
2167
  attr_accessor :execution_id
1926
2168
 
1927
2169
  # A tool results history ID.
2170
+ # @OutputOnly
1928
2171
  # Corresponds to the JSON property `historyId`
1929
2172
  # @return [String]
1930
2173
  attr_accessor :history_id
1931
2174
 
1932
2175
  # The cloud project
2176
+ # @OutputOnly
1933
2177
  # Corresponds to the JSON property `projectId`
1934
2178
  # @return [String]
1935
2179
  attr_accessor :project_id
1936
2180
 
1937
2181
  # A sample series id
2182
+ # @OutputOnly
1938
2183
  # Corresponds to the JSON property `sampleSeriesId`
1939
2184
  # @return [String]
1940
2185
  attr_accessor :sample_series_id
1941
2186
 
1942
2187
  # A tool results step ID.
2188
+ # @OutputOnly
1943
2189
  # Corresponds to the JSON property `stepId`
1944
2190
  # @return [String]
1945
2191
  attr_accessor :step_id
@@ -1959,6 +2205,38 @@ module Google
1959
2205
  end
1960
2206
  end
1961
2207
 
2208
+ # A notification that Robo signed in with Google.
2209
+ class PerformedGoogleLogin
2210
+ include Google::Apis::Core::Hashable
2211
+
2212
+ def initialize(**args)
2213
+ update!(**args)
2214
+ end
2215
+
2216
+ # Update properties of this object
2217
+ def update!(**args)
2218
+ end
2219
+ end
2220
+
2221
+ # A notification that Robo performed some monkey actions.
2222
+ class PerformedMonkeyActions
2223
+ include Google::Apis::Core::Hashable
2224
+
2225
+ # The total number of monkey actions performed during the crawl.
2226
+ # Corresponds to the JSON property `totalActions`
2227
+ # @return [Fixnum]
2228
+ attr_accessor :total_actions
2229
+
2230
+ def initialize(**args)
2231
+ update!(**args)
2232
+ end
2233
+
2234
+ # Update properties of this object
2235
+ def update!(**args)
2236
+ @total_actions = args[:total_actions] if args.key?(:total_actions)
2237
+ end
2238
+ end
2239
+
1962
2240
  # Stores rollup test status of multiple steps that were run as a group and
1963
2241
  # outcome of each individual step.
1964
2242
  class PrimaryStep
@@ -1969,8 +2247,8 @@ module Google
1969
2247
  # @return [Array<Google::Apis::ToolresultsV1beta3::IndividualOutcome>]
1970
2248
  attr_accessor :individual_outcome
1971
2249
 
1972
- # Rollup test status of multiple steps that were run with the same configuration
1973
- # as a group.
2250
+ # Rollup test status of multiple steps that were run with the same
2251
+ # configuration as a group.
1974
2252
  # Corresponds to the JSON property `rollUp`
1975
2253
  # @return [String]
1976
2254
  attr_accessor :roll_up
@@ -1992,14 +2270,17 @@ module Google
1992
2270
 
1993
2271
  # The name of the Google Cloud Storage bucket to which results are written.
1994
2272
  # By default, this is unset.
1995
- # In update request: optional In response: optional
2273
+ # In update request: optional
2274
+ # In response: optional
1996
2275
  # Corresponds to the JSON property `defaultBucket`
1997
2276
  # @return [String]
1998
2277
  attr_accessor :default_bucket
1999
2278
 
2000
2279
  # The name of the project's settings.
2001
- # Always of the form: projects/`project-id`/settings
2002
- # In update request: never set In response: always set
2280
+ # Always of the form:
2281
+ # projects/`project-id`/settings
2282
+ # In update request: never set
2283
+ # In response: always set
2003
2284
  # Corresponds to the JSON property `name`
2004
2285
  # @return [String]
2005
2286
  attr_accessor :name
@@ -2040,22 +2321,26 @@ module Google
2040
2321
  class RegionProto
2041
2322
  include Google::Apis::Core::Hashable
2042
2323
 
2043
- # The height, in pixels. Always set.
2324
+ # The height, in pixels.
2325
+ # Always set.
2044
2326
  # Corresponds to the JSON property `heightPx`
2045
2327
  # @return [Fixnum]
2046
2328
  attr_accessor :height_px
2047
2329
 
2048
- # The left side of the rectangle, in pixels. Always set.
2330
+ # The left side of the rectangle, in pixels.
2331
+ # Always set.
2049
2332
  # Corresponds to the JSON property `leftPx`
2050
2333
  # @return [Fixnum]
2051
2334
  attr_accessor :left_px
2052
2335
 
2053
- # The top of the rectangle, in pixels. Always set.
2336
+ # The top of the rectangle, in pixels.
2337
+ # Always set.
2054
2338
  # Corresponds to the JSON property `topPx`
2055
2339
  # @return [Fixnum]
2056
2340
  attr_accessor :top_px
2057
2341
 
2058
- # The width, in pixels. Always set.
2342
+ # The width, in pixels.
2343
+ # Always set.
2059
2344
  # Corresponds to the JSON property `widthPx`
2060
2345
  # @return [Fixnum]
2061
2346
  attr_accessor :width_px
@@ -2098,18 +2383,44 @@ module Google
2098
2383
  end
2099
2384
  end
2100
2385
 
2101
- # IMPORTANT: It is unsafe to accept this message from an untrusted source, since
2102
- # it's trivial for an attacker to forge serialized messages that don't fulfill
2103
- # the type's safety contract -- for example, it could contain attacker
2104
- # controlled script. A system which receives a SafeHtmlProto implicitly trusts
2105
- # the producer of the SafeHtmlProto. So, it's generally safe to return this
2106
- # message in RPC responses, but generally unsafe to accept it in RPC requests.
2386
+ # Execution stats for a user-provided Robo script.
2387
+ class RoboScriptExecution
2388
+ include Google::Apis::Core::Hashable
2389
+
2390
+ # The number of Robo script actions executed successfully.
2391
+ # Corresponds to the JSON property `successfulActions`
2392
+ # @return [Fixnum]
2393
+ attr_accessor :successful_actions
2394
+
2395
+ # The total number of actions in the Robo script.
2396
+ # Corresponds to the JSON property `totalActions`
2397
+ # @return [Fixnum]
2398
+ attr_accessor :total_actions
2399
+
2400
+ def initialize(**args)
2401
+ update!(**args)
2402
+ end
2403
+
2404
+ # Update properties of this object
2405
+ def update!(**args)
2406
+ @successful_actions = args[:successful_actions] if args.key?(:successful_actions)
2407
+ @total_actions = args[:total_actions] if args.key?(:total_actions)
2408
+ end
2409
+ end
2410
+
2411
+ # IMPORTANT: It is unsafe to accept this message from an untrusted source,
2412
+ # since it's trivial for an attacker to forge serialized messages that
2413
+ # don't fulfill the type's safety contract -- for example, it could contain
2414
+ # attacker controlled script. A system which receives a SafeHtmlProto
2415
+ # implicitly trusts the producer of the SafeHtmlProto. So, it's generally safe
2416
+ # to return this message in RPC responses, but generally unsafe to accept it
2417
+ # in RPC requests.
2107
2418
  class SafeHtmlProto
2108
2419
  include Google::Apis::Core::Hashable
2109
2420
 
2110
- # IMPORTANT: Never set or read this field, even from tests, it is private. See
2111
- # documentation at the top of .proto file for programming language packages with
2112
- # which to create or read this message.
2421
+ # IMPORTANT: Never set or read this field, even from tests, it is private.
2422
+ # See documentation at the top of .proto file for programming language
2423
+ # packages with which to create or read this message.
2113
2424
  # Corresponds to the JSON property `privateDoNotAccessOrElseSafeHtmlWrappedValue`
2114
2425
  # @return [String]
2115
2426
  attr_accessor :private_do_not_access_or_else_safe_html_wrapped_value
@@ -2128,22 +2439,26 @@ module Google
2128
2439
  class Screen
2129
2440
  include Google::Apis::Core::Hashable
2130
2441
 
2131
- # File reference of the png file. Required.
2442
+ # File reference of the png file.
2443
+ # Required.
2132
2444
  # Corresponds to the JSON property `fileReference`
2133
2445
  # @return [String]
2134
2446
  attr_accessor :file_reference
2135
2447
 
2136
- # Locale of the device that the screenshot was taken on. Required.
2448
+ # Locale of the device that the screenshot was taken on.
2449
+ # Required.
2137
2450
  # Corresponds to the JSON property `locale`
2138
2451
  # @return [String]
2139
2452
  attr_accessor :locale
2140
2453
 
2141
- # Model of the device that the screenshot was taken on. Required.
2454
+ # Model of the device that the screenshot was taken on.
2455
+ # Required.
2142
2456
  # Corresponds to the JSON property `model`
2143
2457
  # @return [String]
2144
2458
  attr_accessor :model
2145
2459
 
2146
- # OS version of the device that the screenshot was taken on. Required.
2460
+ # OS version of the device that the screenshot was taken on.
2461
+ # Required.
2147
2462
  # Corresponds to the JSON property `version`
2148
2463
  # @return [String]
2149
2464
  attr_accessor :version
@@ -2171,14 +2486,15 @@ module Google
2171
2486
  attr_accessor :activity
2172
2487
 
2173
2488
  # A unique identifier for the cluster.
2489
+ # @OutputOnly
2174
2490
  # Corresponds to the JSON property `clusterId`
2175
2491
  # @return [String]
2176
2492
  attr_accessor :cluster_id
2177
2493
 
2178
- # A singular screen that represents the cluster as a whole. This screen will act
2179
- # as the "cover" of the entire cluster. When users look at the clusters, only
2180
- # the key screen from each cluster will be shown. Which screen is the key screen
2181
- # is determined by the ClusteringAlgorithm
2494
+ # A singular screen that represents the cluster as a whole. This screen will
2495
+ # act as the "cover" of the entire cluster. When users look at the clusters,
2496
+ # only the key screen from each cluster will be shown. Which screen is the
2497
+ # key screen is determined by the ClusteringAlgorithm
2182
2498
  # Corresponds to the JSON property `keyScreen`
2183
2499
  # @return [Google::Apis::ToolresultsV1beta3::Screen]
2184
2500
  attr_accessor :key_screen
@@ -2205,6 +2521,13 @@ module Google
2205
2521
  class ShardSummary
2206
2522
  include Google::Apis::Core::Hashable
2207
2523
 
2524
+ # Summaries of the steps belonging to the shard.
2525
+ # With flaky_test_attempts enabled from TestExecutionService, more than one
2526
+ # run (Step) can present. And the runs will be sorted by multistep_number.
2527
+ # Corresponds to the JSON property `runs`
2528
+ # @return [Array<Google::Apis::ToolresultsV1beta3::StepSummary>]
2529
+ attr_accessor :runs
2530
+
2208
2531
  # Merged test result for environment.
2209
2532
  # If the environment has only one step (no reruns or shards), then the merged
2210
2533
  # result is the same as the step result. If the environment has multiple shards
@@ -2220,6 +2543,7 @@ module Google
2220
2543
 
2221
2544
  # Update properties of this object
2222
2545
  def update!(**args)
2546
+ @runs = args[:runs] if args.key?(:runs)
2223
2547
  @shard_result = args[:shard_result] if args.key?(:shard_result)
2224
2548
  end
2225
2549
  end
@@ -2297,29 +2621,54 @@ module Google
2297
2621
  end
2298
2622
  end
2299
2623
 
2300
- # The `Status` type defines a logical error model that is suitable for different
2301
- # programming environments, including REST APIs and RPC APIs. It is used by [
2302
- # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
2303
- # data: error code, error message, and error details.
2304
- # You can find out more about this error model and how to work with it in the [
2305
- # API Design Guide](https://cloud.google.com/apis/design/errors).
2624
+ # User provided intent failed to resolve to an activity.
2625
+ class StartActivityNotFound
2626
+ include Google::Apis::Core::Hashable
2627
+
2628
+ #
2629
+ # Corresponds to the JSON property `action`
2630
+ # @return [String]
2631
+ attr_accessor :action
2632
+
2633
+ #
2634
+ # Corresponds to the JSON property `uri`
2635
+ # @return [String]
2636
+ attr_accessor :uri
2637
+
2638
+ def initialize(**args)
2639
+ update!(**args)
2640
+ end
2641
+
2642
+ # Update properties of this object
2643
+ def update!(**args)
2644
+ @action = args[:action] if args.key?(:action)
2645
+ @uri = args[:uri] if args.key?(:uri)
2646
+ end
2647
+ end
2648
+
2649
+ # The `Status` type defines a logical error model that is suitable for
2650
+ # different programming environments, including REST APIs and RPC APIs. It is
2651
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
2652
+ # three pieces of data: error code, error message, and error details.
2653
+ # You can find out more about this error model and how to work with it in the
2654
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
2306
2655
  class Status
2307
2656
  include Google::Apis::Core::Hashable
2308
2657
 
2309
- # The status code, which should be an enum value of [google.rpc.Code][].
2658
+ # The status code, which should be an enum value of google.rpc.Code.
2310
2659
  # Corresponds to the JSON property `code`
2311
2660
  # @return [Fixnum]
2312
2661
  attr_accessor :code
2313
2662
 
2314
- # A list of messages that carry the error details. There is a common set of
2663
+ # A list of messages that carry the error details. There is a common set of
2315
2664
  # message types for APIs to use.
2316
2665
  # Corresponds to the JSON property `details`
2317
- # @return [Array<Google::Apis::ToolresultsV1beta3::Any>]
2666
+ # @return [Array<Hash<String,Object>>]
2318
2667
  attr_accessor :details
2319
2668
 
2320
- # A developer-facing error message, which should be in English. Any user-facing
2321
- # error message should be localized and sent in the [google.rpc.Status.details][]
2322
- # field, or localized by the client.
2669
+ # A developer-facing error message, which should be in English. Any
2670
+ # user-facing error message should be localized and sent in the
2671
+ # google.rpc.Status.details field, or localized by the client.
2323
2672
  # Corresponds to the JSON property `message`
2324
2673
  # @return [String]
2325
2674
  attr_accessor :message
@@ -2336,221 +2685,121 @@ module Google
2336
2685
  end
2337
2686
  end
2338
2687
 
2339
- # A Step represents a single operation performed as part of Execution. A step
2340
- # can be used to represent the execution of a tool ( for example a test runner
2341
- # execution or an execution of a compiler).
2342
- # Steps can overlap (for instance two steps might have the same start time if
2343
- # some operations are done in parallel).
2688
+ # A Step represents a single operation performed as part of
2689
+ # Execution. A step can be used to represent the execution of a tool (
2690
+ # for example a test runner execution or an execution of a compiler).
2691
+ # Steps can overlap (for instance two steps might have the same
2692
+ # start time if some operations are done in parallel).
2344
2693
  # Here is an example, let's consider that we have a continuous build is
2345
- # executing a test runner for each iteration. The workflow would look like: -
2346
- # user creates a Execution with id 1 - user creates an TestExecutionStep with id
2347
- # 100 for Execution 1 - user update TestExecutionStep with id 100 to add a raw
2348
- # xml log + the service parses the xml logs and returns a TestExecutionStep with
2349
- # updated TestResult(s). - user update the status of TestExecutionStep with id
2350
- # 100 to COMPLETE
2351
- # A Step can be updated until its state is set to COMPLETE at which points it
2352
- # becomes immutable.
2694
+ # executing a test runner for each iteration. The workflow would look like:
2695
+ # - user creates a Execution with id 1
2696
+ # - user creates an TestExecutionStep with id 100 for Execution 1
2697
+ # - user update TestExecutionStep with id 100 to add a raw xml log
2698
+ # + the service parses the xml logs and returns a TestExecutionStep with
2699
+ # updated TestResult(s).
2700
+ # - user update the status of TestExecutionStep with id 100 to COMPLETE
2701
+ # A Step can be updated until its state is set to COMPLETE at which
2702
+ # points it becomes immutable.
2353
2703
  # Next tag: 27
2354
2704
  class Step
2355
2705
  include Google::Apis::Core::Hashable
2356
2706
 
2357
2707
  # A Timestamp represents a point in time independent of any time zone or local
2358
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
2359
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
2360
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
2361
- # backwards to year one.
2708
+ # calendar, encoded as a count of seconds and fractions of seconds at
2709
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
2710
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
2711
+ # Gregorian calendar backwards to year one.
2362
2712
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
2363
- # second table is needed for interpretation, using a [24-hour linear smear](
2364
- # https://developers.google.com/time/smear).
2713
+ # second table is needed for interpretation, using a [24-hour linear
2714
+ # smear](https://developers.google.com/time/smear).
2365
2715
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
2366
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
2367
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
2368
- # # Examples
2369
- # Example 1: Compute Timestamp from POSIX `time()`.
2370
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
2371
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
2372
- # struct timeval tv; gettimeofday(&tv, NULL);
2373
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
2374
- # tv_usec * 1000);
2375
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
2376
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
2377
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
2378
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
2379
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
2380
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
2381
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
2382
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
2383
- # long millis = System.currentTimeMillis();
2384
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
2385
- # setNanos((int) ((millis % 1000) * 1000000)).build();
2386
- # Example 5: Compute Timestamp from current time in Python.
2387
- # timestamp = Timestamp() timestamp.GetCurrentTime()
2388
- # # JSON Mapping
2389
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
2390
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
2391
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
2392
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
2393
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
2394
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
2395
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
2396
- # serializer should always use UTC (as indicated by "Z") when printing the
2397
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
2398
- # other timezones (as indicated by an offset).
2399
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
2400
- # January 15, 2017.
2401
- # In JavaScript, one can convert a Date object to this format using the standard
2402
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
2403
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
2404
- # datetime.datetime` object can be converted to this format using [`strftime`](
2405
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
2406
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
2407
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
2408
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
2409
- # formatter capable of generating timestamps in this format.
2716
+ # restricting to that range, we ensure that we can convert to and from [RFC
2717
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
2410
2718
  # Corresponds to the JSON property `completionTime`
2411
2719
  # @return [Google::Apis::ToolresultsV1beta3::Timestamp]
2412
2720
  attr_accessor :completion_time
2413
2721
 
2414
2722
  # A Timestamp represents a point in time independent of any time zone or local
2415
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
2416
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
2417
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
2418
- # backwards to year one.
2723
+ # calendar, encoded as a count of seconds and fractions of seconds at
2724
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
2725
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
2726
+ # Gregorian calendar backwards to year one.
2419
2727
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
2420
- # second table is needed for interpretation, using a [24-hour linear smear](
2421
- # https://developers.google.com/time/smear).
2728
+ # second table is needed for interpretation, using a [24-hour linear
2729
+ # smear](https://developers.google.com/time/smear).
2422
2730
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
2423
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
2424
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
2425
- # # Examples
2426
- # Example 1: Compute Timestamp from POSIX `time()`.
2427
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
2428
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
2429
- # struct timeval tv; gettimeofday(&tv, NULL);
2430
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
2431
- # tv_usec * 1000);
2432
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
2433
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
2434
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
2435
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
2436
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
2437
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
2438
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
2439
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
2440
- # long millis = System.currentTimeMillis();
2441
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
2442
- # setNanos((int) ((millis % 1000) * 1000000)).build();
2443
- # Example 5: Compute Timestamp from current time in Python.
2444
- # timestamp = Timestamp() timestamp.GetCurrentTime()
2445
- # # JSON Mapping
2446
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
2447
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
2448
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
2449
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
2450
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
2451
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
2452
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
2453
- # serializer should always use UTC (as indicated by "Z") when printing the
2454
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
2455
- # other timezones (as indicated by an offset).
2456
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
2457
- # January 15, 2017.
2458
- # In JavaScript, one can convert a Date object to this format using the standard
2459
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
2460
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
2461
- # datetime.datetime` object can be converted to this format using [`strftime`](
2462
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
2463
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
2464
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
2465
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
2466
- # formatter capable of generating timestamps in this format.
2731
+ # restricting to that range, we ensure that we can convert to and from [RFC
2732
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
2467
2733
  # Corresponds to the JSON property `creationTime`
2468
2734
  # @return [Google::Apis::ToolresultsV1beta3::Timestamp]
2469
2735
  attr_accessor :creation_time
2470
2736
 
2471
- # A description of this tool For example: mvn clean package -D skipTests=true
2472
- # - In response: present if set by create/update request - In create/update
2473
- # request: optional
2737
+ # A description of this tool
2738
+ # For example: mvn clean package -D skipTests=true
2739
+ # - In response: present if set by create/update request
2740
+ # - In create/update request: optional
2474
2741
  # Corresponds to the JSON property `description`
2475
2742
  # @return [String]
2476
2743
  attr_accessor :description
2477
2744
 
2478
- # A Duration represents a signed, fixed-length span of time represented as a
2479
- # count of seconds and fractions of seconds at nanosecond resolution. It is
2480
- # independent of any calendar and concepts like "day" or "month". It is related
2481
- # to Timestamp in that the difference between two Timestamp values is a Duration
2482
- # and it can be added or subtracted from a Timestamp. Range is approximately +-
2483
- # 10,000 years.
2484
- # # Examples
2485
- # Example 1: Compute Duration from two Timestamps in pseudo code.
2486
- # Timestamp start = ...; Timestamp end = ...; Duration duration = ...;
2487
- # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos -
2488
- # start.nanos;
2489
- # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000;
2490
- # ` else if (duration.seconds > 0 && duration.nanos < 0) ` duration.seconds -=
2491
- # 1; duration.nanos += 1000000000; `
2492
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
2493
- # Timestamp start = ...; Duration duration = ...; Timestamp end = ...;
2494
- # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos +
2495
- # duration.nanos;
2496
- # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; `
2497
- # Example 3: Compute Duration from datetime.timedelta in Python.
2498
- # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.
2499
- # FromTimedelta(td)
2500
- # # JSON Mapping
2501
- # In JSON format, the Duration type is encoded as a string rather than an object,
2502
- # where the string ends in the suffix "s" (indicating seconds) and is preceded
2503
- # by the number of seconds, with nanoseconds expressed as fractional seconds.
2504
- # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "
2505
- # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.
2506
- # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON
2507
- # format as "3.000001s".
2745
+ # A Duration represents a signed, fixed-length span of time represented
2746
+ # as a count of seconds and fractions of seconds at nanosecond
2747
+ # resolution. It is independent of any calendar and concepts like "day"
2748
+ # or "month". It is related to Timestamp in that the difference between
2749
+ # two Timestamp values is a Duration and it can be added or subtracted
2750
+ # from a Timestamp. Range is approximately +-10,000 years.
2508
2751
  # Corresponds to the JSON property `deviceUsageDuration`
2509
2752
  # @return [Google::Apis::ToolresultsV1beta3::Duration]
2510
2753
  attr_accessor :device_usage_duration
2511
2754
 
2512
- # If the execution containing this step has any dimension_definition set, then
2513
- # this field allows the child to specify the values of the dimensions.
2755
+ # If the execution containing this step has any dimension_definition set,
2756
+ # then this field allows the child to specify the values of the dimensions.
2514
2757
  # The keys must exactly match the dimension_definition of the execution.
2515
- # For example, if the execution has `dimension_definition = ['attempt', 'device']
2516
- # ` then a step must define values for those dimensions, eg. `dimension_value = [
2517
- # 'attempt': '1', 'device': 'Nexus 6']`
2518
- # If a step does not participate in one dimension of the matrix, the value for
2519
- # that dimension should be empty string. For example, if one of the tests is
2520
- # executed by a runner which does not support retries, the step could have `
2521
- # dimension_value = ['attempt': '', 'device': 'Nexus 6']`
2522
- # If the step does not participate in any dimensions of the matrix, it may leave
2523
- # dimension_value unset.
2524
- # A PRECONDITION_FAILED will be returned if any of the keys do not exist in the
2525
- # dimension_definition of the execution.
2758
+ # For example, if the execution has
2759
+ # `dimension_definition = ['attempt', 'device']`
2760
+ # then a step must define values for those dimensions, eg.
2761
+ # `dimension_value = ['attempt': '1', 'device': 'Nexus 6']`
2762
+ # If a step does not participate in one dimension of the matrix,
2763
+ # the value for that dimension should be empty string.
2764
+ # For example, if one of the tests is executed by a runner which
2765
+ # does not support retries, the step could have
2766
+ # `dimension_value = ['attempt': '', 'device': 'Nexus 6']`
2767
+ # If the step does not participate in any dimensions of the matrix,
2768
+ # it may leave dimension_value unset.
2769
+ # A PRECONDITION_FAILED will be returned if any of the keys do not exist
2770
+ # in the dimension_definition of the execution.
2526
2771
  # A PRECONDITION_FAILED will be returned if another step in this execution
2527
2772
  # already has the same name and dimension_value, but differs on other data
2528
2773
  # fields, for example, step field is different.
2529
- # A PRECONDITION_FAILED will be returned if dimension_value is set, and there is
2530
- # a dimension_definition in the execution which is not specified as one of the
2531
- # keys.
2532
- # - In response: present if set by create - In create request: optional - In
2533
- # update request: never set
2774
+ # A PRECONDITION_FAILED will be returned if dimension_value is set, and
2775
+ # there is a dimension_definition in the execution which is not specified
2776
+ # as one of the keys.
2777
+ # - In response: present if set by create
2778
+ # - In create request: optional
2779
+ # - In update request: never set
2534
2780
  # Corresponds to the JSON property `dimensionValue`
2535
2781
  # @return [Array<Google::Apis::ToolresultsV1beta3::StepDimensionValueEntry>]
2536
2782
  attr_accessor :dimension_value
2537
2783
 
2538
- # Whether any of the outputs of this step are images whose thumbnails can be
2539
- # fetched with ListThumbnails.
2540
- # - In response: always set - In create/update request: never set
2784
+ # Whether any of the outputs of this step are images whose
2785
+ # thumbnails can be fetched with ListThumbnails.
2786
+ # - In response: always set
2787
+ # - In create/update request: never set
2541
2788
  # Corresponds to the JSON property `hasImages`
2542
2789
  # @return [Boolean]
2543
2790
  attr_accessor :has_images
2544
2791
  alias_method :has_images?, :has_images
2545
2792
 
2546
- # Arbitrary user-supplied key/value pairs that are associated with the step.
2547
- # Users are responsible for managing the key namespace such that keys don't
2548
- # accidentally collide.
2549
- # An INVALID_ARGUMENT will be returned if the number of labels exceeds 100 or if
2550
- # the length of any of the keys or values exceeds 100 characters.
2551
- # - In response: always set - In create request: optional - In update request:
2552
- # optional; any new key/value pair will be added to the map, and any new value
2553
- # for an existing key will update that key's value
2793
+ # Arbitrary user-supplied key/value pairs that are associated with the
2794
+ # step.
2795
+ # Users are responsible for managing the key namespace such that keys
2796
+ # don't accidentally collide.
2797
+ # An INVALID_ARGUMENT will be returned if the number of labels exceeds 100 or
2798
+ # if the length of any of the keys or values exceeds 100 characters.
2799
+ # - In response: always set
2800
+ # - In create request: optional
2801
+ # - In update request: optional; any new key/value pair will be added to the
2802
+ # map, and any new value for an existing key will update that key's value
2554
2803
  # Corresponds to the JSON property `labels`
2555
2804
  # @return [Array<Google::Apis::ToolresultsV1beta3::StepLabelsEntry>]
2556
2805
  attr_accessor :labels
@@ -2560,15 +2809,17 @@ module Google
2560
2809
  # @return [Google::Apis::ToolresultsV1beta3::MultiStep]
2561
2810
  attr_accessor :multi_step
2562
2811
 
2563
- # A short human-readable name to display in the UI. Maximum of 100 characters.
2812
+ # A short human-readable name to display in the UI.
2813
+ # Maximum of 100 characters.
2564
2814
  # For example: Clean build
2565
- # A PRECONDITION_FAILED will be returned upon creating a new step if it shares
2566
- # its name and dimension_value with an existing step. If two steps represent a
2567
- # similar action, but have different dimension values, they should share the
2568
- # same name. For instance, if the same set of tests is run on two different
2569
- # platforms, the two steps should have the same name.
2570
- # - In response: always set - In create request: always set - In update request:
2571
- # never set
2815
+ # A PRECONDITION_FAILED will be returned upon creating a new step if it
2816
+ # shares its name and dimension_value with an existing step. If two steps
2817
+ # represent a similar action, but have different dimension values, they
2818
+ # should share the same name. For instance, if the same set of tests is
2819
+ # run on two different platforms, the two steps should have the same name.
2820
+ # - In response: always set
2821
+ # - In create request: always set
2822
+ # - In update request: never set
2572
2823
  # Corresponds to the JSON property `name`
2573
2824
  # @return [String]
2574
2825
  attr_accessor :name
@@ -2578,54 +2829,34 @@ module Google
2578
2829
  # @return [Google::Apis::ToolresultsV1beta3::Outcome]
2579
2830
  attr_accessor :outcome
2580
2831
 
2581
- # A Duration represents a signed, fixed-length span of time represented as a
2582
- # count of seconds and fractions of seconds at nanosecond resolution. It is
2583
- # independent of any calendar and concepts like "day" or "month". It is related
2584
- # to Timestamp in that the difference between two Timestamp values is a Duration
2585
- # and it can be added or subtracted from a Timestamp. Range is approximately +-
2586
- # 10,000 years.
2587
- # # Examples
2588
- # Example 1: Compute Duration from two Timestamps in pseudo code.
2589
- # Timestamp start = ...; Timestamp end = ...; Duration duration = ...;
2590
- # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos -
2591
- # start.nanos;
2592
- # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000;
2593
- # ` else if (duration.seconds > 0 && duration.nanos < 0) ` duration.seconds -=
2594
- # 1; duration.nanos += 1000000000; `
2595
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
2596
- # Timestamp start = ...; Duration duration = ...; Timestamp end = ...;
2597
- # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos +
2598
- # duration.nanos;
2599
- # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; `
2600
- # Example 3: Compute Duration from datetime.timedelta in Python.
2601
- # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.
2602
- # FromTimedelta(td)
2603
- # # JSON Mapping
2604
- # In JSON format, the Duration type is encoded as a string rather than an object,
2605
- # where the string ends in the suffix "s" (indicating seconds) and is preceded
2606
- # by the number of seconds, with nanoseconds expressed as fractional seconds.
2607
- # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "
2608
- # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.
2609
- # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON
2610
- # format as "3.000001s".
2832
+ # A Duration represents a signed, fixed-length span of time represented
2833
+ # as a count of seconds and fractions of seconds at nanosecond
2834
+ # resolution. It is independent of any calendar and concepts like "day"
2835
+ # or "month". It is related to Timestamp in that the difference between
2836
+ # two Timestamp values is a Duration and it can be added or subtracted
2837
+ # from a Timestamp. Range is approximately +-10,000 years.
2611
2838
  # Corresponds to the JSON property `runDuration`
2612
2839
  # @return [Google::Apis::ToolresultsV1beta3::Duration]
2613
2840
  attr_accessor :run_duration
2614
2841
 
2615
- # The initial state is IN_PROGRESS. The only legal state transitions are *
2616
- # IN_PROGRESS -> COMPLETE
2617
- # A PRECONDITION_FAILED will be returned if an invalid transition is requested.
2618
- # It is valid to create Step with a state set to COMPLETE. The state can only be
2619
- # set to COMPLETE once. A PRECONDITION_FAILED will be returned if the state is
2620
- # set to COMPLETE multiple times.
2621
- # - In response: always set - In create/update request: optional
2842
+ # The initial state is IN_PROGRESS.
2843
+ # The only legal state transitions are
2844
+ # * IN_PROGRESS -> COMPLETE
2845
+ # A PRECONDITION_FAILED will be returned if an invalid transition is
2846
+ # requested.
2847
+ # It is valid to create Step with a state set to COMPLETE.
2848
+ # The state can only be set to COMPLETE once. A PRECONDITION_FAILED will be
2849
+ # returned if the state is set to COMPLETE multiple times.
2850
+ # - In response: always set
2851
+ # - In create/update request: optional
2622
2852
  # Corresponds to the JSON property `state`
2623
2853
  # @return [String]
2624
2854
  attr_accessor :state
2625
2855
 
2626
2856
  # A unique identifier within a Execution for this Step.
2627
2857
  # Returns INVALID_ARGUMENT if this field is set or overwritten by the caller.
2628
- # - In response: always set - In create/update request: never set
2858
+ # - In response: always set
2859
+ # - In create/update request: never set
2629
2860
  # Corresponds to the JSON property `stepId`
2630
2861
  # @return [String]
2631
2862
  attr_accessor :step_id
@@ -2639,8 +2870,8 @@ module Google
2639
2870
  # @return [Google::Apis::ToolresultsV1beta3::TestExecutionStep]
2640
2871
  attr_accessor :test_execution_step
2641
2872
 
2642
- # Generic tool step to be used for binaries we do not explicitly support. For
2643
- # example: running cp to copy artifacts from one location to another.
2873
+ # Generic tool step to be used for binaries we do not explicitly support.
2874
+ # For example: running cp to copy artifacts from one location to another.
2644
2875
  # Corresponds to the JSON property `toolExecutionStep`
2645
2876
  # @return [Google::Apis::ToolresultsV1beta3::ToolExecutionStep]
2646
2877
  attr_accessor :tool_execution_step
@@ -2719,7 +2950,21 @@ module Google
2719
2950
  end
2720
2951
  end
2721
2952
 
2722
- # Details for an outcome with a SUCCESS outcome summary. LINT.IfChange
2953
+ # Lightweight summary of a step within this execution.
2954
+ class StepSummary
2955
+ include Google::Apis::Core::Hashable
2956
+
2957
+ def initialize(**args)
2958
+ update!(**args)
2959
+ end
2960
+
2961
+ # Update properties of this object
2962
+ def update!(**args)
2963
+ end
2964
+ end
2965
+
2966
+ # Details for an outcome with a SUCCESS outcome summary.
2967
+ # LINT.IfChange
2723
2968
  class SuccessDetail
2724
2969
  include Google::Apis::Core::Hashable
2725
2970
 
@@ -2740,19 +2985,20 @@ module Google
2740
2985
  end
2741
2986
 
2742
2987
  # A set of similar suggestions that we suspect are closely related.
2743
- # This proto and most of the nested protos are branched from foxandcrown.
2744
- # prelaunchreport.service.SuggestionClusterProto, replacing PLR's dependencies
2745
- # with FTL's.
2988
+ # This proto and most of the nested protos are branched from
2989
+ # foxandcrown.prelaunchreport.service.SuggestionClusterProto, replacing PLR's
2990
+ # dependencies with FTL's.
2746
2991
  class SuggestionClusterProto
2747
2992
  include Google::Apis::Core::Hashable
2748
2993
 
2749
- # Category in which these types of suggestions should appear. Always set.
2994
+ # Category in which these types of suggestions should appear.
2995
+ # Always set.
2750
2996
  # Corresponds to the JSON property `category`
2751
2997
  # @return [String]
2752
2998
  attr_accessor :category
2753
2999
 
2754
- # A sequence of suggestions. All of the suggestions within a cluster must have
2755
- # the same SuggestionPriority and belong to the same SuggestionCategory.
3000
+ # A sequence of suggestions. All of the suggestions within a cluster must
3001
+ # have the same SuggestionPriority and belong to the same SuggestionCategory.
2756
3002
  # Suggestions with the same screenshot URL should be adjacent.
2757
3003
  # Corresponds to the JSON property `suggestions`
2758
3004
  # @return [Array<Google::Apis::ToolresultsV1beta3::SuggestionProto>]
@@ -2773,30 +3019,32 @@ module Google
2773
3019
  class SuggestionProto
2774
3020
  include Google::Apis::Core::Hashable
2775
3021
 
2776
- # Reference to a help center article concerning this type of suggestion. Always
2777
- # set.
3022
+ # Reference to a help center article concerning this type of suggestion.
3023
+ # Always set.
2778
3024
  # Corresponds to the JSON property `helpUrl`
2779
3025
  # @return [String]
2780
3026
  attr_accessor :help_url
2781
3027
 
2782
- # IMPORTANT: It is unsafe to accept this message from an untrusted source, since
2783
- # it's trivial for an attacker to forge serialized messages that don't fulfill
2784
- # the type's safety contract -- for example, it could contain attacker
2785
- # controlled script. A system which receives a SafeHtmlProto implicitly trusts
2786
- # the producer of the SafeHtmlProto. So, it's generally safe to return this
2787
- # message in RPC responses, but generally unsafe to accept it in RPC requests.
3028
+ # IMPORTANT: It is unsafe to accept this message from an untrusted source,
3029
+ # since it's trivial for an attacker to forge serialized messages that
3030
+ # don't fulfill the type's safety contract -- for example, it could contain
3031
+ # attacker controlled script. A system which receives a SafeHtmlProto
3032
+ # implicitly trusts the producer of the SafeHtmlProto. So, it's generally safe
3033
+ # to return this message in RPC responses, but generally unsafe to accept it
3034
+ # in RPC requests.
2788
3035
  # Corresponds to the JSON property `longMessage`
2789
3036
  # @return [Google::Apis::ToolresultsV1beta3::SafeHtmlProto]
2790
3037
  attr_accessor :long_message
2791
3038
 
2792
- # Relative importance of a suggestion. Always set.
3039
+ # Relative importance of a suggestion.
3040
+ # Always set.
2793
3041
  # Corresponds to the JSON property `priority`
2794
3042
  # @return [String]
2795
3043
  attr_accessor :priority
2796
3044
 
2797
- # A somewhat human readable identifier of the source view, if it does not have a
2798
- # resource_name. This is a path within the accessibility hierarchy, an element
2799
- # with resource name; similar to an XPath.
3045
+ # A somewhat human readable identifier of the source view, if it does not
3046
+ # have a resource_name. This is a path within the accessibility hierarchy,
3047
+ # an element with resource name; similar to an XPath.
2800
3048
  # Corresponds to the JSON property `pseudoResourceId`
2801
3049
  # @return [String]
2802
3050
  attr_accessor :pseudo_resource_id
@@ -2806,33 +3054,37 @@ module Google
2806
3054
  # @return [Google::Apis::ToolresultsV1beta3::RegionProto]
2807
3055
  attr_accessor :region
2808
3056
 
2809
- # Reference to a view element, identified by its resource name, if it has one.
3057
+ # Reference to a view element, identified by its resource name, if it has
3058
+ # one.
2810
3059
  # Corresponds to the JSON property `resourceName`
2811
3060
  # @return [String]
2812
3061
  attr_accessor :resource_name
2813
3062
 
2814
- # ID of the screen for the suggestion. It is used for getting the corresponding
2815
- # screenshot path. For example, screen_id "1" corresponds to "1.png" file in GCS.
3063
+ # ID of the screen for the suggestion.
3064
+ # It is used for getting the corresponding screenshot path. For example,
3065
+ # screen_id "1" corresponds to "1.png" file in GCS.
2816
3066
  # Always set.
2817
3067
  # Corresponds to the JSON property `screenId`
2818
3068
  # @return [String]
2819
3069
  attr_accessor :screen_id
2820
3070
 
2821
- # Relative importance of a suggestion as compared with other suggestions that
2822
- # have the same priority and category. This is a meaningless value that can be
2823
- # used to order suggestions that are in the same category and have the same
2824
- # priority. The larger values have higher priority (i.e., are more important).
3071
+ # Relative importance of a suggestion as compared with other suggestions
3072
+ # that have the same priority and category.
3073
+ # This is a meaningless value that can be used to order suggestions that are
3074
+ # in the same category and have the same priority.
3075
+ # The larger values have higher priority (i.e., are more important).
2825
3076
  # Optional.
2826
3077
  # Corresponds to the JSON property `secondaryPriority`
2827
3078
  # @return [Float]
2828
3079
  attr_accessor :secondary_priority
2829
3080
 
2830
- # IMPORTANT: It is unsafe to accept this message from an untrusted source, since
2831
- # it's trivial for an attacker to forge serialized messages that don't fulfill
2832
- # the type's safety contract -- for example, it could contain attacker
2833
- # controlled script. A system which receives a SafeHtmlProto implicitly trusts
2834
- # the producer of the SafeHtmlProto. So, it's generally safe to return this
2835
- # message in RPC responses, but generally unsafe to accept it in RPC requests.
3081
+ # IMPORTANT: It is unsafe to accept this message from an untrusted source,
3082
+ # since it's trivial for an attacker to forge serialized messages that
3083
+ # don't fulfill the type's safety contract -- for example, it could contain
3084
+ # attacker controlled script. A system which receives a SafeHtmlProto
3085
+ # implicitly trusts the producer of the SafeHtmlProto. So, it's generally safe
3086
+ # to return this message in RPC responses, but generally unsafe to accept it
3087
+ # in RPC requests.
2836
3088
  # Corresponds to the JSON property `shortMessage`
2837
3089
  # @return [Google::Apis::ToolresultsV1beta3::SafeHtmlProto]
2838
3090
  attr_accessor :short_message
@@ -2866,93 +3118,27 @@ module Google
2866
3118
  class TestCase
2867
3119
  include Google::Apis::Core::Hashable
2868
3120
 
2869
- # A Duration represents a signed, fixed-length span of time represented as a
2870
- # count of seconds and fractions of seconds at nanosecond resolution. It is
2871
- # independent of any calendar and concepts like "day" or "month". It is related
2872
- # to Timestamp in that the difference between two Timestamp values is a Duration
2873
- # and it can be added or subtracted from a Timestamp. Range is approximately +-
2874
- # 10,000 years.
2875
- # # Examples
2876
- # Example 1: Compute Duration from two Timestamps in pseudo code.
2877
- # Timestamp start = ...; Timestamp end = ...; Duration duration = ...;
2878
- # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos -
2879
- # start.nanos;
2880
- # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000;
2881
- # ` else if (duration.seconds > 0 && duration.nanos < 0) ` duration.seconds -=
2882
- # 1; duration.nanos += 1000000000; `
2883
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
2884
- # Timestamp start = ...; Duration duration = ...; Timestamp end = ...;
2885
- # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos +
2886
- # duration.nanos;
2887
- # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; `
2888
- # Example 3: Compute Duration from datetime.timedelta in Python.
2889
- # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.
2890
- # FromTimedelta(td)
2891
- # # JSON Mapping
2892
- # In JSON format, the Duration type is encoded as a string rather than an object,
2893
- # where the string ends in the suffix "s" (indicating seconds) and is preceded
2894
- # by the number of seconds, with nanoseconds expressed as fractional seconds.
2895
- # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "
2896
- # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.
2897
- # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON
2898
- # format as "3.000001s".
3121
+ # A Duration represents a signed, fixed-length span of time represented
3122
+ # as a count of seconds and fractions of seconds at nanosecond
3123
+ # resolution. It is independent of any calendar and concepts like "day"
3124
+ # or "month". It is related to Timestamp in that the difference between
3125
+ # two Timestamp values is a Duration and it can be added or subtracted
3126
+ # from a Timestamp. Range is approximately +-10,000 years.
2899
3127
  # Corresponds to the JSON property `elapsedTime`
2900
3128
  # @return [Google::Apis::ToolresultsV1beta3::Duration]
2901
3129
  attr_accessor :elapsed_time
2902
3130
 
2903
3131
  # A Timestamp represents a point in time independent of any time zone or local
2904
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
2905
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
2906
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
2907
- # backwards to year one.
3132
+ # calendar, encoded as a count of seconds and fractions of seconds at
3133
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
3134
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
3135
+ # Gregorian calendar backwards to year one.
2908
3136
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
2909
- # second table is needed for interpretation, using a [24-hour linear smear](
2910
- # https://developers.google.com/time/smear).
3137
+ # second table is needed for interpretation, using a [24-hour linear
3138
+ # smear](https://developers.google.com/time/smear).
2911
3139
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
2912
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
2913
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
2914
- # # Examples
2915
- # Example 1: Compute Timestamp from POSIX `time()`.
2916
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
2917
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
2918
- # struct timeval tv; gettimeofday(&tv, NULL);
2919
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
2920
- # tv_usec * 1000);
2921
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
2922
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
2923
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
2924
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
2925
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
2926
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
2927
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
2928
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
2929
- # long millis = System.currentTimeMillis();
2930
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
2931
- # setNanos((int) ((millis % 1000) * 1000000)).build();
2932
- # Example 5: Compute Timestamp from current time in Python.
2933
- # timestamp = Timestamp() timestamp.GetCurrentTime()
2934
- # # JSON Mapping
2935
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
2936
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
2937
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
2938
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
2939
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
2940
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
2941
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
2942
- # serializer should always use UTC (as indicated by "Z") when printing the
2943
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
2944
- # other timezones (as indicated by an offset).
2945
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
2946
- # January 15, 2017.
2947
- # In JavaScript, one can convert a Date object to this format using the standard
2948
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
2949
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
2950
- # datetime.datetime` object can be converted to this format using [`strftime`](
2951
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
2952
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
2953
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
2954
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
2955
- # formatter capable of generating timestamps in this format.
3140
+ # restricting to that range, we ensure that we can convert to and from [RFC
3141
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
2956
3142
  # Corresponds to the JSON property `endTime`
2957
3143
  # @return [Google::Apis::ToolresultsV1beta3::Timestamp]
2958
3144
  attr_accessor :end_time
@@ -2964,66 +3150,24 @@ module Google
2964
3150
  attr_accessor :skipped_message
2965
3151
 
2966
3152
  # The stack trace details if the test case failed or encountered an error.
2967
- # The maximum size of the stack traces is 100KiB, beyond which the stack track
2968
- # will be truncated.
3153
+ # The maximum size of the stack traces is 100KiB, beyond which the stack
3154
+ # track will be truncated.
2969
3155
  # Zero if the test case passed.
2970
3156
  # Corresponds to the JSON property `stackTraces`
2971
3157
  # @return [Array<Google::Apis::ToolresultsV1beta3::StackTrace>]
2972
3158
  attr_accessor :stack_traces
2973
3159
 
2974
3160
  # A Timestamp represents a point in time independent of any time zone or local
2975
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
2976
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
2977
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
2978
- # backwards to year one.
3161
+ # calendar, encoded as a count of seconds and fractions of seconds at
3162
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
3163
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
3164
+ # Gregorian calendar backwards to year one.
2979
3165
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
2980
- # second table is needed for interpretation, using a [24-hour linear smear](
2981
- # https://developers.google.com/time/smear).
3166
+ # second table is needed for interpretation, using a [24-hour linear
3167
+ # smear](https://developers.google.com/time/smear).
2982
3168
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
2983
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
2984
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
2985
- # # Examples
2986
- # Example 1: Compute Timestamp from POSIX `time()`.
2987
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
2988
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
2989
- # struct timeval tv; gettimeofday(&tv, NULL);
2990
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
2991
- # tv_usec * 1000);
2992
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
2993
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
2994
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
2995
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
2996
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
2997
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
2998
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
2999
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
3000
- # long millis = System.currentTimeMillis();
3001
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
3002
- # setNanos((int) ((millis % 1000) * 1000000)).build();
3003
- # Example 5: Compute Timestamp from current time in Python.
3004
- # timestamp = Timestamp() timestamp.GetCurrentTime()
3005
- # # JSON Mapping
3006
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
3007
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
3008
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
3009
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
3010
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
3011
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
3012
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
3013
- # serializer should always use UTC (as indicated by "Z") when printing the
3014
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
3015
- # other timezones (as indicated by an offset).
3016
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
3017
- # January 15, 2017.
3018
- # In JavaScript, one can convert a Date object to this format using the standard
3019
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
3020
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
3021
- # datetime.datetime` object can be converted to this format using [`strftime`](
3022
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
3023
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
3024
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
3025
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
3026
- # formatter capable of generating timestamps in this format.
3169
+ # restricting to that range, we ensure that we can convert to and from [RFC
3170
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
3027
3171
  # Corresponds to the JSON property `startTime`
3028
3172
  # @return [Google::Apis::ToolresultsV1beta3::Timestamp]
3029
3173
  attr_accessor :start_time
@@ -3041,13 +3185,16 @@ module Google
3041
3185
 
3042
3186
  # A reference to a test case.
3043
3187
  # Test case references are canonically ordered lexicographically by these three
3044
- # factors: * First, by test_suite_name. * Second, by class_name. * Third, by
3045
- # name.
3188
+ # factors:
3189
+ # * First, by test_suite_name.
3190
+ # * Second, by class_name.
3191
+ # * Third, by name.
3046
3192
  # Corresponds to the JSON property `testCaseReference`
3047
3193
  # @return [Google::Apis::ToolresultsV1beta3::TestCaseReference]
3048
3194
  attr_accessor :test_case_reference
3049
3195
 
3050
3196
  # References to opaque files of any format output by the tool execution.
3197
+ # @OutputOnly
3051
3198
  # Corresponds to the JSON property `toolOutputs`
3052
3199
  # @return [Array<Google::Apis::ToolresultsV1beta3::ToolOutputReference>]
3053
3200
  attr_accessor :tool_outputs
@@ -3072,8 +3219,10 @@ module Google
3072
3219
 
3073
3220
  # A reference to a test case.
3074
3221
  # Test case references are canonically ordered lexicographically by these three
3075
- # factors: * First, by test_suite_name. * Second, by class_name. * Third, by
3076
- # name.
3222
+ # factors:
3223
+ # * First, by test_suite_name.
3224
+ # * Second, by class_name.
3225
+ # * Third, by name.
3077
3226
  class TestCaseReference
3078
3227
  include Google::Apis::Core::Hashable
3079
3228
 
@@ -3114,20 +3263,22 @@ module Google
3114
3263
  include Google::Apis::Core::Hashable
3115
3264
 
3116
3265
  # Issues observed during the test execution.
3117
- # For example, if the mobile app under test crashed during the test, the error
3118
- # message and the stack trace content can be recorded here to assist debugging.
3119
- # - In response: present if set by create or update - In create/update request:
3120
- # optional
3266
+ # For example, if the mobile app under test crashed during the test,
3267
+ # the error message and the stack trace content can be recorded here
3268
+ # to assist debugging.
3269
+ # - In response: present if set by create or update
3270
+ # - In create/update request: optional
3121
3271
  # Corresponds to the JSON property `testIssues`
3122
3272
  # @return [Array<Google::Apis::ToolresultsV1beta3::TestIssue>]
3123
3273
  attr_accessor :test_issues
3124
3274
 
3125
- # List of test suite overview contents. This could be parsed from xUnit XML log
3126
- # by server, or uploaded directly by user. This references should only be called
3127
- # when test suites are fully parsed or uploaded.
3275
+ # List of test suite overview contents. This could be parsed from xUnit XML
3276
+ # log by server, or uploaded directly by user. This references should only be
3277
+ # called when test suites are fully parsed or uploaded.
3128
3278
  # The maximum allowed number of test suite overviews per step is 1000.
3129
- # - In response: always set - In create request: optional - In update request:
3130
- # never (use publishXunitXmlFiles custom method instead)
3279
+ # - In response: always set
3280
+ # - In create request: optional
3281
+ # - In update request: never (use publishXunitXmlFiles custom method instead)
3131
3282
  # Corresponds to the JSON property `testSuiteOverviews`
3132
3283
  # @return [Array<Google::Apis::ToolresultsV1beta3::TestSuiteOverview>]
3133
3284
  attr_accessor :test_suite_overviews
@@ -3137,8 +3288,8 @@ module Google
3137
3288
  # @return [Google::Apis::ToolresultsV1beta3::TestTiming]
3138
3289
  attr_accessor :test_timing
3139
3290
 
3140
- # An execution of an arbitrary tool. It could be a test runner or a tool copying
3141
- # artifacts or deploying code.
3291
+ # An execution of an arbitrary tool. It could be a test runner or a tool
3292
+ # copying artifacts or deploying code.
3142
3293
  # Corresponds to the JSON property `toolExecution`
3143
3294
  # @return [Google::Apis::ToolresultsV1beta3::ToolExecution]
3144
3295
  attr_accessor :tool_execution
@@ -3160,17 +3311,20 @@ module Google
3160
3311
  class TestIssue
3161
3312
  include Google::Apis::Core::Hashable
3162
3313
 
3163
- # Category of issue. Required.
3314
+ # Category of issue.
3315
+ # Required.
3164
3316
  # Corresponds to the JSON property `category`
3165
3317
  # @return [String]
3166
3318
  attr_accessor :category
3167
3319
 
3168
- # A brief human-readable message describing the issue. Required.
3320
+ # A brief human-readable message describing the issue.
3321
+ # Required.
3169
3322
  # Corresponds to the JSON property `errorMessage`
3170
3323
  # @return [String]
3171
3324
  attr_accessor :error_message
3172
3325
 
3173
- # Severity of issue. Required.
3326
+ # Severity of issue.
3327
+ # Required.
3174
3328
  # Corresponds to the JSON property `severity`
3175
3329
  # @return [String]
3176
3330
  attr_accessor :severity
@@ -3180,42 +3334,74 @@ module Google
3180
3334
  # @return [Google::Apis::ToolresultsV1beta3::StackTrace]
3181
3335
  attr_accessor :stack_trace
3182
3336
 
3183
- # Type of issue. Required.
3337
+ # Type of issue.
3338
+ # Required.
3184
3339
  # Corresponds to the JSON property `type`
3185
3340
  # @return [String]
3186
3341
  attr_accessor :type
3187
3342
 
3188
3343
  # `Any` contains an arbitrary serialized protocol buffer message along with a
3189
3344
  # URL that describes the type of the serialized message.
3190
- # Protobuf library provides support to pack/unpack Any values in the form of
3191
- # utility functions or additional generated methods of the Any type.
3345
+ # Protobuf library provides support to pack/unpack Any values in the form
3346
+ # of utility functions or additional generated methods of the Any type.
3192
3347
  # Example 1: Pack and unpack a message in C++.
3193
- # Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) ` ... `
3348
+ # Foo foo = ...;
3349
+ # Any any;
3350
+ # any.PackFrom(foo);
3351
+ # ...
3352
+ # if (any.UnpackTo(&foo)) `
3353
+ # ...
3354
+ # `
3194
3355
  # Example 2: Pack and unpack a message in Java.
3195
- # Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) ` foo = any.
3196
- # unpack(Foo.class); `
3356
+ # Foo foo = ...;
3357
+ # Any any = Any.pack(foo);
3358
+ # ...
3359
+ # if (any.is(Foo.class)) `
3360
+ # foo = any.unpack(Foo.class);
3361
+ # `
3197
3362
  # Example 3: Pack and unpack a message in Python.
3198
- # foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.
3199
- # Unpack(foo) ...
3363
+ # foo = Foo(...)
3364
+ # any = Any()
3365
+ # any.Pack(foo)
3366
+ # ...
3367
+ # if any.Is(Foo.DESCRIPTOR):
3368
+ # any.Unpack(foo)
3369
+ # ...
3200
3370
  # Example 4: Pack and unpack a message in Go
3201
- # foo := &pb.Foo`...` any, err := ptypes.MarshalAny(foo) ... foo := &pb.Foo`` if
3202
- # err := ptypes.UnmarshalAny(any, foo); err != nil ` ... `
3203
- # The pack methods provided by protobuf library will by default use 'type.
3204
- # googleapis.com/full.type.name' as the type URL and the unpack methods only use
3205
- # the fully qualified type name after the last '/' in the type URL, for example "
3206
- # foo.bar.com/x/y.z" will yield type name "y.z".
3207
- # JSON ==== The JSON representation of an `Any` value uses the regular
3208
- # representation of the deserialized, embedded message, with an additional field
3209
- # `@type` which contains the type URL. Example:
3210
- # package google.profile; message Person ` string first_name = 1; string
3211
- # last_name = 2; `
3212
- # ` "@type": "type.googleapis.com/google.profile.Person", "firstName": , "
3213
- # lastName": `
3371
+ # foo := &pb.Foo`...`
3372
+ # any, err := ptypes.MarshalAny(foo)
3373
+ # ...
3374
+ # foo := &pb.Foo``
3375
+ # if err := ptypes.UnmarshalAny(any, foo); err != nil `
3376
+ # ...
3377
+ # `
3378
+ # The pack methods provided by protobuf library will by default use
3379
+ # 'type.googleapis.com/full.type.name' as the type URL and the unpack
3380
+ # methods only use the fully qualified type name after the last '/'
3381
+ # in the type URL, for example "foo.bar.com/x/y.z" will yield type
3382
+ # name "y.z".
3383
+ # # JSON
3384
+ # The JSON representation of an `Any` value uses the regular
3385
+ # representation of the deserialized, embedded message, with an
3386
+ # additional field `@type` which contains the type URL. Example:
3387
+ # package google.profile;
3388
+ # message Person `
3389
+ # string first_name = 1;
3390
+ # string last_name = 2;
3391
+ # `
3392
+ # `
3393
+ # "@type": "type.googleapis.com/google.profile.Person",
3394
+ # "firstName": <string>,
3395
+ # "lastName": <string>
3396
+ # `
3214
3397
  # If the embedded message type is well-known and has a custom JSON
3215
- # representation, that representation will be embedded adding a field `value`
3216
- # which holds the custom JSON in addition to the `@type` field. Example (for
3217
- # message [google.protobuf.Duration][]):
3218
- # ` "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" `
3398
+ # representation, that representation will be embedded adding a field
3399
+ # `value` which holds the custom JSON in addition to the `@type`
3400
+ # field. Example (for message google.protobuf.Duration):
3401
+ # `
3402
+ # "@type": "type.googleapis.com/google.protobuf.Duration",
3403
+ # "value": "1.212s"
3404
+ # `
3219
3405
  # Corresponds to the JSON property `warning`
3220
3406
  # @return [Google::Apis::ToolresultsV1beta3::Any]
3221
3407
  attr_accessor :warning
@@ -3235,57 +3421,36 @@ module Google
3235
3421
  end
3236
3422
  end
3237
3423
 
3238
- # A summary of a test suite result either parsed from XML or uploaded directly
3239
- # by a user.
3240
- # Note: the API related comments are for StepService only. This message is also
3241
- # being used in ExecutionService in a read only mode for the corresponding step.
3424
+ # A summary of a test suite result either parsed from XML or uploaded
3425
+ # directly by a user.
3426
+ # Note: the API related comments are for StepService only. This message is
3427
+ # also being used in ExecutionService in a read only mode for the corresponding
3428
+ # step.
3242
3429
  class TestSuiteOverview
3243
3430
  include Google::Apis::Core::Hashable
3244
3431
 
3245
- # A Duration represents a signed, fixed-length span of time represented as a
3246
- # count of seconds and fractions of seconds at nanosecond resolution. It is
3247
- # independent of any calendar and concepts like "day" or "month". It is related
3248
- # to Timestamp in that the difference between two Timestamp values is a Duration
3249
- # and it can be added or subtracted from a Timestamp. Range is approximately +-
3250
- # 10,000 years.
3251
- # # Examples
3252
- # Example 1: Compute Duration from two Timestamps in pseudo code.
3253
- # Timestamp start = ...; Timestamp end = ...; Duration duration = ...;
3254
- # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos -
3255
- # start.nanos;
3256
- # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000;
3257
- # ` else if (duration.seconds > 0 && duration.nanos < 0) ` duration.seconds -=
3258
- # 1; duration.nanos += 1000000000; `
3259
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
3260
- # Timestamp start = ...; Duration duration = ...; Timestamp end = ...;
3261
- # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos +
3262
- # duration.nanos;
3263
- # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; `
3264
- # Example 3: Compute Duration from datetime.timedelta in Python.
3265
- # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.
3266
- # FromTimedelta(td)
3267
- # # JSON Mapping
3268
- # In JSON format, the Duration type is encoded as a string rather than an object,
3269
- # where the string ends in the suffix "s" (indicating seconds) and is preceded
3270
- # by the number of seconds, with nanoseconds expressed as fractional seconds.
3271
- # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "
3272
- # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.
3273
- # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON
3274
- # format as "3.000001s".
3432
+ # A Duration represents a signed, fixed-length span of time represented
3433
+ # as a count of seconds and fractions of seconds at nanosecond
3434
+ # resolution. It is independent of any calendar and concepts like "day"
3435
+ # or "month". It is related to Timestamp in that the difference between
3436
+ # two Timestamp values is a Duration and it can be added or subtracted
3437
+ # from a Timestamp. Range is approximately +-10,000 years.
3275
3438
  # Corresponds to the JSON property `elapsedTime`
3276
3439
  # @return [Google::Apis::ToolresultsV1beta3::Duration]
3277
3440
  attr_accessor :elapsed_time
3278
3441
 
3279
3442
  # Number of test cases in error, typically set by the service by parsing the
3280
3443
  # xml_source.
3281
- # - In create/response: always set - In update request: never
3444
+ # - In create/response: always set
3445
+ # - In update request: never
3282
3446
  # Corresponds to the JSON property `errorCount`
3283
3447
  # @return [Fixnum]
3284
3448
  attr_accessor :error_count
3285
3449
 
3286
3450
  # Number of failed test cases, typically set by the service by parsing the
3287
3451
  # xml_source. May also be set by the user.
3288
- # - In create/response: always set - In update request: never
3452
+ # - In create/response: always set
3453
+ # - In update request: never
3289
3454
  # Corresponds to the JSON property `failureCount`
3290
3455
  # @return [Fixnum]
3291
3456
  attr_accessor :failure_count
@@ -3299,20 +3464,24 @@ module Google
3299
3464
  attr_accessor :flaky_count
3300
3465
 
3301
3466
  # The name of the test suite.
3302
- # - In create/response: always set - In update request: never
3467
+ # - In create/response: always set
3468
+ # - In update request: never
3303
3469
  # Corresponds to the JSON property `name`
3304
3470
  # @return [String]
3305
3471
  attr_accessor :name
3306
3472
 
3307
3473
  # Number of test cases not run, typically set by the service by parsing the
3308
3474
  # xml_source.
3309
- # - In create/response: always set - In update request: never
3475
+ # - In create/response: always set
3476
+ # - In update request: never
3310
3477
  # Corresponds to the JSON property `skippedCount`
3311
3478
  # @return [Fixnum]
3312
3479
  attr_accessor :skipped_count
3313
3480
 
3314
- # Number of test cases, typically set by the service by parsing the xml_source.
3315
- # - In create/response: always set - In update request: never
3481
+ # Number of test cases, typically set by the service by parsing the
3482
+ # xml_source.
3483
+ # - In create/response: always set
3484
+ # - In update request: never
3316
3485
  # Corresponds to the JSON property `totalCount`
3317
3486
  # @return [Fixnum]
3318
3487
  attr_accessor :total_count
@@ -3343,36 +3512,12 @@ module Google
3343
3512
  class TestTiming
3344
3513
  include Google::Apis::Core::Hashable
3345
3514
 
3346
- # A Duration represents a signed, fixed-length span of time represented as a
3347
- # count of seconds and fractions of seconds at nanosecond resolution. It is
3348
- # independent of any calendar and concepts like "day" or "month". It is related
3349
- # to Timestamp in that the difference between two Timestamp values is a Duration
3350
- # and it can be added or subtracted from a Timestamp. Range is approximately +-
3351
- # 10,000 years.
3352
- # # Examples
3353
- # Example 1: Compute Duration from two Timestamps in pseudo code.
3354
- # Timestamp start = ...; Timestamp end = ...; Duration duration = ...;
3355
- # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos -
3356
- # start.nanos;
3357
- # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000;
3358
- # ` else if (duration.seconds > 0 && duration.nanos < 0) ` duration.seconds -=
3359
- # 1; duration.nanos += 1000000000; `
3360
- # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
3361
- # Timestamp start = ...; Duration duration = ...; Timestamp end = ...;
3362
- # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos +
3363
- # duration.nanos;
3364
- # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; `
3365
- # Example 3: Compute Duration from datetime.timedelta in Python.
3366
- # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.
3367
- # FromTimedelta(td)
3368
- # # JSON Mapping
3369
- # In JSON format, the Duration type is encoded as a string rather than an object,
3370
- # where the string ends in the suffix "s" (indicating seconds) and is preceded
3371
- # by the number of seconds, with nanoseconds expressed as fractional seconds.
3372
- # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "
3373
- # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.
3374
- # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON
3375
- # format as "3.000001s".
3515
+ # A Duration represents a signed, fixed-length span of time represented
3516
+ # as a count of seconds and fractions of seconds at nanosecond
3517
+ # resolution. It is independent of any calendar and concepts like "day"
3518
+ # or "month". It is related to Timestamp in that the difference between
3519
+ # two Timestamp values is a Duration and it can be added or subtracted
3520
+ # from a Timestamp. Range is approximately +-10,000 years.
3376
3521
  # Corresponds to the JSON property `testProcessDuration`
3377
3522
  # @return [Google::Apis::ToolresultsV1beta3::Duration]
3378
3523
  attr_accessor :test_process_duration
@@ -3399,7 +3544,8 @@ module Google
3399
3544
 
3400
3545
  # The thumbnail file itself.
3401
3546
  # That is, the bytes here are precisely the bytes that make up the thumbnail
3402
- # file; they can be served as an image as-is (with the appropriate content type.)
3547
+ # file; they can be served as an image as-is (with the appropriate content
3548
+ # type.)
3403
3549
  # Always set.
3404
3550
  # Corresponds to the JSON property `data`
3405
3551
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
@@ -3432,70 +3578,30 @@ module Google
3432
3578
  end
3433
3579
 
3434
3580
  # A Timestamp represents a point in time independent of any time zone or local
3435
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
3436
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
3437
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
3438
- # backwards to year one.
3581
+ # calendar, encoded as a count of seconds and fractions of seconds at
3582
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
3583
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
3584
+ # Gregorian calendar backwards to year one.
3439
3585
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
3440
- # second table is needed for interpretation, using a [24-hour linear smear](
3441
- # https://developers.google.com/time/smear).
3586
+ # second table is needed for interpretation, using a [24-hour linear
3587
+ # smear](https://developers.google.com/time/smear).
3442
3588
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
3443
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
3444
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
3445
- # # Examples
3446
- # Example 1: Compute Timestamp from POSIX `time()`.
3447
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
3448
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
3449
- # struct timeval tv; gettimeofday(&tv, NULL);
3450
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
3451
- # tv_usec * 1000);
3452
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
3453
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
3454
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
3455
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
3456
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
3457
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
3458
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
3459
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
3460
- # long millis = System.currentTimeMillis();
3461
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
3462
- # setNanos((int) ((millis % 1000) * 1000000)).build();
3463
- # Example 5: Compute Timestamp from current time in Python.
3464
- # timestamp = Timestamp() timestamp.GetCurrentTime()
3465
- # # JSON Mapping
3466
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
3467
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
3468
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
3469
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
3470
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
3471
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
3472
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
3473
- # serializer should always use UTC (as indicated by "Z") when printing the
3474
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
3475
- # other timezones (as indicated by an offset).
3476
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
3477
- # January 15, 2017.
3478
- # In JavaScript, one can convert a Date object to this format using the standard
3479
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
3480
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
3481
- # datetime.datetime` object can be converted to this format using [`strftime`](
3482
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
3483
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
3484
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
3485
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
3486
- # formatter capable of generating timestamps in this format.
3589
+ # restricting to that range, we ensure that we can convert to and from [RFC
3590
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
3487
3591
  class Timestamp
3488
3592
  include Google::Apis::Core::Hashable
3489
3593
 
3490
- # Non-negative fractions of a second at nanosecond resolution. Negative second
3491
- # values with fractions must still have non-negative nanos values that count
3492
- # forward in time. Must be from 0 to 999,999,999 inclusive.
3594
+ # Non-negative fractions of a second at nanosecond resolution. Negative
3595
+ # second values with fractions must still have non-negative nanos values
3596
+ # that count forward in time. Must be from 0 to 999,999,999
3597
+ # inclusive.
3493
3598
  # Corresponds to the JSON property `nanos`
3494
3599
  # @return [Fixnum]
3495
3600
  attr_accessor :nanos
3496
3601
 
3497
- # Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be
3498
- # from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.
3602
+ # Represents seconds of UTC time since Unix epoch
3603
+ # 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
3604
+ # 9999-12-31T23:59:59Z inclusive.
3499
3605
  # Corresponds to the JSON property `seconds`
3500
3606
  # @return [Fixnum]
3501
3607
  attr_accessor :seconds
@@ -3511,15 +3617,16 @@ module Google
3511
3617
  end
3512
3618
  end
3513
3619
 
3514
- # An execution of an arbitrary tool. It could be a test runner or a tool copying
3515
- # artifacts or deploying code.
3620
+ # An execution of an arbitrary tool. It could be a test runner or a tool
3621
+ # copying artifacts or deploying code.
3516
3622
  class ToolExecution
3517
3623
  include Google::Apis::Core::Hashable
3518
3624
 
3519
- # The full tokenized command line including the program name (equivalent to argv
3520
- # in a C program).
3521
- # - In response: present if set by create request - In create request: optional -
3522
- # In update request: never set
3625
+ # The full tokenized command line including the program name (equivalent to
3626
+ # argv in a C program).
3627
+ # - In response: present if set by create request
3628
+ # - In create request: optional
3629
+ # - In update request: never set
3523
3630
  # Corresponds to the JSON property `commandLineArguments`
3524
3631
  # @return [Array<String>]
3525
3632
  attr_accessor :command_line_arguments
@@ -3530,21 +3637,23 @@ module Google
3530
3637
  attr_accessor :exit_code
3531
3638
 
3532
3639
  # References to any plain text logs output the tool execution.
3533
- # This field can be set before the tool has exited in order to be able to have
3534
- # access to a live view of the logs while the tool is running.
3640
+ # This field can be set before the tool has exited in order to be able to
3641
+ # have access to a live view of the logs while the tool is running.
3535
3642
  # The maximum allowed number of tool logs per step is 1000.
3536
- # - In response: present if set by create/update request - In create request:
3537
- # optional - In update request: optional, any value provided will be appended to
3538
- # the existing list
3643
+ # - In response: present if set by create/update request
3644
+ # - In create request: optional
3645
+ # - In update request: optional, any value provided will be appended to the
3646
+ # existing list
3539
3647
  # Corresponds to the JSON property `toolLogs`
3540
3648
  # @return [Array<Google::Apis::ToolresultsV1beta3::FileReference>]
3541
3649
  attr_accessor :tool_logs
3542
3650
 
3543
3651
  # References to opaque files of any format output by the tool execution.
3544
3652
  # The maximum allowed number of tool outputs per step is 1000.
3545
- # - In response: present if set by create/update request - In create request:
3546
- # optional - In update request: optional, any value provided will be appended to
3547
- # the existing list
3653
+ # - In response: present if set by create/update request
3654
+ # - In create request: optional
3655
+ # - In update request: optional, any value provided will be appended to the
3656
+ # existing list
3548
3657
  # Corresponds to the JSON property `toolOutputs`
3549
3658
  # @return [Array<Google::Apis::ToolresultsV1beta3::ToolOutputReference>]
3550
3659
  attr_accessor :tool_outputs
@@ -3562,13 +3671,13 @@ module Google
3562
3671
  end
3563
3672
  end
3564
3673
 
3565
- # Generic tool step to be used for binaries we do not explicitly support. For
3566
- # example: running cp to copy artifacts from one location to another.
3674
+ # Generic tool step to be used for binaries we do not explicitly support.
3675
+ # For example: running cp to copy artifacts from one location to another.
3567
3676
  class ToolExecutionStep
3568
3677
  include Google::Apis::Core::Hashable
3569
3678
 
3570
- # An execution of an arbitrary tool. It could be a test runner or a tool copying
3571
- # artifacts or deploying code.
3679
+ # An execution of an arbitrary tool. It could be a test runner or a tool
3680
+ # copying artifacts or deploying code.
3572
3681
  # Corresponds to the JSON property `toolExecution`
3573
3682
  # @return [Google::Apis::ToolresultsV1beta3::ToolExecution]
3574
3683
  attr_accessor :tool_execution
@@ -3587,8 +3696,10 @@ module Google
3587
3696
  class ToolExitCode
3588
3697
  include Google::Apis::Core::Hashable
3589
3698
 
3590
- # Tool execution exit code. A value of 0 means that the execution was successful.
3591
- # - In response: always set - In create/update request: always set
3699
+ # Tool execution exit code. A value of 0 means that the execution was
3700
+ # successful.
3701
+ # - In response: always set
3702
+ # - In create/update request: always set
3592
3703
  # Corresponds to the JSON property `number`
3593
3704
  # @return [Fixnum]
3594
3705
  attr_accessor :number
@@ -3608,58 +3719,16 @@ module Google
3608
3719
  include Google::Apis::Core::Hashable
3609
3720
 
3610
3721
  # A Timestamp represents a point in time independent of any time zone or local
3611
- # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
3612
- # resolution. The count is relative to an epoch at UTC midnight on January 1,
3613
- # 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar
3614
- # backwards to year one.
3722
+ # calendar, encoded as a count of seconds and fractions of seconds at
3723
+ # nanosecond resolution. The count is relative to an epoch at UTC midnight on
3724
+ # January 1, 1970, in the proleptic Gregorian calendar which extends the
3725
+ # Gregorian calendar backwards to year one.
3615
3726
  # All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
3616
- # second table is needed for interpretation, using a [24-hour linear smear](
3617
- # https://developers.google.com/time/smear).
3727
+ # second table is needed for interpretation, using a [24-hour linear
3728
+ # smear](https://developers.google.com/time/smear).
3618
3729
  # The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
3619
- # restricting to that range, we ensure that we can convert to and from [RFC 3339]
3620
- # (https://www.ietf.org/rfc/rfc3339.txt) date strings.
3621
- # # Examples
3622
- # Example 1: Compute Timestamp from POSIX `time()`.
3623
- # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);
3624
- # Example 2: Compute Timestamp from POSIX `gettimeofday()`.
3625
- # struct timeval tv; gettimeofday(&tv, NULL);
3626
- # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.
3627
- # tv_usec * 1000);
3628
- # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
3629
- # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.
3630
- # dwHighDateTime) << 32) | ft.dwLowDateTime;
3631
- # // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is
3632
- # 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp
3633
- # timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
3634
- # timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
3635
- # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
3636
- # long millis = System.currentTimeMillis();
3637
- # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .
3638
- # setNanos((int) ((millis % 1000) * 1000000)).build();
3639
- # Example 5: Compute Timestamp from current time in Python.
3640
- # timestamp = Timestamp() timestamp.GetCurrentTime()
3641
- # # JSON Mapping
3642
- # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339](
3643
- # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-`
3644
- # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always
3645
- # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are
3646
- # zero-padded to two digits each. The fractional seconds, which can go up to 9
3647
- # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix
3648
- # indicates the timezone ("UTC"); the timezone is required. A proto3 JSON
3649
- # serializer should always use UTC (as indicated by "Z") when printing the
3650
- # Timestamp type and a proto3 JSON parser should be able to accept both UTC and
3651
- # other timezones (as indicated by an offset).
3652
- # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on
3653
- # January 15, 2017.
3654
- # In JavaScript, one can convert a Date object to this format using the standard
3655
- # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/
3656
- # Reference/Global_Objects/Date/toISOString) method. In Python, a standard `
3657
- # datetime.datetime` object can be converted to this format using [`strftime`](
3658
- # https://docs.python.org/2/library/time.html#time.strftime) with the time
3659
- # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda
3660
- # Time's [`ISODateTimeFormat.dateTime()`]( http://www.joda.org/joda-time/apidocs/
3661
- # org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D ) to obtain a
3662
- # formatter capable of generating timestamps in this format.
3730
+ # restricting to that range, we ensure that we can convert to and from [RFC
3731
+ # 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
3663
3732
  # Corresponds to the JSON property `creationTime`
3664
3733
  # @return [Google::Apis::ToolresultsV1beta3::Timestamp]
3665
3734
  attr_accessor :creation_time
@@ -3671,8 +3740,10 @@ module Google
3671
3740
 
3672
3741
  # A reference to a test case.
3673
3742
  # Test case references are canonically ordered lexicographically by these three
3674
- # factors: * First, by test_suite_name. * Second, by class_name. * Third, by
3675
- # name.
3743
+ # factors:
3744
+ # * First, by test_suite_name.
3745
+ # * Second, by class_name.
3746
+ # * Third, by name.
3676
3747
  # Corresponds to the JSON property `testCase`
3677
3748
  # @return [Google::Apis::ToolresultsV1beta3::TestCaseReference]
3678
3749
  attr_accessor :test_case
@@ -3688,6 +3759,135 @@ module Google
3688
3759
  @test_case = args[:test_case] if args.key?(:test_case)
3689
3760
  end
3690
3761
  end
3762
+
3763
+ # A warning that the screen hierarchy is deeper than the recommended threshold.
3764
+ class UiElementTooDeep
3765
+ include Google::Apis::Core::Hashable
3766
+
3767
+ # The depth of the screen element
3768
+ # Corresponds to the JSON property `depth`
3769
+ # @return [Fixnum]
3770
+ attr_accessor :depth
3771
+
3772
+ # The screen id of the element
3773
+ # Corresponds to the JSON property `screenId`
3774
+ # @return [String]
3775
+ attr_accessor :screen_id
3776
+
3777
+ # The screen state id of the element
3778
+ # Corresponds to the JSON property `screenStateId`
3779
+ # @return [String]
3780
+ attr_accessor :screen_state_id
3781
+
3782
+ def initialize(**args)
3783
+ update!(**args)
3784
+ end
3785
+
3786
+ # Update properties of this object
3787
+ def update!(**args)
3788
+ @depth = args[:depth] if args.key?(:depth)
3789
+ @screen_id = args[:screen_id] if args.key?(:screen_id)
3790
+ @screen_state_id = args[:screen_state_id] if args.key?(:screen_state_id)
3791
+ end
3792
+ end
3793
+
3794
+ # Default unspecified warning.
3795
+ class UnspecifiedWarning
3796
+ include Google::Apis::Core::Hashable
3797
+
3798
+ def initialize(**args)
3799
+ update!(**args)
3800
+ end
3801
+
3802
+ # Update properties of this object
3803
+ def update!(**args)
3804
+ end
3805
+ end
3806
+
3807
+ # Additional details of an unused robodirective.
3808
+ class UnusedRoboDirective
3809
+ include Google::Apis::Core::Hashable
3810
+
3811
+ # The name of the resource that was unused.
3812
+ # Corresponds to the JSON property `resourceName`
3813
+ # @return [String]
3814
+ attr_accessor :resource_name
3815
+
3816
+ def initialize(**args)
3817
+ update!(**args)
3818
+ end
3819
+
3820
+ # Update properties of this object
3821
+ def update!(**args)
3822
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
3823
+ end
3824
+ end
3825
+
3826
+ # This insight is a recommendation to upgrade a given library to the specified
3827
+ # version, in order to avoid dependencies on non-SDK APIs.
3828
+ class UpgradeInsight
3829
+ include Google::Apis::Core::Hashable
3830
+
3831
+ # The name of the package to be upgraded.
3832
+ # Corresponds to the JSON property `packageName`
3833
+ # @return [String]
3834
+ attr_accessor :package_name
3835
+
3836
+ # The suggested version to upgrade to.
3837
+ # Optional: In case we are not sure which version solves this problem
3838
+ # Corresponds to the JSON property `upgradeToVersion`
3839
+ # @return [String]
3840
+ attr_accessor :upgrade_to_version
3841
+
3842
+ def initialize(**args)
3843
+ update!(**args)
3844
+ end
3845
+
3846
+ # Update properties of this object
3847
+ def update!(**args)
3848
+ @package_name = args[:package_name] if args.key?(:package_name)
3849
+ @upgrade_to_version = args[:upgrade_to_version] if args.key?(:upgrade_to_version)
3850
+ end
3851
+ end
3852
+
3853
+ # Additional details of a used Robo directive.
3854
+ class UsedRoboDirective
3855
+ include Google::Apis::Core::Hashable
3856
+
3857
+ # The name of the resource that was used.
3858
+ # Corresponds to the JSON property `resourceName`
3859
+ # @return [String]
3860
+ attr_accessor :resource_name
3861
+
3862
+ def initialize(**args)
3863
+ update!(**args)
3864
+ end
3865
+
3866
+ # Update properties of this object
3867
+ def update!(**args)
3868
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
3869
+ end
3870
+ end
3871
+
3872
+ # Additional details of a used Robo directive with an ignore action.
3873
+ # Note: This is a different scenario than unused directive.
3874
+ class UsedRoboIgnoreDirective
3875
+ include Google::Apis::Core::Hashable
3876
+
3877
+ # The name of the resource that was ignored.
3878
+ # Corresponds to the JSON property `resourceName`
3879
+ # @return [String]
3880
+ attr_accessor :resource_name
3881
+
3882
+ def initialize(**args)
3883
+ update!(**args)
3884
+ end
3885
+
3886
+ # Update properties of this object
3887
+ def update!(**args)
3888
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
3889
+ end
3890
+ end
3691
3891
  end
3692
3892
  end
3693
3893
  end