google-api-client 0.12.0 → 0.13.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 (315) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/api_names.yaml +945 -41609
  4. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +12 -12
  5. data/generated/google/apis/acceleratedmobilepageurl_v1/representations.rb +2 -2
  6. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +1437 -412
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +516 -71
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +1098 -422
  10. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +6 -6
  11. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +3 -3
  12. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +3 -3
  13. data/generated/google/apis/adexchangeseller_v2_0/service.rb +10 -10
  14. data/generated/google/apis/admin_directory_v1/service.rb +26 -26
  15. data/generated/google/apis/adsense_v1_4.rb +1 -1
  16. data/generated/google/apis/adsense_v1_4/classes.rb +2 -2
  17. data/generated/google/apis/adsense_v1_4/representations.rb +3 -3
  18. data/generated/google/apis/adsense_v1_4/service.rb +44 -44
  19. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  20. data/generated/google/apis/adsensehost_v4_1/service.rb +22 -22
  21. data/generated/google/apis/analytics_v3/classes.rb +3 -3
  22. data/generated/google/apis/analytics_v3/representations.rb +3 -3
  23. data/generated/google/apis/analytics_v3/service.rb +82 -82
  24. data/generated/google/apis/analyticsreporting_v4/classes.rb +937 -937
  25. data/generated/google/apis/analyticsreporting_v4/representations.rb +128 -128
  26. data/generated/google/apis/analyticsreporting_v4/service.rb +1 -1
  27. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  28. data/generated/google/apis/androidenterprise_v1/classes.rb +10 -10
  29. data/generated/google/apis/androidenterprise_v1/representations.rb +20 -20
  30. data/generated/google/apis/androidenterprise_v1/service.rb +43 -43
  31. data/generated/google/apis/androidpublisher_v2/classes.rb +26 -26
  32. data/generated/google/apis/androidpublisher_v2/representations.rb +46 -46
  33. data/generated/google/apis/androidpublisher_v2/service.rb +95 -95
  34. data/generated/google/apis/appengine_v1.rb +4 -4
  35. data/generated/google/apis/appengine_v1/classes.rb +1570 -1512
  36. data/generated/google/apis/appengine_v1/representations.rb +362 -343
  37. data/generated/google/apis/appengine_v1/service.rb +220 -220
  38. data/generated/google/apis/appstate_v1.rb +1 -1
  39. data/generated/google/apis/bigquery_v2.rb +1 -1
  40. data/generated/google/apis/bigquery_v2/classes.rb +5 -5
  41. data/generated/google/apis/bigquery_v2/representations.rb +8 -8
  42. data/generated/google/apis/bigquery_v2/service.rb +13 -13
  43. data/generated/google/apis/blogger_v3/service.rb +3 -3
  44. data/generated/google/apis/books_v1/classes.rb +55 -55
  45. data/generated/google/apis/books_v1/representations.rb +67 -67
  46. data/generated/google/apis/books_v1/service.rb +82 -82
  47. data/generated/google/apis/calendar_v3.rb +1 -1
  48. data/generated/google/apis/calendar_v3/classes.rb +6 -6
  49. data/generated/google/apis/calendar_v3/representations.rb +3 -3
  50. data/generated/google/apis/calendar_v3/service.rb +2 -2
  51. data/generated/google/apis/civicinfo_v2/classes.rb +2 -2
  52. data/generated/google/apis/civicinfo_v2/representations.rb +4 -4
  53. data/generated/google/apis/civicinfo_v2/service.rb +12 -12
  54. data/generated/google/apis/classroom_v1.rb +7 -7
  55. data/generated/google/apis/classroom_v1/classes.rb +1013 -991
  56. data/generated/google/apis/classroom_v1/representations.rb +207 -204
  57. data/generated/google/apis/classroom_v1/service.rb +709 -709
  58. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  59. data/generated/google/apis/cloudbuild_v1/classes.rb +307 -307
  60. data/generated/google/apis/cloudbuild_v1/representations.rb +84 -84
  61. data/generated/google/apis/cloudbuild_v1/service.rb +125 -125
  62. data/generated/google/apis/clouddebugger_v2/classes.rb +673 -673
  63. data/generated/google/apis/clouddebugger_v2/representations.rb +152 -152
  64. data/generated/google/apis/clouddebugger_v2/service.rb +55 -55
  65. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  66. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +121 -121
  67. data/generated/google/apis/clouderrorreporting_v1beta1/representations.rb +25 -25
  68. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +74 -74
  69. data/generated/google/apis/cloudkms_v1.rb +1 -1
  70. data/generated/google/apis/cloudkms_v1/classes.rb +668 -613
  71. data/generated/google/apis/cloudkms_v1/representations.rb +151 -133
  72. data/generated/google/apis/cloudkms_v1/service.rb +267 -267
  73. data/generated/google/apis/cloudresourcemanager_v1.rb +4 -4
  74. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +1167 -1168
  75. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +193 -193
  76. data/generated/google/apis/cloudresourcemanager_v1/service.rb +470 -469
  77. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  78. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +508 -509
  79. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +94 -94
  80. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +157 -156
  81. data/generated/google/apis/cloudtrace_v1/service.rb +34 -34
  82. data/generated/google/apis/compute_beta.rb +1 -1
  83. data/generated/google/apis/compute_beta/classes.rb +163 -15
  84. data/generated/google/apis/compute_beta/representations.rb +54 -14
  85. data/generated/google/apis/compute_beta/service.rb +2258 -482
  86. data/generated/google/apis/compute_v1.rb +1 -1
  87. data/generated/google/apis/compute_v1/classes.rb +465 -13
  88. data/generated/google/apis/compute_v1/representations.rb +202 -16
  89. data/generated/google/apis/compute_v1/service.rb +573 -309
  90. data/generated/google/apis/container_v1.rb +1 -1
  91. data/generated/google/apis/container_v1/classes.rb +635 -589
  92. data/generated/google/apis/container_v1/representations.rb +139 -111
  93. data/generated/google/apis/container_v1/service.rb +272 -227
  94. data/generated/google/apis/content_v2.rb +1 -1
  95. data/generated/google/apis/content_v2/classes.rb +86 -74
  96. data/generated/google/apis/content_v2/representations.rb +107 -105
  97. data/generated/google/apis/content_v2/service.rb +131 -130
  98. data/generated/google/apis/customsearch_v1.rb +2 -2
  99. data/generated/google/apis/customsearch_v1/classes.rb +0 -6
  100. data/generated/google/apis/customsearch_v1/representations.rb +0 -1
  101. data/generated/google/apis/customsearch_v1/service.rb +2 -5
  102. data/generated/google/apis/dataflow_v1b3.rb +7 -4
  103. data/generated/google/apis/dataflow_v1b3/classes.rb +3405 -3405
  104. data/generated/google/apis/dataflow_v1b3/representations.rb +834 -834
  105. data/generated/google/apis/dataflow_v1b3/service.rb +244 -244
  106. data/generated/google/apis/dataproc_v1.rb +1 -1
  107. data/generated/google/apis/dataproc_v1/classes.rb +543 -691
  108. data/generated/google/apis/dataproc_v1/representations.rb +129 -185
  109. data/generated/google/apis/dataproc_v1/service.rb +347 -347
  110. data/generated/google/apis/datastore_v1.rb +4 -4
  111. data/generated/google/apis/datastore_v1/classes.rb +833 -833
  112. data/generated/google/apis/datastore_v1/representations.rb +182 -182
  113. data/generated/google/apis/datastore_v1/service.rb +45 -45
  114. data/generated/google/apis/deploymentmanager_v2/classes.rb +5 -5
  115. data/generated/google/apis/deploymentmanager_v2/representations.rb +10 -10
  116. data/generated/google/apis/deploymentmanager_v2/service.rb +20 -20
  117. data/generated/google/apis/discovery_v1/classes.rb +4 -4
  118. data/generated/google/apis/discovery_v1/representations.rb +2 -2
  119. data/generated/google/apis/discovery_v1/service.rb +1 -1
  120. data/generated/google/apis/dns_v1.rb +1 -1
  121. data/generated/google/apis/dns_v1/classes.rb +3 -3
  122. data/generated/google/apis/dns_v1/representations.rb +6 -6
  123. data/generated/google/apis/dns_v1/service.rb +12 -12
  124. data/generated/google/apis/dns_v2beta1.rb +1 -1
  125. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +8 -8
  126. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  127. data/generated/google/apis/drive_v2.rb +1 -1
  128. data/generated/google/apis/drive_v2/classes.rb +1 -1
  129. data/generated/google/apis/drive_v2/service.rb +1 -1
  130. data/generated/google/apis/drive_v3.rb +1 -1
  131. data/generated/google/apis/drive_v3/service.rb +1 -1
  132. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  133. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +160 -110
  134. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +60 -31
  135. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +38 -3
  136. data/generated/google/apis/firebaserules_v1/classes.rb +354 -354
  137. data/generated/google/apis/firebaserules_v1/representations.rb +87 -87
  138. data/generated/google/apis/firebaserules_v1/service.rb +103 -103
  139. data/generated/google/apis/fusiontables_v2/service.rb +2 -2
  140. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  141. data/generated/google/apis/games_configuration_v1configuration/classes.rb +2 -2
  142. data/generated/google/apis/games_configuration_v1configuration/representations.rb +4 -4
  143. data/generated/google/apis/games_configuration_v1configuration/service.rb +8 -8
  144. data/generated/google/apis/games_management_v1management.rb +1 -1
  145. data/generated/google/apis/games_v1.rb +1 -1
  146. data/generated/google/apis/games_v1/classes.rb +23 -23
  147. data/generated/google/apis/games_v1/representations.rb +43 -43
  148. data/generated/google/apis/games_v1/service.rb +72 -72
  149. data/generated/google/apis/genomics_v1.rb +1 -1
  150. data/generated/google/apis/genomics_v1/classes.rb +2316 -2316
  151. data/generated/google/apis/genomics_v1/representations.rb +291 -291
  152. data/generated/google/apis/genomics_v1/service.rb +821 -821
  153. data/generated/google/apis/gmail_v1.rb +1 -1
  154. data/generated/google/apis/groupsmigration_v1.rb +1 -1
  155. data/generated/google/apis/groupssettings_v1.rb +1 -1
  156. data/generated/google/apis/groupssettings_v1/classes.rb +2 -2
  157. data/generated/google/apis/groupssettings_v1/service.rb +3 -0
  158. data/generated/google/apis/iam_v1/classes.rb +338 -338
  159. data/generated/google/apis/iam_v1/representations.rb +98 -98
  160. data/generated/google/apis/iam_v1/service.rb +35 -35
  161. data/generated/google/apis/identitytoolkit_v3/classes.rb +15 -15
  162. data/generated/google/apis/identitytoolkit_v3/representations.rb +30 -30
  163. data/generated/google/apis/identitytoolkit_v3/service.rb +64 -64
  164. data/generated/google/apis/kgsearch_v1/service.rb +13 -13
  165. data/generated/google/apis/language_v1.rb +1 -1
  166. data/generated/google/apis/language_v1/classes.rb +374 -374
  167. data/generated/google/apis/language_v1/representations.rb +97 -97
  168. data/generated/google/apis/language_v1/service.rb +16 -16
  169. data/generated/google/apis/language_v1beta1.rb +1 -1
  170. data/generated/google/apis/language_v1beta1/classes.rb +441 -441
  171. data/generated/google/apis/language_v1beta1/representations.rb +108 -108
  172. data/generated/google/apis/language_v1beta1/service.rb +30 -30
  173. data/generated/google/apis/licensing_v1/service.rb +2 -2
  174. data/generated/google/apis/logging_v2.rb +1 -1
  175. data/generated/google/apis/logging_v2/classes.rb +712 -712
  176. data/generated/google/apis/logging_v2/representations.rb +109 -109
  177. data/generated/google/apis/logging_v2/service.rb +543 -539
  178. data/generated/google/apis/logging_v2beta1.rb +1 -1
  179. data/generated/google/apis/logging_v2beta1/classes.rb +752 -752
  180. data/generated/google/apis/logging_v2beta1/representations.rb +94 -94
  181. data/generated/google/apis/logging_v2beta1/service.rb +257 -256
  182. data/generated/google/apis/manufacturers_v1/classes.rb +130 -130
  183. data/generated/google/apis/manufacturers_v1/representations.rb +28 -28
  184. data/generated/google/apis/mirror_v1/classes.rb +5 -5
  185. data/generated/google/apis/mirror_v1/representations.rb +10 -10
  186. data/generated/google/apis/mirror_v1/service.rb +20 -20
  187. data/generated/google/apis/ml_v1.rb +1 -1
  188. data/generated/google/apis/ml_v1/classes.rb +1830 -1210
  189. data/generated/google/apis/ml_v1/representations.rb +342 -120
  190. data/generated/google/apis/ml_v1/service.rb +365 -258
  191. data/generated/google/apis/monitoring_v3.rb +4 -4
  192. data/generated/google/apis/monitoring_v3/classes.rb +889 -889
  193. data/generated/google/apis/monitoring_v3/representations.rb +174 -174
  194. data/generated/google/apis/monitoring_v3/service.rb +119 -119
  195. data/generated/google/apis/mybusiness_v3/service.rb +5 -5
  196. data/generated/google/apis/oauth2_v2/service.rb +1 -1
  197. data/generated/google/apis/pagespeedonline_v2/classes.rb +11 -11
  198. data/generated/google/apis/pagespeedonline_v2/representations.rb +13 -13
  199. data/generated/google/apis/pagespeedonline_v2/service.rb +1 -1
  200. data/generated/google/apis/partners_v2.rb +1 -1
  201. data/generated/google/apis/partners_v2/classes.rb +550 -536
  202. data/generated/google/apis/partners_v2/representations.rb +118 -116
  203. data/generated/google/apis/partners_v2/service.rb +439 -439
  204. data/generated/google/apis/people_v1.rb +4 -4
  205. data/generated/google/apis/people_v1/classes.rb +414 -413
  206. data/generated/google/apis/people_v1/representations.rb +85 -85
  207. data/generated/google/apis/people_v1/service.rb +111 -18
  208. data/generated/google/apis/plus_domains_v1.rb +1 -1
  209. data/generated/google/apis/plus_domains_v1/service.rb +4 -4
  210. data/generated/google/apis/plus_v1.rb +1 -1
  211. data/generated/google/apis/plus_v1/service.rb +1 -1
  212. data/generated/google/apis/prediction_v1_6/service.rb +8 -8
  213. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  214. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +443 -443
  215. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +92 -92
  216. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +152 -152
  217. data/generated/google/apis/pubsub_v1/classes.rb +249 -249
  218. data/generated/google/apis/pubsub_v1/representations.rb +80 -80
  219. data/generated/google/apis/pubsub_v1/service.rb +415 -415
  220. data/generated/google/apis/qpx_express_v1/classes.rb +2 -2
  221. data/generated/google/apis/qpx_express_v1/representations.rb +4 -4
  222. data/generated/google/apis/qpx_express_v1/service.rb +8 -8
  223. data/generated/google/apis/replicapool_v1beta2/classes.rb +5 -5
  224. data/generated/google/apis/replicapool_v1beta2/representations.rb +10 -10
  225. data/generated/google/apis/replicapool_v1beta2/service.rb +21 -21
  226. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +1 -1
  227. data/generated/google/apis/resourceviews_v1beta2/classes.rb +5 -5
  228. data/generated/google/apis/resourceviews_v1beta2/representations.rb +10 -10
  229. data/generated/google/apis/resourceviews_v1beta2/service.rb +20 -20
  230. data/generated/google/apis/runtimeconfig_v1.rb +4 -4
  231. data/generated/google/apis/runtimeconfig_v1/classes.rb +15 -15
  232. data/generated/google/apis/runtimeconfig_v1/representations.rb +2 -2
  233. data/generated/google/apis/runtimeconfig_v1/service.rb +4 -4
  234. data/generated/google/apis/script_v1.rb +17 -17
  235. data/generated/google/apis/script_v1/classes.rb +27 -27
  236. data/generated/google/apis/script_v1/representations.rb +5 -5
  237. data/generated/google/apis/script_v1/service.rb +4 -4
  238. data/generated/google/apis/searchconsole_v1.rb +1 -1
  239. data/generated/google/apis/searchconsole_v1/classes.rb +53 -53
  240. data/generated/google/apis/searchconsole_v1/representations.rb +23 -23
  241. data/generated/google/apis/searchconsole_v1/service.rb +4 -4
  242. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  243. data/generated/google/apis/servicecontrol_v1/classes.rb +1175 -1175
  244. data/generated/google/apis/servicecontrol_v1/representations.rb +206 -206
  245. data/generated/google/apis/servicecontrol_v1/service.rb +116 -116
  246. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  247. data/generated/google/apis/servicemanagement_v1/classes.rb +1186 -1125
  248. data/generated/google/apis/servicemanagement_v1/representations.rb +241 -223
  249. data/generated/google/apis/servicemanagement_v1/service.rb +201 -201
  250. data/generated/google/apis/serviceuser_v1.rb +1 -1
  251. data/generated/google/apis/serviceuser_v1/classes.rb +2645 -2641
  252. data/generated/google/apis/serviceuser_v1/representations.rb +234 -234
  253. data/generated/google/apis/serviceuser_v1/service.rb +37 -37
  254. data/generated/google/apis/sheets_v4.rb +1 -1
  255. data/generated/google/apis/sheets_v4/classes.rb +5042 -4111
  256. data/generated/google/apis/sheets_v4/representations.rb +994 -824
  257. data/generated/google/apis/sheets_v4/service.rb +80 -80
  258. data/generated/google/apis/site_verification_v1/classes.rb +6 -6
  259. data/generated/google/apis/site_verification_v1/representations.rb +8 -8
  260. data/generated/google/apis/site_verification_v1/service.rb +12 -12
  261. data/generated/google/apis/slides_v1.rb +1 -1
  262. data/generated/google/apis/slides_v1/classes.rb +2885 -2885
  263. data/generated/google/apis/slides_v1/representations.rb +310 -310
  264. data/generated/google/apis/slides_v1/service.rb +54 -54
  265. data/generated/google/apis/sourcerepo_v1/classes.rb +206 -206
  266. data/generated/google/apis/sourcerepo_v1/representations.rb +52 -52
  267. data/generated/google/apis/sourcerepo_v1/service.rb +5 -5
  268. data/generated/google/apis/spanner_v1.rb +1 -1
  269. data/generated/google/apis/spanner_v1/classes.rb +2142 -2141
  270. data/generated/google/apis/spanner_v1/representations.rb +174 -174
  271. data/generated/google/apis/spanner_v1/service.rb +497 -497
  272. data/generated/google/apis/speech_v1beta1.rb +1 -1
  273. data/generated/google/apis/speech_v1beta1/classes.rb +227 -227
  274. data/generated/google/apis/speech_v1beta1/representations.rb +50 -50
  275. data/generated/google/apis/speech_v1beta1/service.rb +33 -33
  276. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  277. data/generated/google/apis/sqladmin_v1beta4/classes.rb +21 -21
  278. data/generated/google/apis/sqladmin_v1beta4/representations.rb +29 -29
  279. data/generated/google/apis/sqladmin_v1beta4/service.rb +56 -56
  280. data/generated/google/apis/storage_v1.rb +1 -1
  281. data/generated/google/apis/storage_v1/classes.rb +40 -6
  282. data/generated/google/apis/storage_v1/representations.rb +20 -4
  283. data/generated/google/apis/storage_v1/service.rb +61 -46
  284. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  285. data/generated/google/apis/storagetransfer_v1/classes.rb +184 -184
  286. data/generated/google/apis/storagetransfer_v1/representations.rb +35 -35
  287. data/generated/google/apis/storagetransfer_v1/service.rb +70 -70
  288. data/generated/google/apis/tagmanager_v1/service.rb +33 -33
  289. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  290. data/generated/google/apis/translate_v2/classes.rb +12 -12
  291. data/generated/google/apis/translate_v2/representations.rb +10 -10
  292. data/generated/google/apis/translate_v2/service.rb +62 -62
  293. data/generated/google/apis/vision_v1.rb +1 -1
  294. data/generated/google/apis/vision_v1/classes.rb +1267 -1267
  295. data/generated/google/apis/vision_v1/representations.rb +200 -200
  296. data/generated/google/apis/vision_v1/service.rb +10 -10
  297. data/generated/google/apis/webmasters_v3.rb +1 -1
  298. data/generated/google/apis/webmasters_v3/classes.rb +4 -4
  299. data/generated/google/apis/webmasters_v3/representations.rb +8 -8
  300. data/generated/google/apis/webmasters_v3/service.rb +21 -21
  301. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  302. data/generated/google/apis/youtube_analytics_v1/classes.rb +2 -2
  303. data/generated/google/apis/youtube_analytics_v1/representations.rb +4 -4
  304. data/generated/google/apis/youtube_analytics_v1/service.rb +8 -8
  305. data/generated/google/apis/youtube_v3/classes.rb +20 -20
  306. data/generated/google/apis/youtube_v3/representations.rb +40 -40
  307. data/generated/google/apis/youtube_v3/service.rb +80 -80
  308. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  309. data/generated/google/apis/youtubereporting_v1/classes.rb +129 -129
  310. data/generated/google/apis/youtubereporting_v1/representations.rb +38 -38
  311. data/generated/google/apis/youtubereporting_v1/service.rb +97 -97
  312. data/lib/google/apis/generator/annotator.rb +2 -2
  313. data/lib/google/apis/generator/model.rb +2 -2
  314. data/lib/google/apis/version.rb +1 -1
  315. metadata +2 -2
@@ -22,12 +22,6 @@ module Google
22
22
  module Apis
23
23
  module FirebasedynamiclinksV1
24
24
 
25
- class CreateShortDynamicLinkResponse
26
- class Representation < Google::Apis::Core::JsonRepresentation; end
27
-
28
- include Google::Apis::Core::JsonObjectSupport
29
- end
30
-
31
25
  class Suffix
32
26
  class Representation < Google::Apis::Core::JsonRepresentation; end
33
27
 
@@ -58,13 +52,19 @@ module Google
58
52
  include Google::Apis::Core::JsonObjectSupport
59
53
  end
60
54
 
61
- class AndroidInfo
55
+ class DynamicLinkWarning
62
56
  class Representation < Google::Apis::Core::JsonRepresentation; end
63
57
 
64
58
  include Google::Apis::Core::JsonObjectSupport
65
59
  end
66
60
 
67
- class DynamicLinkWarning
61
+ class DynamicLinkStats
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
67
+ class AndroidInfo
68
68
  class Representation < Google::Apis::Core::JsonRepresentation; end
69
69
 
70
70
  include Google::Apis::Core::JsonObjectSupport
@@ -94,14 +94,16 @@ module Google
94
94
  include Google::Apis::Core::JsonObjectSupport
95
95
  end
96
96
 
97
+ class DynamicLinkEventStat
98
+ class Representation < Google::Apis::Core::JsonRepresentation; end
99
+
100
+ include Google::Apis::Core::JsonObjectSupport
101
+ end
102
+
97
103
  class CreateShortDynamicLinkResponse
98
- # @private
99
- class Representation < Google::Apis::Core::JsonRepresentation
100
- property :preview_link, as: 'previewLink'
101
- collection :warning, as: 'warning', class: Google::Apis::FirebasedynamiclinksV1::DynamicLinkWarning, decorator: Google::Apis::FirebasedynamiclinksV1::DynamicLinkWarning::Representation
104
+ class Representation < Google::Apis::Core::JsonRepresentation; end
102
105
 
103
- property :short_link, as: 'shortLink'
104
- end
106
+ include Google::Apis::Core::JsonObjectSupport
105
107
  end
106
108
 
107
109
  class Suffix
@@ -114,23 +116,18 @@ module Google
114
116
  class GooglePlayAnalytics
115
117
  # @private
116
118
  class Representation < Google::Apis::Core::JsonRepresentation
117
- property :utm_medium, as: 'utmMedium'
118
- property :utm_term, as: 'utmTerm'
119
119
  property :utm_source, as: 'utmSource'
120
120
  property :gclid, as: 'gclid'
121
121
  property :utm_campaign, as: 'utmCampaign'
122
122
  property :utm_content, as: 'utmContent'
123
+ property :utm_medium, as: 'utmMedium'
124
+ property :utm_term, as: 'utmTerm'
123
125
  end
124
126
  end
125
127
 
126
128
  class DynamicLinkInfo
127
129
  # @private
128
130
  class Representation < Google::Apis::Core::JsonRepresentation
129
- property :link, as: 'link'
130
- property :ios_info, as: 'iosInfo', class: Google::Apis::FirebasedynamiclinksV1::IosInfo, decorator: Google::Apis::FirebasedynamiclinksV1::IosInfo::Representation
131
-
132
- property :social_meta_tag_info, as: 'socialMetaTagInfo', class: Google::Apis::FirebasedynamiclinksV1::SocialMetaTagInfo, decorator: Google::Apis::FirebasedynamiclinksV1::SocialMetaTagInfo::Representation
133
-
134
131
  property :android_info, as: 'androidInfo', class: Google::Apis::FirebasedynamiclinksV1::AndroidInfo, decorator: Google::Apis::FirebasedynamiclinksV1::AndroidInfo::Representation
135
132
 
136
133
  property :navigation_info, as: 'navigationInfo', class: Google::Apis::FirebasedynamiclinksV1::NavigationInfo, decorator: Google::Apis::FirebasedynamiclinksV1::NavigationInfo::Representation
@@ -138,6 +135,11 @@ module Google
138
135
  property :analytics_info, as: 'analyticsInfo', class: Google::Apis::FirebasedynamiclinksV1::AnalyticsInfo, decorator: Google::Apis::FirebasedynamiclinksV1::AnalyticsInfo::Representation
139
136
 
140
137
  property :dynamic_link_domain, as: 'dynamicLinkDomain'
138
+ property :link, as: 'link'
139
+ property :ios_info, as: 'iosInfo', class: Google::Apis::FirebasedynamiclinksV1::IosInfo, decorator: Google::Apis::FirebasedynamiclinksV1::IosInfo::Representation
140
+
141
+ property :social_meta_tag_info, as: 'socialMetaTagInfo', class: Google::Apis::FirebasedynamiclinksV1::SocialMetaTagInfo, decorator: Google::Apis::FirebasedynamiclinksV1::SocialMetaTagInfo::Representation
142
+
141
143
  end
142
144
  end
143
145
 
@@ -160,21 +162,29 @@ module Google
160
162
  end
161
163
  end
162
164
 
163
- class AndroidInfo
165
+ class DynamicLinkWarning
164
166
  # @private
165
167
  class Representation < Google::Apis::Core::JsonRepresentation
166
- property :android_link, as: 'androidLink'
167
- property :android_fallback_link, as: 'androidFallbackLink'
168
- property :android_package_name, as: 'androidPackageName'
169
- property :android_min_package_version_code, as: 'androidMinPackageVersionCode'
168
+ property :warning_code, as: 'warningCode'
169
+ property :warning_message, as: 'warningMessage'
170
170
  end
171
171
  end
172
172
 
173
- class DynamicLinkWarning
173
+ class DynamicLinkStats
174
174
  # @private
175
175
  class Representation < Google::Apis::Core::JsonRepresentation
176
- property :warning_code, as: 'warningCode'
177
- property :warning_message, as: 'warningMessage'
176
+ collection :link_event_stats, as: 'linkEventStats', class: Google::Apis::FirebasedynamiclinksV1::DynamicLinkEventStat, decorator: Google::Apis::FirebasedynamiclinksV1::DynamicLinkEventStat::Representation
177
+
178
+ end
179
+ end
180
+
181
+ class AndroidInfo
182
+ # @private
183
+ class Representation < Google::Apis::Core::JsonRepresentation
184
+ property :android_package_name, as: 'androidPackageName'
185
+ property :android_min_package_version_code, as: 'androidMinPackageVersionCode'
186
+ property :android_link, as: 'androidLink'
187
+ property :android_fallback_link, as: 'androidFallbackLink'
178
188
  end
179
189
  end
180
190
 
@@ -188,12 +198,12 @@ module Google
188
198
  class IosInfo
189
199
  # @private
190
200
  class Representation < Google::Apis::Core::JsonRepresentation
201
+ property :ios_fallback_link, as: 'iosFallbackLink'
202
+ property :ios_app_store_id, as: 'iosAppStoreId'
191
203
  property :ios_ipad_fallback_link, as: 'iosIpadFallbackLink'
192
204
  property :ios_ipad_bundle_id, as: 'iosIpadBundleId'
193
205
  property :ios_custom_scheme, as: 'iosCustomScheme'
194
206
  property :ios_bundle_id, as: 'iosBundleId'
195
- property :ios_fallback_link, as: 'iosFallbackLink'
196
- property :ios_app_store_id, as: 'iosAppStoreId'
197
207
  end
198
208
  end
199
209
 
@@ -217,6 +227,25 @@ module Google
217
227
 
218
228
  end
219
229
  end
230
+
231
+ class DynamicLinkEventStat
232
+ # @private
233
+ class Representation < Google::Apis::Core::JsonRepresentation
234
+ property :count, :numeric_string => true, as: 'count'
235
+ property :event, as: 'event'
236
+ property :platform, as: 'platform'
237
+ end
238
+ end
239
+
240
+ class CreateShortDynamicLinkResponse
241
+ # @private
242
+ class Representation < Google::Apis::Core::JsonRepresentation
243
+ property :short_link, as: 'shortLink'
244
+ property :preview_link, as: 'previewLink'
245
+ collection :warning, as: 'warning', class: Google::Apis::FirebasedynamiclinksV1::DynamicLinkWarning, decorator: Google::Apis::FirebasedynamiclinksV1::DynamicLinkWarning::Representation
246
+
247
+ end
248
+ end
220
249
  end
221
250
  end
222
251
  end
@@ -55,11 +55,11 @@ module Google
55
55
  # The Dynamic Link domain in the request must be owned by requester's
56
56
  # Firebase project.
57
57
  # @param [Google::Apis::FirebasedynamiclinksV1::CreateShortDynamicLinkRequest] create_short_dynamic_link_request_object
58
+ # @param [String] fields
59
+ # Selector specifying which fields to include in a partial response.
58
60
  # @param [String] quota_user
59
61
  # Available to use for quota purposes for server-side applications. Can be any
60
62
  # arbitrary string assigned to a user, but should not exceed 40 characters.
61
- # @param [String] fields
62
- # Selector specifying which fields to include in a partial response.
63
63
  # @param [Google::Apis::RequestOptions] options
64
64
  # Request-specific options
65
65
  #
@@ -72,14 +72,49 @@ module Google
72
72
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
73
73
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
74
74
  # @raise [Google::Apis::AuthorizationError] Authorization is required
75
- def create_short_link_short_dynamic_link(create_short_dynamic_link_request_object = nil, quota_user: nil, fields: nil, options: nil, &block)
75
+ def create_short_link_short_dynamic_link(create_short_dynamic_link_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
76
76
  command = make_simple_command(:post, 'v1/shortLinks', options)
77
77
  command.request_representation = Google::Apis::FirebasedynamiclinksV1::CreateShortDynamicLinkRequest::Representation
78
78
  command.request_object = create_short_dynamic_link_request_object
79
79
  command.response_representation = Google::Apis::FirebasedynamiclinksV1::CreateShortDynamicLinkResponse::Representation
80
80
  command.response_class = Google::Apis::FirebasedynamiclinksV1::CreateShortDynamicLinkResponse
81
+ command.query['fields'] = fields unless fields.nil?
81
82
  command.query['quotaUser'] = quota_user unless quota_user.nil?
83
+ execute_or_queue_command(command, &block)
84
+ end
85
+
86
+ # Fetches analytics stats of a short Dynamic Link for a given
87
+ # duration. Metrics include number of clicks, redirects, installs,
88
+ # app first opens, and app reopens.
89
+ # @param [String] dynamic_link
90
+ # Dynamic Link URL. e.g. https://abcd.app.goo.gl/wxyz
91
+ # @param [Fixnum] duration_days
92
+ # The span of time requested in days.
93
+ # @param [String] fields
94
+ # Selector specifying which fields to include in a partial response.
95
+ # @param [String] quota_user
96
+ # Available to use for quota purposes for server-side applications. Can be any
97
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
98
+ # @param [Google::Apis::RequestOptions] options
99
+ # Request-specific options
100
+ #
101
+ # @yield [result, err] Result & error if block supplied
102
+ # @yieldparam result [Google::Apis::FirebasedynamiclinksV1::DynamicLinkStats] parsed result object
103
+ # @yieldparam err [StandardError] error object if request failed
104
+ #
105
+ # @return [Google::Apis::FirebasedynamiclinksV1::DynamicLinkStats]
106
+ #
107
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
108
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
109
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
110
+ def get_link_stats(dynamic_link, duration_days: nil, fields: nil, quota_user: nil, options: nil, &block)
111
+ command = make_simple_command(:get, 'v1/{dynamicLink}/linkStats', options)
112
+ command.response_representation = Google::Apis::FirebasedynamiclinksV1::DynamicLinkStats::Representation
113
+ command.response_class = Google::Apis::FirebasedynamiclinksV1::DynamicLinkStats
114
+ command.params['dynamicLink'] = dynamic_link unless dynamic_link.nil?
115
+ command.query['durationDays'] = duration_days unless duration_days.nil?
82
116
  command.query['fields'] = fields unless fields.nil?
117
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
83
118
  execute_or_queue_command(command, &block)
84
119
  end
85
120
 
@@ -22,51 +22,26 @@ module Google
22
22
  module Apis
23
23
  module FirebaserulesV1
24
24
 
25
- # `Release` is a named reference to a `Ruleset`. Once a `Release` refers to a
26
- # `Ruleset`, rules-enabled services will be able to enforce the `Ruleset`.
27
- class Release
25
+ # Possible result values from the function mock invocation.
26
+ class Result
28
27
  include Google::Apis::Core::Hashable
29
28
 
30
- # Time the release was created.
31
- # Output only.
32
- # Corresponds to the JSON property `createTime`
33
- # @return [String]
34
- attr_accessor :create_time
35
-
36
- # Time the release was updated.
37
- # Output only.
38
- # Corresponds to the JSON property `updateTime`
39
- # @return [String]
40
- attr_accessor :update_time
41
-
42
- # Resource name for the `Release`.
43
- # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`
44
- # which affords developers a great deal of flexibility in mapping the name
45
- # to the style that best fits their existing development practices. For
46
- # example, a name could refer to an environment, an app, a version, or some
47
- # combination of three.
48
- # In the table below, for the project name `projects/foo`, the following
49
- # relative release paths show how flat and structured names might be chosen
50
- # to match a desired development / deployment strategy.
51
- # Use Case | Flat Name | Structured Name
52
- # -------------|---------------------|----------------
53
- # Environments | releases/qa | releases/qa
54
- # Apps | releases/app1_qa | releases/app1/qa
55
- # Versions | releases/app1_v2_qa | releases/app1/v2/qa
56
- # The delimiter between the release name path elements can be almost anything
57
- # and it should work equally well with the release name list filter, but in
58
- # many ways the structured paths provide a clearer picture of the
59
- # relationship between `Release` instances.
60
- # Format: `projects/`project_id`/releases/`release_id``
61
- # Corresponds to the JSON property `name`
62
- # @return [String]
63
- attr_accessor :name
29
+ # The result is an actual value. The type of the value must match that
30
+ # of the type declared by the service.
31
+ # Corresponds to the JSON property `value`
32
+ # @return [Object]
33
+ attr_accessor :value
64
34
 
65
- # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must
66
- # exist the `Release` to be created.
67
- # Corresponds to the JSON property `rulesetName`
68
- # @return [String]
69
- attr_accessor :ruleset_name
35
+ # A generic empty message that you can re-use to avoid defining duplicated
36
+ # empty messages in your APIs. A typical example is to use it as the request
37
+ # or the response type of an API method. For instance:
38
+ # service Foo `
39
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
40
+ # `
41
+ # The JSON representation for `Empty` is empty JSON object ````.
42
+ # Corresponds to the JSON property `undefined`
43
+ # @return [Google::Apis::FirebaserulesV1::Empty]
44
+ attr_accessor :undefined
70
45
 
71
46
  def initialize(**args)
72
47
  update!(**args)
@@ -74,29 +49,30 @@ module Google
74
49
 
75
50
  # Update properties of this object
76
51
  def update!(**args)
77
- @create_time = args[:create_time] if args.key?(:create_time)
78
- @update_time = args[:update_time] if args.key?(:update_time)
79
- @name = args[:name] if args.key?(:name)
80
- @ruleset_name = args[:ruleset_name] if args.key?(:ruleset_name)
52
+ @value = args[:value] if args.key?(:value)
53
+ @undefined = args[:undefined] if args.key?(:undefined)
81
54
  end
82
55
  end
83
56
 
84
- # The response for FirebaseRulesService.TestRuleset.
85
- class TestRulesetResponse
57
+ # Position in the `Source` content including its line, column number, and an
58
+ # index of the `File` in the `Source` message. Used for debug purposes.
59
+ class SourcePosition
86
60
  include Google::Apis::Core::Hashable
87
61
 
88
- # The set of test results given the test cases in the `TestSuite`.
89
- # The results will appear in the same order as the test cases appear in the
90
- # `TestSuite`.
91
- # Corresponds to the JSON property `testResults`
92
- # @return [Array<Google::Apis::FirebaserulesV1::TestResult>]
93
- attr_accessor :test_results
62
+ # Line number of the source fragment. 1-based.
63
+ # Corresponds to the JSON property `line`
64
+ # @return [Fixnum]
65
+ attr_accessor :line
94
66
 
95
- # Syntactic and semantic `Source` issues of varying severity. Issues of
96
- # `ERROR` severity will prevent tests from executing.
97
- # Corresponds to the JSON property `issues`
98
- # @return [Array<Google::Apis::FirebaserulesV1::Issue>]
99
- attr_accessor :issues
67
+ # First column on the source line associated with the source fragment.
68
+ # Corresponds to the JSON property `column`
69
+ # @return [Fixnum]
70
+ attr_accessor :column
71
+
72
+ # Name of the `File`.
73
+ # Corresponds to the JSON property `fileName`
74
+ # @return [String]
75
+ attr_accessor :file_name
100
76
 
101
77
  def initialize(**args)
102
78
  update!(**args)
@@ -104,43 +80,60 @@ module Google
104
80
 
105
81
  # Update properties of this object
106
82
  def update!(**args)
107
- @test_results = args[:test_results] if args.key?(:test_results)
108
- @issues = args[:issues] if args.key?(:issues)
83
+ @line = args[:line] if args.key?(:line)
84
+ @column = args[:column] if args.key?(:column)
85
+ @file_name = args[:file_name] if args.key?(:file_name)
109
86
  end
110
87
  end
111
88
 
112
- # Test result message containing the state of the test as well as a
113
- # description and source position for test failures.
114
- class TestResult
89
+ # `TestCase` messages provide the request context and an expectation as to
90
+ # whether the given context will be allowed or denied. Test cases may specify
91
+ # the `request`, `resource`, and `function_mocks` to mock a function call to
92
+ # a service-provided function.
93
+ # The `request` object represents context present at request-time.
94
+ # The `resource` is the value of the target resource as it appears in
95
+ # persistent storage before the request is executed.
96
+ class TestCase
115
97
  include Google::Apis::Core::Hashable
116
98
 
117
- # Position in the `Source` content including its line, column number, and an
118
- # index of the `File` in the `Source` message. Used for debug purposes.
119
- # Corresponds to the JSON property `errorPosition`
120
- # @return [Google::Apis::FirebaserulesV1::SourcePosition]
121
- attr_accessor :error_position
99
+ # Optional resource value as it appears in persistent storage before the
100
+ # request is fulfilled.
101
+ # The resource type depends on the `request.path` value.
102
+ # Corresponds to the JSON property `resource`
103
+ # @return [Object]
104
+ attr_accessor :resource
122
105
 
123
- # The set of function calls made to service-defined methods.
124
- # Function calls are included in the order in which they are encountered
125
- # during evaluation, are provided for both mocked and unmocked functions,
126
- # and included on the response regardless of the test `state`.
127
- # Corresponds to the JSON property `functionCalls`
128
- # @return [Array<Google::Apis::FirebaserulesV1::FunctionCall>]
129
- attr_accessor :function_calls
106
+ # Optional function mocks for service-defined functions. If not set, any
107
+ # service defined function is expected to return an error, which may or may
108
+ # not influence the test outcome.
109
+ # Corresponds to the JSON property `functionMocks`
110
+ # @return [Array<Google::Apis::FirebaserulesV1::FunctionMock>]
111
+ attr_accessor :function_mocks
130
112
 
131
- # State of the test.
132
- # Corresponds to the JSON property `state`
113
+ # Test expectation.
114
+ # Corresponds to the JSON property `expectation`
133
115
  # @return [String]
134
- attr_accessor :state
116
+ attr_accessor :expectation
135
117
 
136
- # Debug messages related to test execution issues encountered during
137
- # evaluation.
138
- # Debug messages may be related to too many or too few invocations of
139
- # function mocks or to runtime errors that occur during evaluation.
140
- # For example: ```Unable to read variable [name: "resource"]```
141
- # Corresponds to the JSON property `debugMessages`
142
- # @return [Array<String>]
143
- attr_accessor :debug_messages
118
+ # Request context.
119
+ # The exact format of the request context is service-dependent. See the
120
+ # appropriate service documentation for information about the supported
121
+ # fields and types on the request. Minimally, all services support the
122
+ # following fields and types:
123
+ # Request field | Type
124
+ # ---------------|-----------------
125
+ # auth.uid | `string`
126
+ # auth.token | `map<string, string>`
127
+ # headers | `map<string, string>`
128
+ # method | `string`
129
+ # params | `map<string, string>`
130
+ # path | `string`
131
+ # time | `google.protobuf.Timestamp`
132
+ # If the request value is not well-formed for the service, the request will
133
+ # be rejected as an invalid argument.
134
+ # Corresponds to the JSON property `request`
135
+ # @return [Object]
136
+ attr_accessor :request
144
137
 
145
138
  def initialize(**args)
146
139
  update!(**args)
@@ -148,27 +141,35 @@ module Google
148
141
 
149
142
  # Update properties of this object
150
143
  def update!(**args)
151
- @error_position = args[:error_position] if args.key?(:error_position)
152
- @function_calls = args[:function_calls] if args.key?(:function_calls)
153
- @state = args[:state] if args.key?(:state)
154
- @debug_messages = args[:debug_messages] if args.key?(:debug_messages)
144
+ @resource = args[:resource] if args.key?(:resource)
145
+ @function_mocks = args[:function_mocks] if args.key?(:function_mocks)
146
+ @expectation = args[:expectation] if args.key?(:expectation)
147
+ @request = args[:request] if args.key?(:request)
155
148
  end
156
149
  end
157
150
 
158
- # The response for FirebaseRulesService.ListRulesets.
159
- class ListRulesetsResponse
151
+ # `Ruleset` is an immutable copy of `Source` with a globally unique identifier
152
+ # and a creation time.
153
+ class Ruleset
160
154
  include Google::Apis::Core::Hashable
161
155
 
162
- # List of `Ruleset` instances.
163
- # Corresponds to the JSON property `rulesets`
164
- # @return [Array<Google::Apis::FirebaserulesV1::Ruleset>]
165
- attr_accessor :rulesets
156
+ # `Source` is one or more `File` messages comprising a logical set of rules.
157
+ # Corresponds to the JSON property `source`
158
+ # @return [Google::Apis::FirebaserulesV1::Source]
159
+ attr_accessor :source
166
160
 
167
- # The pagination token to retrieve the next page of results. If the value is
168
- # empty, no further results remain.
169
- # Corresponds to the JSON property `nextPageToken`
161
+ # Time the `Ruleset` was created.
162
+ # Output only.
163
+ # Corresponds to the JSON property `createTime`
170
164
  # @return [String]
171
- attr_accessor :next_page_token
165
+ attr_accessor :create_time
166
+
167
+ # Name of the `Ruleset`. The ruleset_id is auto generated by the service.
168
+ # Format: `projects/`project_id`/rulesets/`ruleset_id``
169
+ # Output only.
170
+ # Corresponds to the JSON property `name`
171
+ # @return [String]
172
+ attr_accessor :name
172
173
 
173
174
  def initialize(**args)
174
175
  update!(**args)
@@ -176,30 +177,28 @@ module Google
176
177
 
177
178
  # Update properties of this object
178
179
  def update!(**args)
179
- @rulesets = args[:rulesets] if args.key?(:rulesets)
180
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
180
+ @source = args[:source] if args.key?(:source)
181
+ @create_time = args[:create_time] if args.key?(:create_time)
182
+ @name = args[:name] if args.key?(:name)
181
183
  end
182
184
  end
183
185
 
184
- # Arg matchers for the mock function.
185
- class Arg
186
+ # The request for FirebaseRulesService.TestRuleset.
187
+ class TestRulesetRequest
186
188
  include Google::Apis::Core::Hashable
187
189
 
188
- # Argument exactly matches value provided.
189
- # Corresponds to the JSON property `exactValue`
190
- # @return [Object]
191
- attr_accessor :exact_value
190
+ # `Source` is one or more `File` messages comprising a logical set of rules.
191
+ # Corresponds to the JSON property `source`
192
+ # @return [Google::Apis::FirebaserulesV1::Source]
193
+ attr_accessor :source
192
194
 
193
- # A generic empty message that you can re-use to avoid defining duplicated
194
- # empty messages in your APIs. A typical example is to use it as the request
195
- # or the response type of an API method. For instance:
196
- # service Foo `
197
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
198
- # `
199
- # The JSON representation for `Empty` is empty JSON object ````.
200
- # Corresponds to the JSON property `anyValue`
201
- # @return [Google::Apis::FirebaserulesV1::Empty]
202
- attr_accessor :any_value
195
+ # `TestSuite` is a collection of `TestCase` instances that validate the logical
196
+ # correctness of a `Ruleset`. The `TestSuite` may be referenced in-line within
197
+ # a `TestRuleset` invocation or as part of a `Release` object as a pre-release
198
+ # check.
199
+ # Corresponds to the JSON property `testSuite`
200
+ # @return [Google::Apis::FirebaserulesV1::TestSuite]
201
+ attr_accessor :test_suite
203
202
 
204
203
  def initialize(**args)
205
204
  update!(**args)
@@ -207,22 +206,30 @@ module Google
207
206
 
208
207
  # Update properties of this object
209
208
  def update!(**args)
210
- @exact_value = args[:exact_value] if args.key?(:exact_value)
211
- @any_value = args[:any_value] if args.key?(:any_value)
209
+ @source = args[:source] if args.key?(:source)
210
+ @test_suite = args[:test_suite] if args.key?(:test_suite)
212
211
  end
213
212
  end
214
213
 
215
- # `TestSuite` is a collection of `TestCase` instances that validate the logical
216
- # correctness of a `Ruleset`. The `TestSuite` may be referenced in-line within
217
- # a `TestRuleset` invocation or as part of a `Release` object as a pre-release
218
- # check.
219
- class TestSuite
214
+ # Issues include warnings, errors, and deprecation notices.
215
+ class Issue
220
216
  include Google::Apis::Core::Hashable
221
217
 
222
- # Collection of test cases associated with the `TestSuite`.
223
- # Corresponds to the JSON property `testCases`
224
- # @return [Array<Google::Apis::FirebaserulesV1::TestCase>]
225
- attr_accessor :test_cases
218
+ # Short error description.
219
+ # Corresponds to the JSON property `description`
220
+ # @return [String]
221
+ attr_accessor :description
222
+
223
+ # Position in the `Source` content including its line, column number, and an
224
+ # index of the `File` in the `Source` message. Used for debug purposes.
225
+ # Corresponds to the JSON property `sourcePosition`
226
+ # @return [Google::Apis::FirebaserulesV1::SourcePosition]
227
+ attr_accessor :source_position
228
+
229
+ # The severity of the issue.
230
+ # Corresponds to the JSON property `severity`
231
+ # @return [String]
232
+ attr_accessor :severity
226
233
 
227
234
  def initialize(**args)
228
235
  update!(**args)
@@ -230,57 +237,57 @@ module Google
230
237
 
231
238
  # Update properties of this object
232
239
  def update!(**args)
233
- @test_cases = args[:test_cases] if args.key?(:test_cases)
240
+ @description = args[:description] if args.key?(:description)
241
+ @source_position = args[:source_position] if args.key?(:source_position)
242
+ @severity = args[:severity] if args.key?(:severity)
234
243
  end
235
244
  end
236
245
 
237
- # A generic empty message that you can re-use to avoid defining duplicated
238
- # empty messages in your APIs. A typical example is to use it as the request
239
- # or the response type of an API method. For instance:
240
- # service Foo `
241
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
242
- # `
243
- # The JSON representation for `Empty` is empty JSON object ````.
244
- class Empty
246
+ # The response for FirebaseRulesService.ListReleases.
247
+ class ListReleasesResponse
245
248
  include Google::Apis::Core::Hashable
246
249
 
250
+ # List of `Release` instances.
251
+ # Corresponds to the JSON property `releases`
252
+ # @return [Array<Google::Apis::FirebaserulesV1::Release>]
253
+ attr_accessor :releases
254
+
255
+ # The pagination token to retrieve the next page of results. If the value is
256
+ # empty, no further results remain.
257
+ # Corresponds to the JSON property `nextPageToken`
258
+ # @return [String]
259
+ attr_accessor :next_page_token
260
+
247
261
  def initialize(**args)
248
262
  update!(**args)
249
263
  end
250
264
 
251
265
  # Update properties of this object
252
266
  def update!(**args)
267
+ @releases = args[:releases] if args.key?(:releases)
268
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
253
269
  end
254
270
  end
255
271
 
256
- # Mock function definition.
257
- # Mocks must refer to a function declared by the target service. The type of
258
- # the function args and result will be inferred at test time. If either the
259
- # arg or result values are not compatible with function type declaration, the
260
- # request will be considered invalid.
261
- # More than one `FunctionMock` may be provided for a given function name so
262
- # long as the `Arg` matchers are distinct. There may be only one function
263
- # for a given overload where all `Arg` values are `Arg.any_value`.
264
- class FunctionMock
272
+ # `File` containing source content.
273
+ class File
265
274
  include Google::Apis::Core::Hashable
266
275
 
267
- # The list of `Arg` values to match. The order in which the arguments are
268
- # provided is the order in which they must appear in the function
269
- # invocation.
270
- # Corresponds to the JSON property `args`
271
- # @return [Array<Google::Apis::FirebaserulesV1::Arg>]
272
- attr_accessor :args
276
+ # File name.
277
+ # Corresponds to the JSON property `name`
278
+ # @return [String]
279
+ attr_accessor :name
273
280
 
274
- # The name of the function.
275
- # The function name must match one provided by a service declaration.
276
- # Corresponds to the JSON property `function`
281
+ # Textual Content.
282
+ # Corresponds to the JSON property `content`
277
283
  # @return [String]
278
- attr_accessor :function
284
+ attr_accessor :content
279
285
 
280
- # Possible result values from the function mock invocation.
281
- # Corresponds to the JSON property `result`
282
- # @return [Google::Apis::FirebaserulesV1::Result]
283
- attr_accessor :result
286
+ # Fingerprint (e.g. github sha) associated with the `File`.
287
+ # Corresponds to the JSON property `fingerprint`
288
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
289
+ # @return [String]
290
+ attr_accessor :fingerprint
284
291
 
285
292
  def initialize(**args)
286
293
  update!(**args)
@@ -288,20 +295,26 @@ module Google
288
295
 
289
296
  # Update properties of this object
290
297
  def update!(**args)
291
- @args = args[:args] if args.key?(:args)
292
- @function = args[:function] if args.key?(:function)
293
- @result = args[:result] if args.key?(:result)
298
+ @name = args[:name] if args.key?(:name)
299
+ @content = args[:content] if args.key?(:content)
300
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
294
301
  end
295
302
  end
296
303
 
297
- # `Source` is one or more `File` messages comprising a logical set of rules.
298
- class Source
304
+ # Represents a service-defined function call that was invoked during test
305
+ # execution.
306
+ class FunctionCall
299
307
  include Google::Apis::Core::Hashable
300
308
 
301
- # `File` set constituting the `Source` bundle.
302
- # Corresponds to the JSON property `files`
303
- # @return [Array<Google::Apis::FirebaserulesV1::File>]
304
- attr_accessor :files
309
+ # The arguments that were provided to the function.
310
+ # Corresponds to the JSON property `args`
311
+ # @return [Array<Object>]
312
+ attr_accessor :args
313
+
314
+ # Name of the function invoked.
315
+ # Corresponds to the JSON property `function`
316
+ # @return [String]
317
+ attr_accessor :function
305
318
 
306
319
  def initialize(**args)
307
320
  update!(**args)
@@ -309,30 +322,56 @@ module Google
309
322
 
310
323
  # Update properties of this object
311
324
  def update!(**args)
312
- @files = args[:files] if args.key?(:files)
325
+ @args = args[:args] if args.key?(:args)
326
+ @function = args[:function] if args.key?(:function)
313
327
  end
314
328
  end
315
329
 
316
- # Possible result values from the function mock invocation.
317
- class Result
330
+ # `Release` is a named reference to a `Ruleset`. Once a `Release` refers to a
331
+ # `Ruleset`, rules-enabled services will be able to enforce the `Ruleset`.
332
+ class Release
318
333
  include Google::Apis::Core::Hashable
319
334
 
320
- # The result is an actual value. The type of the value must match that
321
- # of the type declared by the service.
322
- # Corresponds to the JSON property `value`
323
- # @return [Object]
324
- attr_accessor :value
335
+ # Time the release was created.
336
+ # Output only.
337
+ # Corresponds to the JSON property `createTime`
338
+ # @return [String]
339
+ attr_accessor :create_time
325
340
 
326
- # A generic empty message that you can re-use to avoid defining duplicated
327
- # empty messages in your APIs. A typical example is to use it as the request
328
- # or the response type of an API method. For instance:
329
- # service Foo `
330
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
331
- # `
332
- # The JSON representation for `Empty` is empty JSON object ````.
333
- # Corresponds to the JSON property `undefined`
334
- # @return [Google::Apis::FirebaserulesV1::Empty]
335
- attr_accessor :undefined
341
+ # Time the release was updated.
342
+ # Output only.
343
+ # Corresponds to the JSON property `updateTime`
344
+ # @return [String]
345
+ attr_accessor :update_time
346
+
347
+ # Resource name for the `Release`.
348
+ # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`
349
+ # which affords developers a great deal of flexibility in mapping the name
350
+ # to the style that best fits their existing development practices. For
351
+ # example, a name could refer to an environment, an app, a version, or some
352
+ # combination of three.
353
+ # In the table below, for the project name `projects/foo`, the following
354
+ # relative release paths show how flat and structured names might be chosen
355
+ # to match a desired development / deployment strategy.
356
+ # Use Case | Flat Name | Structured Name
357
+ # -------------|---------------------|----------------
358
+ # Environments | releases/qa | releases/qa
359
+ # Apps | releases/app1_qa | releases/app1/qa
360
+ # Versions | releases/app1_v2_qa | releases/app1/v2/qa
361
+ # The delimiter between the release name path elements can be almost anything
362
+ # and it should work equally well with the release name list filter, but in
363
+ # many ways the structured paths provide a clearer picture of the
364
+ # relationship between `Release` instances.
365
+ # Format: `projects/`project_id`/releases/`release_id``
366
+ # Corresponds to the JSON property `name`
367
+ # @return [String]
368
+ attr_accessor :name
369
+
370
+ # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must
371
+ # exist the `Release` to be created.
372
+ # Corresponds to the JSON property `rulesetName`
373
+ # @return [String]
374
+ attr_accessor :ruleset_name
336
375
 
337
376
  def initialize(**args)
338
377
  update!(**args)
@@ -340,30 +379,29 @@ module Google
340
379
 
341
380
  # Update properties of this object
342
381
  def update!(**args)
343
- @value = args[:value] if args.key?(:value)
344
- @undefined = args[:undefined] if args.key?(:undefined)
382
+ @create_time = args[:create_time] if args.key?(:create_time)
383
+ @update_time = args[:update_time] if args.key?(:update_time)
384
+ @name = args[:name] if args.key?(:name)
385
+ @ruleset_name = args[:ruleset_name] if args.key?(:ruleset_name)
345
386
  end
346
387
  end
347
388
 
348
- # Position in the `Source` content including its line, column number, and an
349
- # index of the `File` in the `Source` message. Used for debug purposes.
350
- class SourcePosition
389
+ # The response for FirebaseRulesService.TestRuleset.
390
+ class TestRulesetResponse
351
391
  include Google::Apis::Core::Hashable
352
392
 
353
- # Line number of the source fragment. 1-based.
354
- # Corresponds to the JSON property `line`
355
- # @return [Fixnum]
356
- attr_accessor :line
357
-
358
- # First column on the source line associated with the source fragment.
359
- # Corresponds to the JSON property `column`
360
- # @return [Fixnum]
361
- attr_accessor :column
393
+ # The set of test results given the test cases in the `TestSuite`.
394
+ # The results will appear in the same order as the test cases appear in the
395
+ # `TestSuite`.
396
+ # Corresponds to the JSON property `testResults`
397
+ # @return [Array<Google::Apis::FirebaserulesV1::TestResult>]
398
+ attr_accessor :test_results
362
399
 
363
- # Name of the `File`.
364
- # Corresponds to the JSON property `fileName`
365
- # @return [String]
366
- attr_accessor :file_name
400
+ # Syntactic and semantic `Source` issues of varying severity. Issues of
401
+ # `ERROR` severity will prevent tests from executing.
402
+ # Corresponds to the JSON property `issues`
403
+ # @return [Array<Google::Apis::FirebaserulesV1::Issue>]
404
+ attr_accessor :issues
367
405
 
368
406
  def initialize(**args)
369
407
  update!(**args)
@@ -371,60 +409,43 @@ module Google
371
409
 
372
410
  # Update properties of this object
373
411
  def update!(**args)
374
- @line = args[:line] if args.key?(:line)
375
- @column = args[:column] if args.key?(:column)
376
- @file_name = args[:file_name] if args.key?(:file_name)
412
+ @test_results = args[:test_results] if args.key?(:test_results)
413
+ @issues = args[:issues] if args.key?(:issues)
377
414
  end
378
415
  end
379
416
 
380
- # `TestCase` messages provide the request context and an expectation as to
381
- # whether the given context will be allowed or denied. Test cases may specify
382
- # the `request`, `resource`, and `function_mocks` to mock a function call to
383
- # a service-provided function.
384
- # The `request` object represents context present at request-time.
385
- # The `resource` is the value of the target resource as it appears in
386
- # persistent storage before the request is executed.
387
- class TestCase
417
+ # Test result message containing the state of the test as well as a
418
+ # description and source position for test failures.
419
+ class TestResult
388
420
  include Google::Apis::Core::Hashable
389
421
 
390
- # Optional resource value as it appears in persistent storage before the
391
- # request is fulfilled.
392
- # The resource type depends on the `request.path` value.
393
- # Corresponds to the JSON property `resource`
394
- # @return [Object]
395
- attr_accessor :resource
396
-
397
- # Optional function mocks for service-defined functions. If not set, any
398
- # service defined function is expected to return an error, which may or may
399
- # not influence the test outcome.
400
- # Corresponds to the JSON property `functionMocks`
401
- # @return [Array<Google::Apis::FirebaserulesV1::FunctionMock>]
402
- attr_accessor :function_mocks
422
+ # The set of function calls made to service-defined methods.
423
+ # Function calls are included in the order in which they are encountered
424
+ # during evaluation, are provided for both mocked and unmocked functions,
425
+ # and included on the response regardless of the test `state`.
426
+ # Corresponds to the JSON property `functionCalls`
427
+ # @return [Array<Google::Apis::FirebaserulesV1::FunctionCall>]
428
+ attr_accessor :function_calls
403
429
 
404
- # Test expectation.
405
- # Corresponds to the JSON property `expectation`
430
+ # State of the test.
431
+ # Corresponds to the JSON property `state`
406
432
  # @return [String]
407
- attr_accessor :expectation
433
+ attr_accessor :state
408
434
 
409
- # Request context.
410
- # The exact format of the request context is service-dependent. See the
411
- # appropriate service documentation for information about the supported
412
- # fields and types on the request. Minimally, all services support the
413
- # following fields and types:
414
- # Request field | Type
415
- # ---------------|-----------------
416
- # auth.uid | `string`
417
- # auth.token | `map<string, string>`
418
- # headers | `map<string, string>`
419
- # method | `string`
420
- # params | `map<string, string>`
421
- # path | `string`
422
- # time | `google.protobuf.Timestamp`
423
- # If the request value is not well-formed for the service, the request will
424
- # be rejected as an invalid argument.
425
- # Corresponds to the JSON property `request`
426
- # @return [Object]
427
- attr_accessor :request
435
+ # Debug messages related to test execution issues encountered during
436
+ # evaluation.
437
+ # Debug messages may be related to too many or too few invocations of
438
+ # function mocks or to runtime errors that occur during evaluation.
439
+ # For example: ```Unable to read variable [name: "resource"]```
440
+ # Corresponds to the JSON property `debugMessages`
441
+ # @return [Array<String>]
442
+ attr_accessor :debug_messages
443
+
444
+ # Position in the `Source` content including its line, column number, and an
445
+ # index of the `File` in the `Source` message. Used for debug purposes.
446
+ # Corresponds to the JSON property `errorPosition`
447
+ # @return [Google::Apis::FirebaserulesV1::SourcePosition]
448
+ attr_accessor :error_position
428
449
 
429
450
  def initialize(**args)
430
451
  update!(**args)
@@ -432,35 +453,27 @@ module Google
432
453
 
433
454
  # Update properties of this object
434
455
  def update!(**args)
435
- @resource = args[:resource] if args.key?(:resource)
436
- @function_mocks = args[:function_mocks] if args.key?(:function_mocks)
437
- @expectation = args[:expectation] if args.key?(:expectation)
438
- @request = args[:request] if args.key?(:request)
456
+ @function_calls = args[:function_calls] if args.key?(:function_calls)
457
+ @state = args[:state] if args.key?(:state)
458
+ @debug_messages = args[:debug_messages] if args.key?(:debug_messages)
459
+ @error_position = args[:error_position] if args.key?(:error_position)
439
460
  end
440
461
  end
441
462
 
442
- # `Ruleset` is an immutable copy of `Source` with a globally unique identifier
443
- # and a creation time.
444
- class Ruleset
463
+ # The response for FirebaseRulesService.ListRulesets.
464
+ class ListRulesetsResponse
445
465
  include Google::Apis::Core::Hashable
446
466
 
447
- # Name of the `Ruleset`. The ruleset_id is auto generated by the service.
448
- # Format: `projects/`project_id`/rulesets/`ruleset_id``
449
- # Output only.
450
- # Corresponds to the JSON property `name`
451
- # @return [String]
452
- attr_accessor :name
453
-
454
- # `Source` is one or more `File` messages comprising a logical set of rules.
455
- # Corresponds to the JSON property `source`
456
- # @return [Google::Apis::FirebaserulesV1::Source]
457
- attr_accessor :source
467
+ # List of `Ruleset` instances.
468
+ # Corresponds to the JSON property `rulesets`
469
+ # @return [Array<Google::Apis::FirebaserulesV1::Ruleset>]
470
+ attr_accessor :rulesets
458
471
 
459
- # Time the `Ruleset` was created.
460
- # Output only.
461
- # Corresponds to the JSON property `createTime`
472
+ # The pagination token to retrieve the next page of results. If the value is
473
+ # empty, no further results remain.
474
+ # Corresponds to the JSON property `nextPageToken`
462
475
  # @return [String]
463
- attr_accessor :create_time
476
+ attr_accessor :next_page_token
464
477
 
465
478
  def initialize(**args)
466
479
  update!(**args)
@@ -468,28 +481,30 @@ module Google
468
481
 
469
482
  # Update properties of this object
470
483
  def update!(**args)
471
- @name = args[:name] if args.key?(:name)
472
- @source = args[:source] if args.key?(:source)
473
- @create_time = args[:create_time] if args.key?(:create_time)
484
+ @rulesets = args[:rulesets] if args.key?(:rulesets)
485
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
474
486
  end
475
487
  end
476
488
 
477
- # The request for FirebaseRulesService.TestRuleset.
478
- class TestRulesetRequest
489
+ # Arg matchers for the mock function.
490
+ class Arg
479
491
  include Google::Apis::Core::Hashable
480
492
 
481
- # `Source` is one or more `File` messages comprising a logical set of rules.
482
- # Corresponds to the JSON property `source`
483
- # @return [Google::Apis::FirebaserulesV1::Source]
484
- attr_accessor :source
493
+ # Argument exactly matches value provided.
494
+ # Corresponds to the JSON property `exactValue`
495
+ # @return [Object]
496
+ attr_accessor :exact_value
485
497
 
486
- # `TestSuite` is a collection of `TestCase` instances that validate the logical
487
- # correctness of a `Ruleset`. The `TestSuite` may be referenced in-line within
488
- # a `TestRuleset` invocation or as part of a `Release` object as a pre-release
489
- # check.
490
- # Corresponds to the JSON property `testSuite`
491
- # @return [Google::Apis::FirebaserulesV1::TestSuite]
492
- attr_accessor :test_suite
498
+ # A generic empty message that you can re-use to avoid defining duplicated
499
+ # empty messages in your APIs. A typical example is to use it as the request
500
+ # or the response type of an API method. For instance:
501
+ # service Foo `
502
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
503
+ # `
504
+ # The JSON representation for `Empty` is empty JSON object ````.
505
+ # Corresponds to the JSON property `anyValue`
506
+ # @return [Google::Apis::FirebaserulesV1::Empty]
507
+ attr_accessor :any_value
493
508
 
494
509
  def initialize(**args)
495
510
  update!(**args)
@@ -497,30 +512,22 @@ module Google
497
512
 
498
513
  # Update properties of this object
499
514
  def update!(**args)
500
- @source = args[:source] if args.key?(:source)
501
- @test_suite = args[:test_suite] if args.key?(:test_suite)
515
+ @exact_value = args[:exact_value] if args.key?(:exact_value)
516
+ @any_value = args[:any_value] if args.key?(:any_value)
502
517
  end
503
518
  end
504
519
 
505
- # Issues include warnings, errors, and deprecation notices.
506
- class Issue
520
+ # `TestSuite` is a collection of `TestCase` instances that validate the logical
521
+ # correctness of a `Ruleset`. The `TestSuite` may be referenced in-line within
522
+ # a `TestRuleset` invocation or as part of a `Release` object as a pre-release
523
+ # check.
524
+ class TestSuite
507
525
  include Google::Apis::Core::Hashable
508
526
 
509
- # Position in the `Source` content including its line, column number, and an
510
- # index of the `File` in the `Source` message. Used for debug purposes.
511
- # Corresponds to the JSON property `sourcePosition`
512
- # @return [Google::Apis::FirebaserulesV1::SourcePosition]
513
- attr_accessor :source_position
514
-
515
- # The severity of the issue.
516
- # Corresponds to the JSON property `severity`
517
- # @return [String]
518
- attr_accessor :severity
519
-
520
- # Short error description.
521
- # Corresponds to the JSON property `description`
522
- # @return [String]
523
- attr_accessor :description
527
+ # Collection of test cases associated with the `TestSuite`.
528
+ # Corresponds to the JSON property `testCases`
529
+ # @return [Array<Google::Apis::FirebaserulesV1::TestCase>]
530
+ attr_accessor :test_cases
524
531
 
525
532
  def initialize(**args)
526
533
  update!(**args)
@@ -528,51 +535,56 @@ module Google
528
535
 
529
536
  # Update properties of this object
530
537
  def update!(**args)
531
- @source_position = args[:source_position] if args.key?(:source_position)
532
- @severity = args[:severity] if args.key?(:severity)
533
- @description = args[:description] if args.key?(:description)
538
+ @test_cases = args[:test_cases] if args.key?(:test_cases)
534
539
  end
535
540
  end
536
541
 
537
- # The response for FirebaseRulesService.ListReleases.
538
- class ListReleasesResponse
542
+ # A generic empty message that you can re-use to avoid defining duplicated
543
+ # empty messages in your APIs. A typical example is to use it as the request
544
+ # or the response type of an API method. For instance:
545
+ # service Foo `
546
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
547
+ # `
548
+ # The JSON representation for `Empty` is empty JSON object ````.
549
+ class Empty
539
550
  include Google::Apis::Core::Hashable
540
551
 
541
- # The pagination token to retrieve the next page of results. If the value is
542
- # empty, no further results remain.
543
- # Corresponds to the JSON property `nextPageToken`
544
- # @return [String]
545
- attr_accessor :next_page_token
546
-
547
- # List of `Release` instances.
548
- # Corresponds to the JSON property `releases`
549
- # @return [Array<Google::Apis::FirebaserulesV1::Release>]
550
- attr_accessor :releases
551
-
552
552
  def initialize(**args)
553
553
  update!(**args)
554
554
  end
555
555
 
556
556
  # Update properties of this object
557
557
  def update!(**args)
558
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
559
- @releases = args[:releases] if args.key?(:releases)
560
558
  end
561
559
  end
562
560
 
563
- # Represents a service-defined function call that was invoked during test
564
- # execution.
565
- class FunctionCall
561
+ # Mock function definition.
562
+ # Mocks must refer to a function declared by the target service. The type of
563
+ # the function args and result will be inferred at test time. If either the
564
+ # arg or result values are not compatible with function type declaration, the
565
+ # request will be considered invalid.
566
+ # More than one `FunctionMock` may be provided for a given function name so
567
+ # long as the `Arg` matchers are distinct. There may be only one function
568
+ # for a given overload where all `Arg` values are `Arg.any_value`.
569
+ class FunctionMock
566
570
  include Google::Apis::Core::Hashable
567
571
 
568
- # Name of the function invoked.
572
+ # The name of the function.
573
+ # The function name must match one provided by a service declaration.
569
574
  # Corresponds to the JSON property `function`
570
575
  # @return [String]
571
576
  attr_accessor :function
572
577
 
573
- # The arguments that were provided to the function.
578
+ # Possible result values from the function mock invocation.
579
+ # Corresponds to the JSON property `result`
580
+ # @return [Google::Apis::FirebaserulesV1::Result]
581
+ attr_accessor :result
582
+
583
+ # The list of `Arg` values to match. The order in which the arguments are
584
+ # provided is the order in which they must appear in the function
585
+ # invocation.
574
586
  # Corresponds to the JSON property `args`
575
- # @return [Array<Object>]
587
+ # @return [Array<Google::Apis::FirebaserulesV1::Arg>]
576
588
  attr_accessor :args
577
589
 
578
590
  def initialize(**args)
@@ -582,29 +594,19 @@ module Google
582
594
  # Update properties of this object
583
595
  def update!(**args)
584
596
  @function = args[:function] if args.key?(:function)
597
+ @result = args[:result] if args.key?(:result)
585
598
  @args = args[:args] if args.key?(:args)
586
599
  end
587
600
  end
588
601
 
589
- # `File` containing source content.
590
- class File
602
+ # `Source` is one or more `File` messages comprising a logical set of rules.
603
+ class Source
591
604
  include Google::Apis::Core::Hashable
592
605
 
593
- # Fingerprint (e.g. github sha) associated with the `File`.
594
- # Corresponds to the JSON property `fingerprint`
595
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
596
- # @return [String]
597
- attr_accessor :fingerprint
598
-
599
- # File name.
600
- # Corresponds to the JSON property `name`
601
- # @return [String]
602
- attr_accessor :name
603
-
604
- # Textual Content.
605
- # Corresponds to the JSON property `content`
606
- # @return [String]
607
- attr_accessor :content
606
+ # `File` set constituting the `Source` bundle.
607
+ # Corresponds to the JSON property `files`
608
+ # @return [Array<Google::Apis::FirebaserulesV1::File>]
609
+ attr_accessor :files
608
610
 
609
611
  def initialize(**args)
610
612
  update!(**args)
@@ -612,9 +614,7 @@ module Google
612
614
 
613
615
  # Update properties of this object
614
616
  def update!(**args)
615
- @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
616
- @name = args[:name] if args.key?(:name)
617
- @content = args[:content] if args.key?(:content)
617
+ @files = args[:files] if args.key?(:files)
618
618
  end
619
619
  end
620
620
  end