google-api-client 0.38.0 → 0.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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