elasticsearch-api 7.2.0 → 8.0.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 (798) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +8 -12
  3. data/README.md +30 -43
  4. data/Rakefile +35 -107
  5. data/api-spec-testing/README.md +118 -0
  6. data/api-spec-testing/logging.rb +28 -0
  7. data/api-spec-testing/rspec_matchers.rb +312 -0
  8. data/api-spec-testing/test_file/action.rb +179 -0
  9. data/api-spec-testing/test_file/task_group.rb +340 -0
  10. data/api-spec-testing/test_file/test.rb +295 -0
  11. data/api-spec-testing/test_file.rb +173 -0
  12. data/api-spec-testing/wipe_cluster.rb +389 -0
  13. data/elasticsearch-api.gemspec +42 -53
  14. data/lib/elasticsearch/api/actions/async_search/delete.rb +51 -0
  15. data/lib/elasticsearch/api/actions/async_search/get.rb +54 -0
  16. data/lib/elasticsearch/api/actions/async_search/status.rb +51 -0
  17. data/lib/elasticsearch/api/actions/async_search/submit.rb +95 -0
  18. data/lib/elasticsearch/api/actions/autoscaling/delete_autoscaling_policy.rb +51 -0
  19. data/lib/elasticsearch/api/actions/autoscaling/get_autoscaling_capacity.rb +46 -0
  20. data/lib/elasticsearch/api/actions/autoscaling/get_autoscaling_policy.rb +51 -0
  21. data/lib/elasticsearch/api/actions/autoscaling/put_autoscaling_policy.rb +53 -0
  22. data/lib/elasticsearch/api/actions/bulk.rb +28 -76
  23. data/lib/elasticsearch/api/actions/cat/aliases.rb +30 -58
  24. data/lib/elasticsearch/api/actions/cat/allocation.rb +30 -55
  25. data/lib/elasticsearch/api/actions/cat/count.rb +23 -50
  26. data/lib/elasticsearch/api/actions/cat/fielddata.rb +25 -38
  27. data/lib/elasticsearch/api/actions/cat/health.rb +21 -41
  28. data/lib/elasticsearch/api/actions/cat/help.rb +16 -15
  29. data/lib/elasticsearch/api/actions/cat/indices.rb +31 -67
  30. data/lib/elasticsearch/api/actions/cat/master.rb +21 -39
  31. data/lib/elasticsearch/api/actions/cat/ml_data_frame_analytics.rb +61 -0
  32. data/lib/elasticsearch/api/actions/cat/ml_datafeeds.rb +61 -0
  33. data/lib/elasticsearch/api/actions/cat/ml_jobs.rb +62 -0
  34. data/lib/elasticsearch/api/actions/cat/ml_trained_models.rb +63 -0
  35. data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +18 -22
  36. data/lib/elasticsearch/api/actions/cat/nodes.rb +23 -50
  37. data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +22 -39
  38. data/lib/elasticsearch/api/actions/cat/plugins.rb +20 -24
  39. data/lib/elasticsearch/api/actions/cat/recovery.rb +29 -61
  40. data/lib/elasticsearch/api/actions/cat/repositories.rb +19 -30
  41. data/lib/elasticsearch/api/actions/cat/segments.rb +25 -27
  42. data/lib/elasticsearch/api/actions/cat/shards.rb +28 -64
  43. data/lib/elasticsearch/api/actions/cat/snapshots.rb +27 -33
  44. data/lib/elasticsearch/api/actions/cat/tasks.rb +24 -27
  45. data/lib/elasticsearch/api/actions/cat/templates.rb +24 -24
  46. data/lib/elasticsearch/api/actions/cat/thread_pool.rb +31 -52
  47. data/lib/elasticsearch/api/actions/cat/transforms.rb +62 -0
  48. data/lib/elasticsearch/api/actions/clear_scroll.rb +27 -9
  49. data/lib/elasticsearch/api/actions/close_point_in_time.rb +45 -0
  50. data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +23 -19
  51. data/lib/elasticsearch/api/actions/cluster/delete_component_template.rb +53 -0
  52. data/lib/elasticsearch/api/actions/cluster/delete_voting_config_exclusions.rb +47 -0
  53. data/lib/elasticsearch/api/actions/cluster/exists_component_template.rb +55 -0
  54. data/lib/elasticsearch/api/actions/cluster/get_component_template.rb +55 -0
  55. data/lib/elasticsearch/api/actions/cluster/get_settings.rb +19 -24
  56. data/lib/elasticsearch/api/actions/cluster/health.rb +31 -52
  57. data/lib/elasticsearch/api/actions/cluster/pending_tasks.rb +17 -22
  58. data/lib/elasticsearch/api/actions/cluster/post_voting_config_exclusions.rb +49 -0
  59. data/lib/elasticsearch/api/actions/cluster/put_component_template.rb +56 -0
  60. data/lib/elasticsearch/api/actions/cluster/put_settings.rb +22 -23
  61. data/lib/elasticsearch/api/actions/cluster/remote_info.rb +14 -7
  62. data/lib/elasticsearch/api/actions/cluster/reroute.rb +22 -43
  63. data/lib/elasticsearch/api/actions/cluster/state.rb +31 -47
  64. data/lib/elasticsearch/api/actions/cluster/stats.rb +23 -18
  65. data/lib/elasticsearch/api/actions/count.rb +29 -45
  66. data/lib/elasticsearch/api/actions/create.rb +17 -28
  67. data/lib/elasticsearch/api/actions/cross_cluster_replication/delete_auto_follow_pattern.rb +51 -0
  68. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow.rb +54 -0
  69. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow_info.rb +51 -0
  70. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow_stats.rb +51 -0
  71. data/lib/elasticsearch/api/actions/cross_cluster_replication/forget_follower.rb +53 -0
  72. data/lib/elasticsearch/api/actions/cross_cluster_replication/get_auto_follow_pattern.rb +53 -0
  73. data/lib/elasticsearch/api/actions/cross_cluster_replication/pause_auto_follow_pattern.rb +51 -0
  74. data/lib/elasticsearch/api/actions/cross_cluster_replication/pause_follow.rb +51 -0
  75. data/lib/elasticsearch/api/actions/cross_cluster_replication/put_auto_follow_pattern.rb +53 -0
  76. data/lib/elasticsearch/api/actions/cross_cluster_replication/resume_auto_follow_pattern.rb +51 -0
  77. data/lib/elasticsearch/api/actions/cross_cluster_replication/resume_follow.rb +52 -0
  78. data/lib/elasticsearch/api/actions/cross_cluster_replication/stats.rb +46 -0
  79. data/lib/elasticsearch/api/actions/cross_cluster_replication/unfollow.rb +51 -0
  80. data/lib/elasticsearch/api/actions/dangling_indices/delete_dangling_index.rb +54 -0
  81. data/lib/elasticsearch/api/actions/dangling_indices/import_dangling_index.rb +54 -0
  82. data/lib/elasticsearch/api/actions/dangling_indices/list_dangling_indices.rb +46 -0
  83. data/lib/elasticsearch/api/actions/data_frame_transform_deprecated/delete_transform.rb +59 -0
  84. data/lib/elasticsearch/api/actions/data_frame_transform_deprecated/get_transform.rb +64 -0
  85. data/lib/elasticsearch/api/actions/data_frame_transform_deprecated/get_transform_stats.rb +61 -0
  86. data/lib/elasticsearch/api/actions/data_frame_transform_deprecated/preview_transform.rb +56 -0
  87. data/lib/elasticsearch/api/actions/data_frame_transform_deprecated/put_transform.rb +61 -0
  88. data/lib/elasticsearch/api/actions/data_frame_transform_deprecated/start_transform.rb +59 -0
  89. data/lib/elasticsearch/api/actions/data_frame_transform_deprecated/stop_transform.rb +61 -0
  90. data/lib/elasticsearch/api/actions/data_frame_transform_deprecated/update_transform.rb +61 -0
  91. data/lib/elasticsearch/api/actions/delete.rb +30 -43
  92. data/lib/elasticsearch/api/actions/delete_by_query.rb +25 -69
  93. data/lib/elasticsearch/api/actions/{delete_by_rethrottle.rb → delete_by_query_rethrottle.rb} +20 -16
  94. data/lib/elasticsearch/api/actions/delete_script.rb +21 -18
  95. data/lib/elasticsearch/api/actions/enrich/delete_policy.rb +51 -0
  96. data/lib/elasticsearch/api/actions/enrich/execute_policy.rb +52 -0
  97. data/lib/elasticsearch/api/actions/enrich/get_policy.rb +53 -0
  98. data/lib/elasticsearch/api/actions/enrich/put_policy.rb +53 -0
  99. data/lib/elasticsearch/api/actions/enrich/stats.rb +46 -0
  100. data/lib/elasticsearch/api/actions/eql/delete.rb +51 -0
  101. data/lib/elasticsearch/api/actions/eql/get.rb +53 -0
  102. data/lib/elasticsearch/api/actions/eql/get_status.rb +51 -0
  103. data/lib/elasticsearch/api/actions/eql/search.rb +57 -0
  104. data/lib/elasticsearch/api/actions/exists.rb +24 -40
  105. data/lib/elasticsearch/api/actions/exists_source.rb +26 -30
  106. data/lib/elasticsearch/api/actions/explain.rb +28 -55
  107. data/lib/elasticsearch/api/actions/features/get_features.rb +47 -0
  108. data/lib/elasticsearch/api/actions/features/reset_features.rb +50 -0
  109. data/lib/elasticsearch/api/actions/field_caps.rb +31 -26
  110. data/lib/elasticsearch/api/actions/fleet/global_checkpoints.rb +55 -0
  111. data/lib/elasticsearch/api/actions/get.rb +28 -47
  112. data/lib/elasticsearch/api/actions/get_script.rb +22 -19
  113. data/lib/elasticsearch/api/actions/get_script_context.rb +44 -0
  114. data/lib/elasticsearch/api/actions/{abort_benchmark.rb → get_script_languages.rb} +16 -14
  115. data/lib/elasticsearch/api/actions/get_source.rb +21 -50
  116. data/lib/elasticsearch/api/actions/graph/explore.rb +59 -0
  117. data/lib/elasticsearch/api/actions/index.rb +40 -97
  118. data/lib/elasticsearch/api/actions/index_lifecycle_management/delete_lifecycle.rb +51 -0
  119. data/lib/elasticsearch/api/actions/index_lifecycle_management/explain_lifecycle.rb +53 -0
  120. data/lib/elasticsearch/api/actions/index_lifecycle_management/get_lifecycle.rb +53 -0
  121. data/lib/elasticsearch/api/actions/index_lifecycle_management/get_status.rb +46 -0
  122. data/lib/elasticsearch/api/actions/index_lifecycle_management/migrate_to_data_tiers.rb +48 -0
  123. data/lib/elasticsearch/api/actions/index_lifecycle_management/move_to_step.rb +52 -0
  124. data/lib/elasticsearch/api/actions/index_lifecycle_management/put_lifecycle.rb +52 -0
  125. data/lib/elasticsearch/api/actions/index_lifecycle_management/remove_policy.rb +51 -0
  126. data/lib/elasticsearch/api/actions/index_lifecycle_management/retry.rb +51 -0
  127. data/lib/elasticsearch/api/actions/index_lifecycle_management/start.rb +46 -0
  128. data/lib/elasticsearch/api/actions/index_lifecycle_management/stop.rb +46 -0
  129. data/lib/elasticsearch/api/actions/indices/add_block.rb +60 -0
  130. data/lib/elasticsearch/api/actions/indices/analyze.rb +27 -54
  131. data/lib/elasticsearch/api/actions/indices/clear_cache.rb +23 -47
  132. data/lib/elasticsearch/api/actions/indices/clone.rb +59 -0
  133. data/lib/elasticsearch/api/actions/indices/close.rb +25 -38
  134. data/lib/elasticsearch/api/actions/indices/create.rb +23 -77
  135. data/lib/elasticsearch/api/actions/indices/create_data_stream.rb +51 -0
  136. data/lib/elasticsearch/api/actions/indices/data_streams_stats.rb +53 -0
  137. data/lib/elasticsearch/api/actions/indices/delete.rb +27 -42
  138. data/lib/elasticsearch/api/actions/indices/delete_alias.rb +27 -26
  139. data/lib/elasticsearch/api/actions/indices/delete_data_stream.rb +52 -0
  140. data/lib/elasticsearch/api/actions/indices/delete_index_template.rb +53 -0
  141. data/lib/elasticsearch/api/actions/indices/delete_template.rb +25 -26
  142. data/lib/elasticsearch/api/actions/indices/disk_usage.rb +60 -0
  143. data/lib/elasticsearch/api/actions/indices/exists.rb +26 -39
  144. data/lib/elasticsearch/api/actions/indices/exists_alias.rb +29 -34
  145. data/lib/elasticsearch/api/actions/indices/exists_index_template.rb +56 -0
  146. data/lib/elasticsearch/api/actions/indices/exists_template.rb +19 -20
  147. data/lib/elasticsearch/api/actions/indices/exists_type.rb +25 -34
  148. data/lib/elasticsearch/api/actions/indices/field_usage_stats.rb +59 -0
  149. data/lib/elasticsearch/api/actions/indices/flush.rb +26 -33
  150. data/lib/elasticsearch/api/actions/indices/forcemerge.rb +22 -46
  151. data/lib/elasticsearch/api/actions/indices/get.rb +18 -24
  152. data/lib/elasticsearch/api/actions/indices/get_alias.rb +30 -29
  153. data/lib/elasticsearch/api/actions/indices/get_data_stream.rb +54 -0
  154. data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +27 -45
  155. data/lib/elasticsearch/api/actions/indices/get_index_template.rb +56 -0
  156. data/lib/elasticsearch/api/actions/indices/get_mapping.rb +24 -38
  157. data/lib/elasticsearch/api/actions/indices/get_settings.rb +30 -43
  158. data/lib/elasticsearch/api/actions/indices/get_template.rb +22 -30
  159. data/lib/elasticsearch/api/actions/indices/migrate_to_data_stream.rb +51 -0
  160. data/lib/elasticsearch/api/actions/indices/modify_data_stream.rb +49 -0
  161. data/lib/elasticsearch/api/actions/indices/open.rb +20 -26
  162. data/lib/elasticsearch/api/actions/indices/promote_data_stream.rb +51 -0
  163. data/lib/elasticsearch/api/actions/indices/put_alias.rb +28 -33
  164. data/lib/elasticsearch/api/actions/indices/put_index_template.rb +56 -0
  165. data/lib/elasticsearch/api/actions/indices/put_mapping.rb +24 -46
  166. data/lib/elasticsearch/api/actions/indices/put_settings.rb +26 -43
  167. data/lib/elasticsearch/api/actions/indices/put_template.rb +22 -32
  168. data/lib/elasticsearch/api/actions/indices/recovery.rb +22 -28
  169. data/lib/elasticsearch/api/actions/indices/refresh.rb +23 -32
  170. data/lib/elasticsearch/api/actions/indices/{flush_synced.rb → reload_search_analyzers.rb} +23 -23
  171. data/lib/elasticsearch/api/actions/indices/resolve_index.rb +52 -0
  172. data/lib/elasticsearch/api/actions/indices/rollover.rb +29 -27
  173. data/lib/elasticsearch/api/actions/indices/segments.rb +23 -23
  174. data/lib/elasticsearch/api/actions/indices/shard_stores.rb +24 -20
  175. data/lib/elasticsearch/api/actions/indices/shrink.rb +23 -23
  176. data/lib/elasticsearch/api/actions/indices/simulate_index_template.rb +55 -0
  177. data/lib/elasticsearch/api/actions/indices/simulate_template.rb +57 -0
  178. data/lib/elasticsearch/api/actions/indices/split.rb +22 -22
  179. data/lib/elasticsearch/api/actions/indices/stats.rb +39 -117
  180. data/lib/elasticsearch/api/actions/indices/unfreeze.rb +41 -18
  181. data/lib/elasticsearch/api/actions/indices/update_aliases.rb +18 -38
  182. data/lib/elasticsearch/api/actions/indices/validate_query.rb +29 -64
  183. data/lib/elasticsearch/api/actions/info.rb +16 -8
  184. data/lib/elasticsearch/api/actions/ingest/delete_pipeline.rb +21 -18
  185. data/lib/elasticsearch/api/actions/ingest/geo_ip_stats.rb +46 -0
  186. data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +25 -16
  187. data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +30 -13
  188. data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +22 -20
  189. data/lib/elasticsearch/api/actions/ingest/simulate.rb +25 -17
  190. data/lib/elasticsearch/api/actions/knn_search.rb +60 -0
  191. data/lib/elasticsearch/api/actions/license/delete.rb +46 -0
  192. data/lib/elasticsearch/api/actions/license/get.rb +48 -0
  193. data/lib/elasticsearch/api/actions/license/get_basic_status.rb +46 -0
  194. data/lib/elasticsearch/api/actions/license/get_trial_status.rb +46 -0
  195. data/lib/elasticsearch/api/actions/license/post.rb +48 -0
  196. data/lib/elasticsearch/api/actions/license/post_start_basic.rb +47 -0
  197. data/lib/elasticsearch/api/actions/license/post_start_trial.rb +48 -0
  198. data/lib/elasticsearch/api/actions/logstash/delete_pipeline.rb +51 -0
  199. data/lib/elasticsearch/api/actions/logstash/get_pipeline.rb +51 -0
  200. data/lib/elasticsearch/api/actions/logstash/put_pipeline.rb +53 -0
  201. data/lib/elasticsearch/api/actions/machine_learning/close_job.rb +56 -0
  202. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar.rb +51 -0
  203. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar_event.rb +55 -0
  204. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar_job.rb +55 -0
  205. data/lib/elasticsearch/api/actions/machine_learning/delete_data_frame_analytics.rb +53 -0
  206. data/lib/elasticsearch/api/actions/machine_learning/delete_datafeed.rb +52 -0
  207. data/lib/elasticsearch/api/actions/machine_learning/delete_expired_data.rb +56 -0
  208. data/lib/elasticsearch/api/actions/machine_learning/delete_filter.rb +51 -0
  209. data/lib/elasticsearch/api/actions/machine_learning/delete_forecast.rb +60 -0
  210. data/lib/elasticsearch/api/actions/machine_learning/delete_job.rb +53 -0
  211. data/lib/elasticsearch/api/actions/machine_learning/delete_model_snapshot.rb +55 -0
  212. data/lib/elasticsearch/api/actions/machine_learning/delete_trained_model.rb +51 -0
  213. data/lib/elasticsearch/api/actions/machine_learning/delete_trained_model_alias.rb +55 -0
  214. data/lib/elasticsearch/api/actions/machine_learning/estimate_model_memory.rb +49 -0
  215. data/lib/elasticsearch/api/actions/machine_learning/evaluate_data_frame.rb +49 -0
  216. data/lib/elasticsearch/api/actions/machine_learning/explain_data_frame_analytics.rb +59 -0
  217. data/lib/elasticsearch/api/actions/machine_learning/flush_job.rb +57 -0
  218. data/lib/elasticsearch/api/actions/machine_learning/forecast.rb +55 -0
  219. data/lib/elasticsearch/api/actions/machine_learning/get_buckets.rb +73 -0
  220. data/lib/elasticsearch/api/actions/machine_learning/get_calendar_events.rb +56 -0
  221. data/lib/elasticsearch/api/actions/machine_learning/get_calendars.rb +61 -0
  222. data/lib/elasticsearch/api/actions/machine_learning/get_categories.rb +67 -0
  223. data/lib/elasticsearch/api/actions/machine_learning/get_data_frame_analytics.rb +57 -0
  224. data/lib/elasticsearch/api/actions/machine_learning/get_data_frame_analytics_stats.rb +57 -0
  225. data/lib/elasticsearch/api/actions/machine_learning/get_datafeed_stats.rb +55 -0
  226. data/lib/elasticsearch/api/actions/machine_learning/get_datafeeds.rb +56 -0
  227. data/lib/elasticsearch/api/actions/machine_learning/get_filters.rb +55 -0
  228. data/lib/elasticsearch/api/actions/machine_learning/get_influencers.rb +65 -0
  229. data/lib/elasticsearch/api/actions/machine_learning/get_job_stats.rb +55 -0
  230. data/lib/elasticsearch/api/actions/machine_learning/get_jobs.rb +56 -0
  231. data/lib/elasticsearch/api/actions/machine_learning/get_model_snapshot_upgrade_stats.rb +56 -0
  232. data/lib/elasticsearch/api/actions/machine_learning/get_model_snapshots.rb +70 -0
  233. data/lib/elasticsearch/api/actions/machine_learning/get_overall_buckets.rb +65 -0
  234. data/lib/elasticsearch/api/actions/machine_learning/get_records.rb +65 -0
  235. data/lib/elasticsearch/api/actions/machine_learning/get_trained_model_deployment_stats.rb +51 -0
  236. data/lib/elasticsearch/api/actions/machine_learning/get_trained_models.rb +61 -0
  237. data/lib/elasticsearch/api/actions/machine_learning/get_trained_models_stats.rb +56 -0
  238. data/lib/elasticsearch/api/actions/machine_learning/infer_trained_model_deployment.rb +58 -0
  239. data/lib/elasticsearch/api/actions/machine_learning/info.rb +46 -0
  240. data/lib/elasticsearch/api/actions/machine_learning/open_job.rb +52 -0
  241. data/lib/elasticsearch/api/actions/machine_learning/post_calendar_events.rb +53 -0
  242. data/lib/elasticsearch/api/actions/machine_learning/post_data.rb +55 -0
  243. data/lib/elasticsearch/api/actions/machine_learning/preview_data_frame_analytics.rb +59 -0
  244. data/lib/elasticsearch/api/actions/machine_learning/preview_datafeed.rb +59 -0
  245. data/lib/elasticsearch/api/actions/machine_learning/put_calendar.rb +52 -0
  246. data/lib/elasticsearch/api/actions/machine_learning/put_calendar_job.rb +55 -0
  247. data/lib/elasticsearch/api/actions/machine_learning/put_data_frame_analytics.rb +53 -0
  248. data/lib/elasticsearch/api/actions/machine_learning/put_datafeed.rb +57 -0
  249. data/lib/elasticsearch/api/actions/machine_learning/put_filter.rb +53 -0
  250. data/lib/elasticsearch/api/actions/machine_learning/put_job.rb +57 -0
  251. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model.rb +54 -0
  252. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_alias.rb +56 -0
  253. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_definition_part.rb +61 -0
  254. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_vocabulary.rb +57 -0
  255. data/lib/elasticsearch/api/actions/machine_learning/reset_job.rb +52 -0
  256. data/lib/elasticsearch/api/actions/machine_learning/revert_model_snapshot.rb +57 -0
  257. data/lib/elasticsearch/api/actions/machine_learning/set_upgrade_mode.rb +48 -0
  258. data/lib/elasticsearch/api/actions/machine_learning/start_data_frame_analytics.rb +53 -0
  259. data/lib/elasticsearch/api/actions/machine_learning/start_datafeed.rb +55 -0
  260. data/lib/elasticsearch/api/actions/machine_learning/start_trained_model_deployment.rb +57 -0
  261. data/lib/elasticsearch/api/actions/machine_learning/stop_data_frame_analytics.rb +55 -0
  262. data/lib/elasticsearch/api/actions/machine_learning/stop_datafeed.rb +56 -0
  263. data/lib/elasticsearch/api/actions/machine_learning/stop_trained_model_deployment.rb +55 -0
  264. data/lib/elasticsearch/api/actions/machine_learning/update_data_frame_analytics.rb +53 -0
  265. data/lib/elasticsearch/api/actions/machine_learning/update_datafeed.rb +57 -0
  266. data/lib/elasticsearch/api/actions/machine_learning/update_filter.rb +53 -0
  267. data/lib/elasticsearch/api/actions/machine_learning/update_job.rb +53 -0
  268. data/lib/elasticsearch/api/actions/machine_learning/update_model_snapshot.rb +57 -0
  269. data/lib/elasticsearch/api/actions/machine_learning/upgrade_job_snapshot.rb +57 -0
  270. data/lib/elasticsearch/api/actions/machine_learning/validate.rb +49 -0
  271. data/lib/elasticsearch/api/actions/machine_learning/validate_detector.rb +49 -0
  272. data/lib/elasticsearch/api/actions/mget.rb +23 -49
  273. data/lib/elasticsearch/api/actions/migration/deprecations.rb +53 -0
  274. data/lib/elasticsearch/api/actions/migration/get_feature_upgrade_status.rb +46 -0
  275. data/lib/elasticsearch/api/actions/migration/post_feature_upgrade.rb +46 -0
  276. data/lib/elasticsearch/api/actions/monitoring/bulk.rb +72 -0
  277. data/lib/elasticsearch/api/actions/msearch.rb +37 -58
  278. data/lib/elasticsearch/api/actions/msearch_template.rb +34 -38
  279. data/lib/elasticsearch/api/actions/mtermvectors.rb +30 -46
  280. data/lib/elasticsearch/api/actions/nodes/clear_repositories_metering_archive.rb +61 -0
  281. data/lib/elasticsearch/api/actions/nodes/get_repositories_metering_info.rb +55 -0
  282. data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +21 -30
  283. data/lib/elasticsearch/api/actions/nodes/info.rb +28 -67
  284. data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +24 -23
  285. data/lib/elasticsearch/api/actions/nodes/stats.rb +33 -40
  286. data/lib/elasticsearch/api/actions/nodes/usage.rb +45 -15
  287. data/lib/elasticsearch/api/actions/open_point_in_time.rb +54 -0
  288. data/lib/elasticsearch/api/actions/ping.rb +14 -12
  289. data/lib/elasticsearch/api/actions/put_script.rb +27 -36
  290. data/lib/elasticsearch/api/actions/rank_eval.rb +27 -22
  291. data/lib/elasticsearch/api/actions/reindex.rb +23 -55
  292. data/lib/elasticsearch/api/actions/reindex_rethrottle.rb +22 -18
  293. data/lib/elasticsearch/api/actions/render_search_template.rb +28 -16
  294. data/lib/elasticsearch/api/actions/rollup/delete_job.rb +55 -0
  295. data/lib/elasticsearch/api/actions/rollup/get_jobs.rb +57 -0
  296. data/lib/elasticsearch/api/actions/rollup/get_rollup_caps.rb +57 -0
  297. data/lib/elasticsearch/api/actions/rollup/get_rollup_index_caps.rb +55 -0
  298. data/lib/elasticsearch/api/actions/rollup/put_job.rb +57 -0
  299. data/lib/elasticsearch/api/actions/rollup/rollup.rb +61 -0
  300. data/lib/elasticsearch/api/actions/rollup/rollup_search.rb +59 -0
  301. data/lib/elasticsearch/api/actions/rollup/start_job.rb +55 -0
  302. data/lib/elasticsearch/api/actions/rollup/stop_job.rb +57 -0
  303. data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +23 -7
  304. data/lib/elasticsearch/api/actions/scroll.rb +35 -58
  305. data/lib/elasticsearch/api/actions/search.rb +54 -170
  306. data/lib/elasticsearch/api/actions/search_mvt.rb +76 -0
  307. data/lib/elasticsearch/api/actions/search_shards.rb +28 -33
  308. data/lib/elasticsearch/api/actions/search_template.rb +27 -45
  309. data/lib/elasticsearch/api/actions/searchable_snapshots/cache_stats.rb +57 -0
  310. data/lib/elasticsearch/api/actions/{indices/upgrade.rb → searchable_snapshots/clear_cache.rb} +30 -26
  311. data/lib/elasticsearch/api/actions/searchable_snapshots/mount.rb +60 -0
  312. data/lib/elasticsearch/api/actions/searchable_snapshots/stats.rb +54 -0
  313. data/lib/elasticsearch/api/actions/security/authenticate.rb +46 -0
  314. data/lib/elasticsearch/api/actions/security/change_password.rb +57 -0
  315. data/lib/elasticsearch/api/actions/security/clear_api_key_cache.rb +51 -0
  316. data/lib/elasticsearch/api/actions/security/clear_cached_privileges.rb +51 -0
  317. data/lib/elasticsearch/api/actions/security/clear_cached_realms.rb +52 -0
  318. data/lib/elasticsearch/api/actions/security/clear_cached_roles.rb +51 -0
  319. data/lib/elasticsearch/api/actions/security/clear_cached_service_tokens.rb +59 -0
  320. data/lib/elasticsearch/api/actions/security/create_api_key.rb +50 -0
  321. data/lib/elasticsearch/api/actions/security/create_service_token.rb +63 -0
  322. data/lib/elasticsearch/api/actions/security/delete_privileges.rb +56 -0
  323. data/lib/elasticsearch/api/actions/security/delete_role.rb +52 -0
  324. data/lib/elasticsearch/api/actions/security/delete_role_mapping.rb +52 -0
  325. data/lib/elasticsearch/api/actions/security/delete_service_token.rb +60 -0
  326. data/lib/elasticsearch/api/actions/security/delete_user.rb +52 -0
  327. data/lib/elasticsearch/api/actions/security/disable_user.rb +52 -0
  328. data/lib/elasticsearch/api/actions/security/enable_user.rb +52 -0
  329. data/lib/elasticsearch/api/actions/security/enroll_kibana.rb +46 -0
  330. data/lib/elasticsearch/api/actions/security/enroll_node.rb +46 -0
  331. data/lib/elasticsearch/api/actions/security/get_api_key.rb +51 -0
  332. data/lib/elasticsearch/api/actions/security/get_builtin_privileges.rb +46 -0
  333. data/lib/elasticsearch/api/actions/security/get_privileges.rb +58 -0
  334. data/lib/elasticsearch/api/actions/security/get_role.rb +61 -0
  335. data/lib/elasticsearch/api/actions/security/get_role_mapping.rb +53 -0
  336. data/lib/elasticsearch/api/actions/security/get_service_accounts.rb +58 -0
  337. data/lib/elasticsearch/api/actions/security/get_service_credentials.rb +55 -0
  338. data/lib/elasticsearch/api/actions/security/get_token.rb +49 -0
  339. data/lib/elasticsearch/api/actions/security/get_user.rb +61 -0
  340. data/lib/elasticsearch/api/actions/security/get_user_privileges.rb +46 -0
  341. data/lib/elasticsearch/api/actions/security/grant_api_key.rb +50 -0
  342. data/lib/elasticsearch/api/actions/security/has_privileges.rb +56 -0
  343. data/lib/elasticsearch/api/actions/security/invalidate_api_key.rb +49 -0
  344. data/lib/elasticsearch/api/actions/security/invalidate_token.rb +49 -0
  345. data/lib/elasticsearch/api/actions/security/put_privileges.rb +50 -0
  346. data/lib/elasticsearch/api/actions/security/put_role.rb +54 -0
  347. data/lib/elasticsearch/api/actions/security/put_role_mapping.rb +54 -0
  348. data/lib/elasticsearch/api/actions/security/put_user.rb +54 -0
  349. data/lib/elasticsearch/api/actions/security/query_api_keys.rb +52 -0
  350. data/lib/elasticsearch/api/actions/security/saml_authenticate.rb +49 -0
  351. data/lib/elasticsearch/api/actions/security/saml_complete_logout.rb +49 -0
  352. data/lib/elasticsearch/api/actions/security/saml_invalidate.rb +49 -0
  353. data/lib/elasticsearch/api/actions/security/saml_logout.rb +49 -0
  354. data/lib/elasticsearch/api/actions/security/saml_prepare_authentication.rb +49 -0
  355. data/lib/elasticsearch/api/actions/security/saml_service_provider_metadata.rb +51 -0
  356. data/lib/elasticsearch/api/actions/shutdown/delete_node.rb +51 -0
  357. data/lib/elasticsearch/api/actions/shutdown/get_node.rb +53 -0
  358. data/lib/elasticsearch/api/actions/shutdown/put_node.rb +53 -0
  359. data/lib/elasticsearch/api/actions/snapshot/cleanup_repository.rb +53 -0
  360. data/lib/elasticsearch/api/actions/snapshot/clone.rb +62 -0
  361. data/lib/elasticsearch/api/actions/snapshot/create.rb +25 -35
  362. data/lib/elasticsearch/api/actions/snapshot/create_repository.rb +21 -30
  363. data/lib/elasticsearch/api/actions/snapshot/delete.rb +27 -27
  364. data/lib/elasticsearch/api/actions/snapshot/delete_repository.rb +23 -24
  365. data/lib/elasticsearch/api/actions/snapshot/get.rb +30 -37
  366. data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +28 -31
  367. data/lib/elasticsearch/api/actions/snapshot/repository_analyze.rb +62 -0
  368. data/lib/elasticsearch/api/actions/snapshot/restore.rb +23 -37
  369. data/lib/elasticsearch/api/actions/snapshot/status.rb +31 -31
  370. data/lib/elasticsearch/api/actions/snapshot/verify_repository.rb +20 -18
  371. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/delete_lifecycle.rb +51 -0
  372. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/execute_lifecycle.rb +51 -0
  373. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/execute_retention.rb +46 -0
  374. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_lifecycle.rb +53 -0
  375. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_stats.rb +46 -0
  376. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_status.rb +46 -0
  377. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/put_lifecycle.rb +52 -0
  378. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/start.rb +46 -0
  379. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/stop.rb +46 -0
  380. data/lib/elasticsearch/api/actions/sql/clear_cursor.rb +49 -0
  381. data/lib/elasticsearch/api/actions/sql/delete_async.rb +51 -0
  382. data/lib/elasticsearch/api/actions/sql/get_async.rb +55 -0
  383. data/lib/elasticsearch/api/actions/sql/get_async_status.rb +51 -0
  384. data/lib/elasticsearch/api/actions/sql/query.rb +50 -0
  385. data/lib/elasticsearch/api/actions/sql/translate.rb +49 -0
  386. data/lib/elasticsearch/api/actions/ssl/certificates.rb +46 -0
  387. data/lib/elasticsearch/api/actions/tasks/cancel.rb +26 -19
  388. data/lib/elasticsearch/api/actions/tasks/get.rb +23 -19
  389. data/lib/elasticsearch/api/actions/tasks/list.rb +19 -23
  390. data/lib/elasticsearch/api/actions/terms_enum.rb +55 -0
  391. data/lib/elasticsearch/api/actions/termvectors.rb +35 -74
  392. data/lib/elasticsearch/api/actions/text_structure/find_structure.rb +70 -0
  393. data/lib/elasticsearch/api/actions/transform/delete_transform.rb +53 -0
  394. data/lib/elasticsearch/api/actions/transform/get_transform.rb +57 -0
  395. data/lib/elasticsearch/api/actions/transform/get_transform_stats.rb +54 -0
  396. data/lib/elasticsearch/api/actions/transform/preview_transform.rb +60 -0
  397. data/lib/elasticsearch/api/actions/transform/put_transform.rb +55 -0
  398. data/lib/elasticsearch/api/actions/transform/start_transform.rb +52 -0
  399. data/lib/elasticsearch/api/actions/transform/stop_transform.rb +56 -0
  400. data/lib/elasticsearch/api/actions/transform/update_transform.rb +55 -0
  401. data/lib/elasticsearch/api/actions/transform/upgrade_transforms.rb +48 -0
  402. data/lib/elasticsearch/api/actions/update.rb +41 -107
  403. data/lib/elasticsearch/api/actions/update_by_query.rb +23 -72
  404. data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +20 -16
  405. data/lib/elasticsearch/api/actions/watcher/ack_watch.rb +58 -0
  406. data/lib/elasticsearch/api/actions/watcher/activate_watch.rb +51 -0
  407. data/lib/elasticsearch/api/actions/watcher/deactivate_watch.rb +51 -0
  408. data/lib/elasticsearch/api/actions/watcher/delete_watch.rb +59 -0
  409. data/lib/elasticsearch/api/actions/watcher/execute_watch.rb +55 -0
  410. data/lib/elasticsearch/api/actions/watcher/get_watch.rb +51 -0
  411. data/lib/elasticsearch/api/actions/watcher/put_watch.rb +56 -0
  412. data/lib/elasticsearch/api/actions/watcher/query_watches.rb +52 -0
  413. data/lib/elasticsearch/api/actions/watcher/start.rb +46 -0
  414. data/lib/elasticsearch/api/actions/watcher/stats.rb +54 -0
  415. data/lib/elasticsearch/api/actions/watcher/stop.rb +46 -0
  416. data/lib/elasticsearch/api/actions/xpack/info.rb +48 -0
  417. data/lib/elasticsearch/api/actions/xpack/usage.rb +47 -0
  418. data/lib/elasticsearch/api/namespace/async_search.rb +36 -0
  419. data/lib/elasticsearch/api/{actions/remote/info.rb → namespace/autoscaling.rb} +12 -14
  420. data/lib/elasticsearch/api/namespace/cat.rb +1 -2
  421. data/lib/elasticsearch/api/namespace/cluster.rb +1 -1
  422. data/lib/elasticsearch/api/namespace/common.rb +1 -1
  423. data/lib/elasticsearch/api/namespace/cross_cluster_replication.rb +38 -0
  424. data/lib/elasticsearch/api/namespace/dangling_indices.rb +35 -0
  425. data/lib/elasticsearch/api/namespace/data_frame_transform_deprecated.rb +36 -0
  426. data/lib/elasticsearch/api/namespace/enrich.rb +36 -0
  427. data/lib/elasticsearch/api/namespace/eql.rb +36 -0
  428. data/lib/elasticsearch/api/namespace/features.rb +36 -0
  429. data/lib/elasticsearch/api/namespace/fleet.rb +36 -0
  430. data/lib/elasticsearch/api/namespace/graph.rb +36 -0
  431. data/lib/elasticsearch/api/namespace/index_lifecycle_management.rb +38 -0
  432. data/lib/elasticsearch/api/namespace/indices.rb +1 -1
  433. data/lib/elasticsearch/api/namespace/ingest.rb +1 -2
  434. data/lib/elasticsearch/api/namespace/license.rb +36 -0
  435. data/lib/elasticsearch/api/namespace/logstash.rb +36 -0
  436. data/lib/elasticsearch/api/namespace/machine_learning.rb +38 -0
  437. data/lib/elasticsearch/api/namespace/migration.rb +36 -0
  438. data/lib/elasticsearch/api/namespace/monitoring.rb +36 -0
  439. data/lib/elasticsearch/api/namespace/nodes.rb +1 -1
  440. data/lib/elasticsearch/api/namespace/remote.rb +1 -1
  441. data/lib/elasticsearch/api/namespace/rollup.rb +36 -0
  442. data/lib/elasticsearch/api/namespace/searchable_snapshots.rb +36 -0
  443. data/lib/elasticsearch/api/namespace/security.rb +36 -0
  444. data/lib/elasticsearch/api/namespace/shutdown.rb +37 -0
  445. data/lib/elasticsearch/api/namespace/snapshot.rb +1 -1
  446. data/lib/elasticsearch/api/namespace/snapshot_lifecycle_management.rb +38 -0
  447. data/lib/elasticsearch/api/namespace/sql.rb +36 -0
  448. data/lib/elasticsearch/api/namespace/ssl.rb +36 -0
  449. data/lib/elasticsearch/api/namespace/tasks.rb +1 -1
  450. data/lib/elasticsearch/api/namespace/text_structure.rb +36 -0
  451. data/lib/elasticsearch/api/namespace/transform.rb +36 -0
  452. data/lib/elasticsearch/api/namespace/watcher.rb +36 -0
  453. data/lib/elasticsearch/api/namespace/xpack.rb +36 -0
  454. data/lib/elasticsearch/api/response.rb +48 -0
  455. data/lib/elasticsearch/api/utils.rb +7 -57
  456. data/lib/elasticsearch/api/version.rb +2 -2
  457. data/lib/elasticsearch/api.rb +30 -21
  458. data/lib/elasticsearch-api.rb +1 -1
  459. data/spec/elasticsearch/api/actions/bulk_spec.rb +18 -37
  460. data/spec/elasticsearch/api/actions/cat/aliases_spec.rb +3 -3
  461. data/spec/elasticsearch/api/actions/cat/allocation_spec.rb +3 -3
  462. data/spec/elasticsearch/api/actions/cat/count_spec.rb +3 -3
  463. data/spec/elasticsearch/api/actions/cat/fielddata_spec.rb +5 -5
  464. data/spec/elasticsearch/api/actions/cat/health_spec.rb +3 -3
  465. data/spec/elasticsearch/api/actions/cat/help_spec.rb +3 -3
  466. data/spec/elasticsearch/api/actions/cat/indices_spec.rb +3 -3
  467. data/spec/elasticsearch/api/actions/cat/master_spec.rb +3 -3
  468. data/spec/elasticsearch/api/actions/cat/nodeattrs_spec.rb +3 -3
  469. data/spec/elasticsearch/api/actions/cat/nodes_spec.rb +3 -3
  470. data/spec/elasticsearch/api/actions/cat/pending_tasks_spec.rb +3 -3
  471. data/spec/elasticsearch/api/actions/cat/plugins_spec.rb +3 -3
  472. data/spec/elasticsearch/api/actions/cat/recovery_spec.rb +3 -3
  473. data/spec/elasticsearch/api/actions/cat/repositories_spec.rb +3 -3
  474. data/spec/elasticsearch/api/actions/cat/segments_spec.rb +12 -14
  475. data/spec/elasticsearch/api/actions/cat/shards_spec.rb +3 -3
  476. data/spec/elasticsearch/api/actions/cat/snapshot_spec.rb +3 -3
  477. data/spec/elasticsearch/api/actions/cat/tasks_spec.rb +3 -3
  478. data/spec/elasticsearch/api/actions/cat/templates_spec.rb +3 -3
  479. data/spec/elasticsearch/api/actions/cat/thread_pool_spec.rb +3 -3
  480. data/spec/elasticsearch/api/actions/clear_scroll_spec.rb +7 -5
  481. data/spec/elasticsearch/api/actions/{benchmark_spec.rb → close_point_in_time_spec.rb} +7 -7
  482. data/spec/elasticsearch/api/actions/cluster/allocation_explain_spec.rb +3 -3
  483. data/spec/elasticsearch/api/actions/cluster/get_settings_spec.rb +3 -3
  484. data/spec/elasticsearch/api/actions/cluster/health_spec.rb +7 -7
  485. data/spec/elasticsearch/api/actions/cluster/pending_tasks_spec.rb +3 -3
  486. data/spec/elasticsearch/api/actions/cluster/put_settings_spec.rb +3 -3
  487. data/spec/elasticsearch/api/actions/cluster/remote_info_spec.rb +3 -3
  488. data/spec/elasticsearch/api/actions/cluster/reroute_spec.rb +5 -5
  489. data/spec/elasticsearch/api/actions/cluster/state_spec.rb +5 -5
  490. data/spec/elasticsearch/api/actions/cluster/stats_spec.rb +3 -3
  491. data/spec/elasticsearch/api/actions/count_spec.rb +16 -16
  492. data/spec/elasticsearch/api/actions/create_document_spec.rb +17 -13
  493. data/spec/elasticsearch/api/actions/dangling_indices/delete_dangling_indices_spec.rb +48 -0
  494. data/spec/elasticsearch/api/actions/dangling_indices/import_dangling_indices_spec.rb +48 -0
  495. data/spec/elasticsearch/api/actions/dangling_indices/list_dangling_indices_spec.rb +36 -0
  496. data/spec/elasticsearch/api/actions/data_frame/update_data_frame_transform_spec.rb +81 -0
  497. data/spec/elasticsearch/api/actions/delete_by_query_spec.rb +16 -25
  498. data/spec/elasticsearch/api/actions/delete_document_spec.rb +14 -25
  499. data/spec/elasticsearch/api/actions/delete_script_spec.rb +4 -17
  500. data/spec/elasticsearch/api/actions/exists_document_spec.rb +13 -23
  501. data/spec/elasticsearch/api/actions/explain_document_spec.rb +18 -18
  502. data/spec/elasticsearch/api/actions/{scoll_spec.rb → features/get_features_spec.rb} +11 -7
  503. data/spec/elasticsearch/api/actions/features/reset_features_spec.rb +38 -0
  504. data/spec/elasticsearch/api/actions/field_caps_spec.rb +4 -3
  505. data/spec/elasticsearch/api/actions/fleet/global_checkpoints_spec.rb +44 -0
  506. data/spec/elasticsearch/api/actions/get_document_source_spec.rb +9 -20
  507. data/spec/elasticsearch/api/actions/get_document_spec.rb +9 -33
  508. data/spec/elasticsearch/api/actions/get_script_spec.rb +4 -3
  509. data/spec/elasticsearch/api/actions/hashie_spec.rb +1 -1
  510. data/spec/elasticsearch/api/actions/index_document_spec.rb +14 -40
  511. data/spec/elasticsearch/api/actions/index_lifecycle_management/migrate_to_data_tiers_spec.rb +36 -0
  512. data/spec/elasticsearch/api/actions/indices/add_block_spec.rb +63 -0
  513. data/spec/elasticsearch/api/actions/indices/analyze_spec.rb +11 -16
  514. data/spec/elasticsearch/api/actions/indices/clear_cache_spec.rb +8 -12
  515. data/spec/elasticsearch/api/actions/indices/clone_spec.rb +122 -0
  516. data/spec/elasticsearch/api/actions/indices/close_spec.rb +5 -5
  517. data/spec/elasticsearch/api/actions/indices/create_spec.rb +5 -5
  518. data/spec/elasticsearch/api/actions/{nodes/shutdown_spec.rb → indices/data_streams_stats_spec.rb} +15 -33
  519. data/spec/elasticsearch/api/actions/indices/delete_alias_spec.rb +6 -6
  520. data/spec/elasticsearch/api/actions/indices/delete_spec.rb +6 -6
  521. data/spec/elasticsearch/api/actions/indices/delete_template_spec.rb +4 -4
  522. data/spec/elasticsearch/api/actions/indices/disk_usage_spec.rb +48 -0
  523. data/spec/elasticsearch/api/actions/indices/exists_alias_spec.rb +2 -2
  524. data/spec/elasticsearch/api/actions/indices/exists_spec.rb +2 -2
  525. data/spec/elasticsearch/api/actions/indices/exists_template_spec.rb +2 -2
  526. data/spec/elasticsearch/api/actions/indices/exists_type_spec.rb +2 -2
  527. data/spec/elasticsearch/api/actions/indices/field_usage_stats_spec.rb +46 -0
  528. data/spec/elasticsearch/api/actions/indices/flush_spec.rb +7 -7
  529. data/spec/elasticsearch/api/actions/indices/forcemerge_spec.rb +3 -3
  530. data/spec/elasticsearch/api/actions/indices/get_alias_spec.rb +5 -5
  531. data/spec/elasticsearch/api/actions/indices/get_field_mapping_spec.rb +4 -15
  532. data/spec/elasticsearch/api/actions/indices/get_mapping_spec.rb +9 -24
  533. data/spec/elasticsearch/api/actions/indices/get_settings_spec.rb +6 -6
  534. data/spec/elasticsearch/api/actions/indices/get_spec.rb +4 -15
  535. data/spec/elasticsearch/api/actions/indices/open_spec.rb +5 -5
  536. data/spec/elasticsearch/api/actions/indices/put_alias_spec.rb +9 -9
  537. data/spec/elasticsearch/api/actions/indices/put_mapping_spec.rb +10 -16
  538. data/spec/elasticsearch/api/actions/indices/put_settings_spec.rb +7 -7
  539. data/spec/elasticsearch/api/actions/indices/put_template_spec.rb +5 -5
  540. data/spec/elasticsearch/api/actions/indices/recovery_spec.rb +3 -3
  541. data/spec/elasticsearch/api/actions/indices/refresh_spec.rb +7 -7
  542. data/spec/elasticsearch/api/actions/indices/rollover_spec.rb +4 -4
  543. data/spec/elasticsearch/api/actions/indices/segments_spec.rb +7 -7
  544. data/spec/elasticsearch/api/actions/indices/shard_stores_spec.rb +3 -3
  545. data/spec/elasticsearch/api/actions/indices/shrink_spec.rb +3 -3
  546. data/spec/elasticsearch/api/actions/indices/split_spec.rb +3 -3
  547. data/spec/elasticsearch/api/actions/indices/stats_spec.rb +9 -15
  548. data/spec/elasticsearch/api/actions/indices/unfreeze_spec.rb +21 -4
  549. data/spec/elasticsearch/api/actions/indices/update_aliases_spec.rb +4 -4
  550. data/spec/elasticsearch/api/actions/indices/validate_query_spec.rb +15 -31
  551. data/spec/elasticsearch/api/actions/info_spec.rb +4 -3
  552. data/spec/elasticsearch/api/actions/ingest/delete_pipeline_spec.rb +4 -4
  553. data/spec/elasticsearch/api/actions/ingest/geo_ip_stats_spec.rb +38 -0
  554. data/spec/elasticsearch/api/actions/ingest/get_pipeline_spec.rb +4 -4
  555. data/spec/elasticsearch/api/actions/ingest/put_pipeline_spec.rb +4 -4
  556. data/spec/elasticsearch/api/actions/ingest/simulate_spec.rb +9 -10
  557. data/spec/elasticsearch/api/actions/json_builders_spec.rb +13 -14
  558. data/spec/elasticsearch/api/actions/machine_learning/get_model_snapshot_upgrade_stats_spec.rb +56 -0
  559. data/spec/elasticsearch/api/actions/machine_learning/get_trained_model_deployment_stats_spec.rb +46 -0
  560. data/spec/elasticsearch/api/actions/machine_learning/infer_trained_model_deployment_spec.rb +46 -0
  561. data/spec/elasticsearch/api/actions/machine_learning/put_trained_model_definition_part_spec.rb +62 -0
  562. data/spec/elasticsearch/api/actions/machine_learning/put_trained_model_vocabulary_spec.rb +54 -0
  563. data/spec/elasticsearch/api/actions/machine_learning/reset_job_spec.rb +46 -0
  564. data/spec/elasticsearch/api/actions/machine_learning/set_upgrade_mode_spec.rb +51 -0
  565. data/spec/elasticsearch/api/actions/machine_learning/start_trained_model_deployment_spec.rb +46 -0
  566. data/spec/elasticsearch/api/actions/machine_learning/stop_trained_model_deployment_spec.rb +46 -0
  567. data/spec/elasticsearch/api/actions/mget_spec.rb +11 -26
  568. data/spec/elasticsearch/api/actions/migration/get_feature_upgrade_status_spec.rb +34 -0
  569. data/spec/elasticsearch/api/actions/migration/post_feature_upgrade_spec.rb +34 -0
  570. data/spec/elasticsearch/api/actions/msearch_spec.rb +13 -29
  571. data/spec/elasticsearch/api/actions/msearch_template_spec.rb +8 -9
  572. data/spec/elasticsearch/api/actions/mtermvectors_spec.rb +8 -9
  573. data/spec/elasticsearch/api/actions/nodes/clear_repositories_metering_archive_spec.rb +51 -0
  574. data/spec/elasticsearch/api/actions/nodes/get_repositories_metering_info_spec.rb +44 -0
  575. data/spec/elasticsearch/api/actions/nodes/hot_threads_spec.rb +5 -5
  576. data/spec/elasticsearch/api/actions/nodes/info_spec.rb +8 -8
  577. data/spec/elasticsearch/api/actions/nodes/reload_secure_settings_spec.rb +13 -16
  578. data/spec/elasticsearch/api/actions/nodes/stats_spec.rb +6 -6
  579. data/spec/elasticsearch/api/actions/{abort_benchmark_spec.rb → open_point_in_time_spec.rb} +6 -6
  580. data/spec/elasticsearch/api/actions/ping_spec.rb +4 -3
  581. data/spec/elasticsearch/api/actions/put_script_spec.rb +24 -17
  582. data/spec/elasticsearch/api/actions/rank_eval_spec.rb +127 -0
  583. data/spec/elasticsearch/api/actions/reindex_spec.rb +5 -4
  584. data/spec/elasticsearch/api/actions/render_search_template_spec.rb +28 -10
  585. data/spec/elasticsearch/api/actions/scroll_spec.rb +52 -0
  586. data/spec/elasticsearch/api/actions/search_mvt_spec.rb +53 -0
  587. data/spec/elasticsearch/api/actions/search_shards_spec.rb +5 -4
  588. data/spec/elasticsearch/api/actions/search_spec.rb +10 -62
  589. data/spec/elasticsearch/api/actions/search_template_spec.rb +7 -7
  590. data/spec/elasticsearch/api/actions/searchable_snapshots/cache_stats_spec.rb +44 -0
  591. data/spec/elasticsearch/api/actions/searchable_snapshots/clear_cache_spec.rb +44 -0
  592. data/spec/elasticsearch/api/actions/searchable_snapshots/mount_spec.rb +56 -0
  593. data/spec/elasticsearch/api/actions/searchable_snapshots/stats_spec.rb +43 -0
  594. data/spec/elasticsearch/api/actions/security/clear_cached_service_tokens_spec.rb +58 -0
  595. data/spec/elasticsearch/api/actions/security/create_api_key_spec.rb +79 -0
  596. data/spec/elasticsearch/api/actions/security/create_service_token_spec.rb +54 -0
  597. data/spec/elasticsearch/api/actions/security/delete_service_token_spec.rb +60 -0
  598. data/spec/elasticsearch/api/actions/{indices/upgrade_spec.rb → security/enroll_kibana_spec.rb} +8 -9
  599. data/spec/elasticsearch/api/actions/security/get_api_key_spec.rb +56 -0
  600. data/spec/elasticsearch/api/actions/{remote/info_spec.rb → security/get_builtin_privileges_spec.rb} +5 -5
  601. data/spec/elasticsearch/api/actions/security/get_service_accounts_spec.rb +58 -0
  602. data/spec/elasticsearch/api/actions/security/get_service_credentials_spec.rb +53 -0
  603. data/spec/elasticsearch/api/actions/security/invalidate_api_key_spec.rb +38 -0
  604. data/spec/elasticsearch/api/actions/security/query_api_keys_spec.rb +48 -0
  605. data/spec/elasticsearch/api/actions/security/saml_authenticate_spec.rb +44 -0
  606. data/spec/elasticsearch/api/actions/security/saml_complete_logout_spec.rb +44 -0
  607. data/spec/elasticsearch/api/actions/security/saml_invalidate_spec.rb +44 -0
  608. data/spec/elasticsearch/api/actions/security/saml_logout_spec.rb +44 -0
  609. data/spec/elasticsearch/api/actions/security/saml_prepare_authentication_spec.rb +44 -0
  610. data/spec/elasticsearch/api/actions/security/saml_service_provider_metadata_spec.rb +46 -0
  611. data/spec/elasticsearch/api/actions/shutdown/delete_node_spec.rb +44 -0
  612. data/spec/elasticsearch/api/actions/shutdown/get_node_spec.rb +46 -0
  613. data/spec/elasticsearch/api/actions/shutdown/put_node_spec.rb +50 -0
  614. data/spec/elasticsearch/api/actions/snapshot/clone_spec.rb +67 -0
  615. data/spec/elasticsearch/api/actions/snapshot/create_repository_spec.rb +3 -3
  616. data/spec/elasticsearch/api/actions/snapshot/create_spec.rb +3 -3
  617. data/spec/elasticsearch/api/actions/snapshot/delete_repository_spec.rb +4 -4
  618. data/spec/elasticsearch/api/actions/snapshot/delete_spec.rb +3 -3
  619. data/spec/elasticsearch/api/actions/snapshot/get_repository_spec.rb +3 -3
  620. data/spec/elasticsearch/api/actions/snapshot/get_spec.rb +3 -3
  621. data/spec/elasticsearch/api/actions/snapshot/repository_analize_spec.rb +46 -0
  622. data/spec/elasticsearch/api/actions/snapshot/restore_spec.rb +8 -11
  623. data/spec/elasticsearch/api/actions/snapshot/status_spec.rb +4 -5
  624. data/spec/elasticsearch/api/actions/snapshot/verify_repository_spec.rb +7 -8
  625. data/spec/elasticsearch/api/actions/sql/delete_async_spec.rb +46 -0
  626. data/spec/elasticsearch/api/actions/sql/get_async_spec.rb +46 -0
  627. data/spec/elasticsearch/api/actions/sql/get_async_stats_spec.rb +46 -0
  628. data/spec/elasticsearch/api/actions/tasks/cancel_spec.rb +8 -9
  629. data/spec/elasticsearch/api/actions/tasks/get_spec.rb +3 -3
  630. data/spec/elasticsearch/api/actions/tasks/list_spec.rb +7 -19
  631. data/spec/elasticsearch/api/actions/terms_enum_spec.rb +52 -0
  632. data/spec/elasticsearch/api/actions/termvectors_spec.rb +11 -12
  633. data/spec/elasticsearch/api/actions/update_by_query_spec.rb +7 -7
  634. data/spec/elasticsearch/api/actions/update_document_spec.rb +16 -33
  635. data/spec/elasticsearch/api/api_response_spec.rb +64 -0
  636. data/spec/elasticsearch/api/api_spec.rb +1 -4
  637. data/spec/elasticsearch/api/client_spec.rb +1 -5
  638. data/spec/elasticsearch/api/rest_api_yaml_spec.rb +91 -101
  639. data/spec/elasticsearch/api/utils_spec.rb +15 -90
  640. data/spec/rest_api_tests_helper.rb +91 -0
  641. data/spec/skipped_tests_free.yml +32 -0
  642. data/spec/skipped_tests_platinum.yml +59 -0
  643. data/spec/spec_helper.rb +21 -17
  644. data/spec/unit_tests_platinum/test_helper.rb +72 -0
  645. data/spec/unit_tests_platinum/unit/async_search/delete_test.rb +39 -0
  646. data/spec/unit_tests_platinum/unit/async_search/get_test.rb +39 -0
  647. data/spec/unit_tests_platinum/unit/async_search/status_test.rb +39 -0
  648. data/spec/unit_tests_platinum/unit/async_search/submit_test.rb +50 -0
  649. data/spec/unit_tests_platinum/unit/autoscaling/delete_autoscaling_policy_test.rb +46 -0
  650. data/spec/unit_tests_platinum/unit/autoscaling/get_autoscaling_capacity_test.rb +40 -0
  651. data/spec/unit_tests_platinum/unit/autoscaling/get_autoscaling_policy_test.rb +46 -0
  652. data/spec/unit_tests_platinum/unit/autoscaling/put_autoscaling_policy_test.rb +52 -0
  653. data/spec/unit_tests_platinum/unit/enrich/delete_policy_test.rb +43 -0
  654. data/spec/unit_tests_platinum/unit/eql/delete_test.rb +46 -0
  655. data/spec/unit_tests_platinum/unit/eql/get_status_test.rb +46 -0
  656. data/spec/unit_tests_platinum/unit/eql/get_test.rb +46 -0
  657. data/spec/unit_tests_platinum/unit/eql/search_test.rb +52 -0
  658. data/spec/unit_tests_platinum/unit/graph/explore_test.rb +43 -0
  659. data/spec/unit_tests_platinum/unit/index_lifecycle_management/explain_test.rb +43 -0
  660. data/spec/unit_tests_platinum/unit/index_lifecycle_management/get_status_test.rb +43 -0
  661. data/spec/unit_tests_platinum/unit/index_lifecycle_management/move_to_step.rb +43 -0
  662. data/spec/unit_tests_platinum/unit/index_lifecycle_management/remove_policy_test.rb +43 -0
  663. data/spec/unit_tests_platinum/unit/index_lifecycle_management/retry_policy_test.rb +43 -0
  664. data/spec/unit_tests_platinum/unit/index_lifecycle_management/start_test.rb +43 -0
  665. data/spec/unit_tests_platinum/unit/index_lifecycle_management/stop_test.rb +43 -0
  666. data/spec/unit_tests_platinum/unit/indices/create_data_stream_test.rb +46 -0
  667. data/spec/unit_tests_platinum/unit/indices/data_stream_stats_test.rb +54 -0
  668. data/spec/unit_tests_platinum/unit/indices/delete_data_stream_test.rb +46 -0
  669. data/spec/unit_tests_platinum/unit/indices/get_data_stream_test.rb +50 -0
  670. data/spec/unit_tests_platinum/unit/indices/migrate_to_data_stream_test.rb +46 -0
  671. data/spec/unit_tests_platinum/unit/indices/modify_data_stream_test.rb +46 -0
  672. data/spec/unit_tests_platinum/unit/indices/promote_data_stream_test.rb +46 -0
  673. data/spec/unit_tests_platinum/unit/info_test.rb +40 -0
  674. data/spec/unit_tests_platinum/unit/knn_search_test.rb +40 -0
  675. data/spec/unit_tests_platinum/unit/license/delete_test.rb +43 -0
  676. data/spec/unit_tests_platinum/unit/license/get_test.rb +43 -0
  677. data/spec/unit_tests_platinum/unit/license/post_test.rb +43 -0
  678. data/spec/unit_tests_platinum/unit/logstash/delete_pipeline_test.rb +46 -0
  679. data/spec/unit_tests_platinum/unit/logstash/get_pipeline_test.rb +46 -0
  680. data/spec/unit_tests_platinum/unit/logstash/put_pipeline_test.rb +46 -0
  681. data/spec/unit_tests_platinum/unit/machine_learning/close_job_test.rb +43 -0
  682. data/spec/unit_tests_platinum/unit/machine_learning/delete_datafeed_test.rb +43 -0
  683. data/spec/unit_tests_platinum/unit/machine_learning/delete_expired_data_test.rb +43 -0
  684. data/spec/unit_tests_platinum/unit/machine_learning/delete_filter_test.rb +43 -0
  685. data/spec/unit_tests_platinum/unit/machine_learning/delete_forecast_test.rb +43 -0
  686. data/spec/unit_tests_platinum/unit/machine_learning/delete_job_test.rb +43 -0
  687. data/spec/unit_tests_platinum/unit/machine_learning/delete_model_alias_test.rb +40 -0
  688. data/spec/unit_tests_platinum/unit/machine_learning/delete_model_snapshot_test.rb +43 -0
  689. data/spec/unit_tests_platinum/unit/machine_learning/flush_job_test.rb +43 -0
  690. data/spec/unit_tests_platinum/unit/machine_learning/forecast_test.rb +43 -0
  691. data/spec/unit_tests_platinum/unit/machine_learning/get_buckets_test.rb +43 -0
  692. data/spec/unit_tests_platinum/unit/machine_learning/get_categories_test.rb +43 -0
  693. data/spec/unit_tests_platinum/unit/machine_learning/get_datafeed_stats_test.rb +43 -0
  694. data/spec/unit_tests_platinum/unit/machine_learning/get_datafeeds_test.rb +43 -0
  695. data/spec/unit_tests_platinum/unit/machine_learning/get_filters_test.rb +43 -0
  696. data/spec/unit_tests_platinum/unit/machine_learning/get_influencers_test.rb +43 -0
  697. data/spec/unit_tests_platinum/unit/machine_learning/get_job_stats_test.rb +43 -0
  698. data/spec/unit_tests_platinum/unit/machine_learning/get_jobs_test.rb +43 -0
  699. data/spec/unit_tests_platinum/unit/machine_learning/get_model_snapshots_test.rb +43 -0
  700. data/spec/unit_tests_platinum/unit/machine_learning/get_overall_buckets_test.rb +43 -0
  701. data/spec/unit_tests_platinum/unit/machine_learning/get_records_test.rb +43 -0
  702. data/spec/unit_tests_platinum/unit/machine_learning/open_job_test.rb +43 -0
  703. data/spec/unit_tests_platinum/unit/machine_learning/post_data_test.rb +43 -0
  704. data/spec/unit_tests_platinum/unit/machine_learning/preview_data_frame_analytics_test.rb +64 -0
  705. data/spec/unit_tests_platinum/unit/machine_learning/preview_datafeed_test.rb +43 -0
  706. data/spec/unit_tests_platinum/unit/machine_learning/put_datafeed_test.rb +43 -0
  707. data/spec/unit_tests_platinum/unit/machine_learning/put_filter_test.rb +43 -0
  708. data/spec/unit_tests_platinum/unit/machine_learning/put_job_test.rb +43 -0
  709. data/spec/unit_tests_platinum/unit/machine_learning/put_trained_model_alias_test.rb +40 -0
  710. data/spec/unit_tests_platinum/unit/machine_learning/revert_model_snapshot_test.rb +43 -0
  711. data/spec/unit_tests_platinum/unit/machine_learning/start_datafeed_test.rb +43 -0
  712. data/spec/unit_tests_platinum/unit/machine_learning/stop_datafeed_test.rb +43 -0
  713. data/spec/unit_tests_platinum/unit/machine_learning/update_data_frame_analytics_test.rb +40 -0
  714. data/spec/unit_tests_platinum/unit/machine_learning/update_datafeed_test.rb +43 -0
  715. data/spec/unit_tests_platinum/unit/machine_learning/update_filter_test.rb +43 -0
  716. data/spec/unit_tests_platinum/unit/machine_learning/update_job_test.rb +43 -0
  717. data/spec/unit_tests_platinum/unit/machine_learning/update_model_snapshot_test.rb +43 -0
  718. data/spec/unit_tests_platinum/unit/machine_learning/upgrade_job_snapshot_test.rb +43 -0
  719. data/spec/unit_tests_platinum/unit/machine_learning/validate_detector_test.rb +43 -0
  720. data/spec/unit_tests_platinum/unit/machine_learning/validate_test.rb +43 -0
  721. data/spec/unit_tests_platinum/unit/migration/deprecations_test.rb +42 -0
  722. data/spec/unit_tests_platinum/unit/monitoring/bulk_test.rb +43 -0
  723. data/spec/unit_tests_platinum/unit/rollup/get_rollup_index_caps_test.rb +40 -0
  724. data/spec/unit_tests_platinum/unit/rollup/rollup_test.rb +58 -0
  725. data/spec/unit_tests_platinum/unit/security/authenticate_test.rb +43 -0
  726. data/spec/unit_tests_platinum/unit/security/change_password_test.rb +55 -0
  727. data/spec/unit_tests_platinum/unit/security/clear_api_key_cache_test.rb +40 -0
  728. data/spec/unit_tests_platinum/unit/security/clear_cached_privileges_test.rb +40 -0
  729. data/spec/unit_tests_platinum/unit/security/clear_cached_realms_test.rb +43 -0
  730. data/spec/unit_tests_platinum/unit/security/clear_cached_roles_test.rb +43 -0
  731. data/spec/unit_tests_platinum/unit/security/delete_privileges_test.rb +43 -0
  732. data/spec/unit_tests_platinum/unit/security/delete_role_mapping_test.rb +43 -0
  733. data/spec/unit_tests_platinum/unit/security/delete_role_test.rb +43 -0
  734. data/spec/unit_tests_platinum/unit/security/delete_user_test.rb +43 -0
  735. data/spec/unit_tests_platinum/unit/security/disable_user_test.rb +43 -0
  736. data/spec/unit_tests_platinum/unit/security/enable_user_test.rb +43 -0
  737. data/spec/unit_tests_platinum/unit/security/get_privileges_test.rb +78 -0
  738. data/spec/unit_tests_platinum/unit/security/get_role_mapping_test.rb +54 -0
  739. data/spec/unit_tests_platinum/unit/security/get_role_test.rb +62 -0
  740. data/spec/unit_tests_platinum/unit/security/get_token_test.rb +43 -0
  741. data/spec/unit_tests_platinum/unit/security/get_user_privileges_test.rb +43 -0
  742. data/spec/unit_tests_platinum/unit/security/get_user_test.rb +61 -0
  743. data/spec/unit_tests_platinum/unit/security/grant_api_key_test.rb +41 -0
  744. data/spec/unit_tests_platinum/unit/security/has_privileges_test.rb +55 -0
  745. data/spec/unit_tests_platinum/unit/security/invalidate_token_test.rb +43 -0
  746. data/spec/unit_tests_platinum/unit/security/put_privileges_test.rb +43 -0
  747. data/spec/unit_tests_platinum/unit/security/put_role_mapping_test.rb +43 -0
  748. data/spec/unit_tests_platinum/unit/security/put_role_test.rb +43 -0
  749. data/spec/unit_tests_platinum/unit/security/put_user_test.rb +43 -0
  750. data/spec/unit_tests_platinum/unit/ssl/certificates_test.rb +43 -0
  751. data/spec/unit_tests_platinum/unit/text_structure/find_structure_test.rb +40 -0
  752. data/spec/unit_tests_platinum/unit/transform/upgrade_transforms_spec.rb +34 -0
  753. data/spec/unit_tests_platinum/unit/usage_test.rb +40 -0
  754. data/spec/unit_tests_platinum/unit/watcher/ack_watch_test.rb +55 -0
  755. data/spec/unit_tests_platinum/unit/watcher/activate_watch_test.rb +43 -0
  756. data/spec/unit_tests_platinum/unit/watcher/deactivate_watch_test.rb +43 -0
  757. data/spec/unit_tests_platinum/unit/watcher/delete_watch_test.rb +43 -0
  758. data/spec/unit_tests_platinum/unit/watcher/execute_watch_test.rb +55 -0
  759. data/spec/unit_tests_platinum/unit/watcher/get_watch_test.rb +43 -0
  760. data/spec/unit_tests_platinum/unit/watcher/put_watch_test.rb +43 -0
  761. data/spec/unit_tests_platinum/unit/watcher/query_watches_test.rb +52 -0
  762. data/spec/unit_tests_platinum/unit/watcher/start_test.rb +41 -0
  763. data/spec/unit_tests_platinum/unit/watcher/stats_test.rb +43 -0
  764. data/spec/unit_tests_platinum/unit/watcher/stop_test.rb +43 -0
  765. data/utils/Gemfile +6 -4
  766. data/utils/README.md +38 -0
  767. data/utils/Thorfile +3 -17
  768. data/utils/thor/.rubocop.yml +2 -0
  769. data/utils/thor/generate_source.rb +223 -87
  770. data/utils/thor/generator/endpoint_specifics.rb +159 -0
  771. data/utils/thor/generator/files_helper.rb +65 -0
  772. data/utils/thor/lister.rb +4 -5
  773. data/utils/thor/templates/_body.erb +34 -0
  774. data/utils/thor/templates/_documentation_top.erb +57 -0
  775. data/utils/thor/templates/_method_setup.erb +41 -0
  776. data/utils/thor/templates/_perform_request.erb +50 -0
  777. data/utils/thor/templates/method.erb +68 -0
  778. data/utils/thor/templates/{ruby/test.erb → test.erb} +1 -1
  779. data/utils/thor/templates/{ruby/test_helper.rb → test_helper.rb} +1 -5
  780. metadata +727 -89
  781. data/lib/elasticsearch/api/actions/benchmark.rb +0 -82
  782. data/lib/elasticsearch/api/actions/cat/params_registry.rb +0 -61
  783. data/lib/elasticsearch/api/actions/cluster/params_registry.rb +0 -61
  784. data/lib/elasticsearch/api/actions/indices/freeze.rb +0 -40
  785. data/lib/elasticsearch/api/actions/indices/params_registry.rb +0 -61
  786. data/lib/elasticsearch/api/actions/ingest/params_registry.rb +0 -61
  787. data/lib/elasticsearch/api/actions/nodes/params_registry.rb +0 -61
  788. data/lib/elasticsearch/api/actions/nodes/shutdown.rb +0 -56
  789. data/lib/elasticsearch/api/actions/params_registry.rb +0 -59
  790. data/lib/elasticsearch/api/actions/snapshot/params_registry.rb +0 -61
  791. data/lib/elasticsearch/api/actions/tasks/params_registry.rb +0 -61
  792. data/spec/elasticsearch/api/actions/indices/flush_synced_spec.rb +0 -90
  793. data/spec/elasticsearch/api/actions/indices/freeze_spec.rb +0 -68
  794. data/spec/rest_yaml_tests_helper.rb +0 -94
  795. data/test/integration/yaml_test_runner.rb +0 -592
  796. data/test/test_helper.rb +0 -118
  797. data/utils/thor/generate_api.rb +0 -206
  798. data/utils/thor/templates/ruby/method.erb +0 -75
data/spec/spec_helper.rb CHANGED
@@ -6,7 +6,7 @@
6
6
  # not use this file except in compliance with the License.
7
7
  # You may obtain a copy of the License at
8
8
  #
9
- # http://www.apache.org/licenses/LICENSE-2.0
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
10
  #
11
11
  # Unless required by applicable law or agreed to in writing,
12
12
  # software distributed under the License is distributed on an
@@ -14,31 +14,30 @@
14
14
  # KIND, either express or implied. See the License for the
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
+ if ENV['COVERAGE'] && ENV['CI'].nil?
18
+ require 'simplecov'
19
+ SimpleCov.start { add_filter %r{^/test|spec/} }
20
+ end
17
21
 
18
- require 'pry-nav'
22
+ if defined?(JRUBY_VERSION)
23
+ require 'pry-nav'
24
+ else
25
+ require 'pry-byebug'
26
+ end
19
27
  require 'yaml'
28
+ require 'active_support/isolated_execution_state' unless RUBY_VERSION < '2.7.0'
20
29
  require 'jbuilder'
21
30
  require 'jsonify'
22
31
  require 'elasticsearch'
23
- require 'elasticsearch-transport'
24
32
  require 'elasticsearch-api'
33
+ require 'openssl'
34
+ require 'logger'
25
35
 
26
- require 'ansi'
27
36
  tracer = ::Logger.new(STDERR)
28
- tracer.formatter = lambda { |s, d, p, m| "#{m.gsub(/^.*$/) { |n| ' ' + n }.ansi(:faint)}\n" }
29
-
30
- unless defined?(ELASTICSEARCH_URL)
31
- ELASTICSEARCH_URL = ENV['ELASTICSEARCH_URL'] ||
32
- ENV['TEST_ES_SERVER'] ||
33
- "localhost:#{(ENV['TEST_CLUSTER_PORT'] || 9200)}"
34
- end
35
-
36
- DEFAULT_CLIENT = Elasticsearch::Client.new(host: ELASTICSEARCH_URL,
37
- tracer: (tracer unless ENV['QUIET']))
37
+ tracer.formatter = lambda { |s, d, p, m| "#{m.gsub(/^.*$/) { |n| ' ' + n } }\n" }
38
38
 
39
39
  module HelperModule
40
40
  def self.included(context)
41
-
42
41
  context.let(:client_double) do
43
42
  Class.new { include Elasticsearch::API }.new.tap do |client|
44
43
  expect(client).to receive(:perform_request).with(*expected_args).and_return(response_double)
@@ -59,8 +58,13 @@ end
59
58
 
60
59
  RSpec.configure do |config|
61
60
  config.include(HelperModule)
62
- config.formatter = 'documentation'
63
- config.color = true
61
+ config.add_formatter('documentation')
62
+ if ENV['TEST_SUITE'] == 'platinum'
63
+ config.add_formatter('RspecJunitFormatter', 'tmp/elasticsearch-platinum-junit.xml')
64
+ else
65
+ config.add_formatter('RspecJunitFormatter', 'tmp/elasticsearch-api-junit.xml')
66
+ end
67
+ config.color_mode = :on
64
68
  end
65
69
 
66
70
  class NotFound < StandardError; end
@@ -0,0 +1,72 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
19
+
20
+ require 'pathname'
21
+ require 'minitest/autorun'
22
+ require 'minitest/reporters'
23
+ require 'shoulda/context'
24
+ require 'mocha/minitest'
25
+ require 'ansi'
26
+ require 'elasticsearch'
27
+ require 'elasticsearch/api'
28
+
29
+ Minitest::Reporters.use! Minitest::Reporters::SpecReporter.new
30
+
31
+ module Minitest
32
+ class Test
33
+ def assert_nothing_raised(*args)
34
+ begin
35
+ line = __LINE__
36
+ yield
37
+ rescue Exception => e
38
+ raise MiniTest::Assertion, "Exception raised:\n<#{e.class}>", e.backtrace
39
+ end
40
+ true
41
+ end
42
+ end
43
+ end
44
+
45
+ module Elasticsearch
46
+ module Test
47
+ class FakeClient
48
+ include Elasticsearch::API
49
+
50
+ def perform_request(method, path, params, body)
51
+ puts 'PERFORMING REQUEST:', "--> #{method.to_s.upcase} #{path} #{params} #{body}"
52
+ FakeResponse.new(200, 'FAKE', {})
53
+ end
54
+ end
55
+
56
+ FakeResponse = Struct.new(:status, :body, :headers) do
57
+ def status
58
+ values[0] || 200
59
+ end
60
+
61
+ def body
62
+ values[1] || '{}'
63
+ end
64
+
65
+ def headers
66
+ values[2] || {}
67
+ end
68
+ end
69
+
70
+ class NotFound < StandardError; end
71
+ end
72
+ end
@@ -0,0 +1,39 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackAsyncSearchDelete < Minitest::Test
23
+ subject { FakeClient.new }
24
+
25
+ context 'XPack: Async Search Delete' do
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal('DELETE', method)
29
+ assert_equal('_async_search/foo', url)
30
+ assert_equal({}, params)
31
+ assert_nil(body)
32
+ end.returns(FakeResponse.new)
33
+
34
+ subject.async_search.delete(id: 'foo')
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,39 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackAsyncSearchGet < Minitest::Test
23
+ subject { FakeClient.new }
24
+
25
+ context 'XPack: Async Search Get' do
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal('GET', method)
29
+ assert_equal('_async_search/foo', url)
30
+ assert_equal({}, params)
31
+ assert_nil(body)
32
+ end.returns(FakeResponse.new)
33
+
34
+ subject.async_search.get(id: 'foo')
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,39 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackAsyncSearchStatus < Minitest::Test
23
+ subject { FakeClient.new }
24
+
25
+ context 'XPack: Async Search Status' do
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal('GET', method)
29
+ assert_equal('_async_search/status/foo', url)
30
+ assert_equal({}, params)
31
+ assert_nil(body)
32
+ end.returns(FakeResponse.new)
33
+
34
+ subject.async_search.status(id: 'foo')
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,50 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackAsyncSearchSubmit < Minitest::Test
23
+ subject { FakeClient.new }
24
+
25
+ context 'XPack: Async Search Submit' do
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal('POST', method)
29
+ assert_equal('_async_search', url)
30
+ assert_equal({}, params)
31
+ assert_nil(body)
32
+ end.returns(FakeResponse.new)
33
+
34
+ subject.async_search.submit
35
+ end
36
+
37
+ should 'perform correct request with index' do
38
+ subject.expects(:perform_request).with do |method, url, params, body|
39
+ assert_equal('POST', method)
40
+ assert_equal('foo/_async_search', url)
41
+ assert_equal({}, params)
42
+ assert_nil(body)
43
+ end.returns(FakeResponse.new)
44
+
45
+ subject.async_search.submit(index: 'foo')
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,46 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackAutoscalingDeleteAutoscalingPolicyTest < Minitest::Test
23
+ subject { FakeClient.new }
24
+
25
+ context 'XPack: Get Autoscaling Policy' do
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal('DELETE', method)
29
+ assert_equal('_autoscaling/policy/a_policy', url)
30
+ assert_equal({}, params)
31
+ assert_nil(body)
32
+ true
33
+ end.returns(FakeResponse.new)
34
+
35
+ subject.autoscaling.delete_autoscaling_policy(name: 'a_policy')
36
+ end
37
+
38
+ should 'raise argument error without name' do
39
+ assert_raises ArgumentError do
40
+ subject.autoscaling.delete_autoscaling_policy
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,40 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackAutoscalingGetAutoscalingCapacityTest < Minitest::Test
23
+ subject { FakeClient.new }
24
+
25
+ context 'XPack: Get Autoscaling Capacity' do
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal('GET', method)
29
+ assert_equal('_autoscaling/capacity', url)
30
+ assert_equal({}, params)
31
+ assert_nil(body)
32
+ true
33
+ end.returns(FakeResponse.new)
34
+
35
+ subject.autoscaling.get_autoscaling_capacity
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,46 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackAutoscalingGetAutoscalingPolicyTest < Minitest::Test
23
+ subject { FakeClient.new }
24
+
25
+ context 'XPack: Get Autoscaling Policy' do
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal('GET', method)
29
+ assert_equal('_autoscaling/policy/a_policy', url)
30
+ assert_equal({}, params)
31
+ assert_nil(body)
32
+ true
33
+ end.returns(FakeResponse.new)
34
+
35
+ subject.autoscaling.get_autoscaling_policy(name: 'a_policy')
36
+ end
37
+
38
+ should 'raise argument error without name' do
39
+ assert_raises ArgumentError do
40
+ subject.autoscaling.get_autoscaling_policy
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,52 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackAutoscalingPutAutoscalingPolicyTest < Minitest::Test
23
+ subject { FakeClient.new }
24
+
25
+ context 'XPack: Put Autoscaling Policy' do
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal('PUT', method)
29
+ assert_equal('_autoscaling/policy/a_policy', url)
30
+ assert_equal({}, params)
31
+ assert_equal(body, {})
32
+ true
33
+ end.returns(FakeResponse.new)
34
+
35
+ subject.autoscaling.put_autoscaling_policy(name: 'a_policy', body: {})
36
+ end
37
+
38
+ should 'raise argument error without name' do
39
+ assert_raises ArgumentError do
40
+ subject.autoscaling.put_autoscaling_policy(body: {})
41
+ end
42
+ end
43
+
44
+ should 'raise argument error without body' do
45
+ assert_raises ArgumentError do
46
+ subject.autoscaling.put_autoscaling_policy(name: 'a_policy')
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,43 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackEnrichDeletePolicyTest < Minitest::Test
23
+
24
+ context "XPack Enrich: Delete policy" do
25
+ subject { FakeClient.new }
26
+
27
+ should "perform correct request" do
28
+ subject.expects(:perform_request).with do |method, url, params, body|
29
+ assert_equal 'DELETE', method
30
+ assert_equal '_enrich/policy/foo', url
31
+ assert_equal Hash.new, params
32
+ assert_nil body
33
+ true
34
+ end.returns(FakeResponse.new)
35
+
36
+ subject.enrich.delete_policy(name: 'foo')
37
+ end
38
+
39
+ end
40
+
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,46 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackEqlDeleteTest < Minitest::Test
23
+ context 'Eql: Delete' do
24
+ subject { FakeClient.new }
25
+
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal 'DELETE', method
29
+ assert_equal '_eql/search/foo', url
30
+ assert_equal({}, params)
31
+ assert_nil body
32
+ true
33
+ end.returns(FakeResponse.new)
34
+
35
+ subject.eql.delete(id: 'foo')
36
+ end
37
+
38
+ should 'raise argument error without id' do
39
+ assert_raises ArgumentError do
40
+ subject.eql.delete
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,46 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackEqlGetStatusTest < Minitest::Test
23
+ context 'Eql: Get Status' do
24
+ subject { FakeClient.new }
25
+
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal 'GET', method
29
+ assert_equal '_eql/search/status/foo', url
30
+ assert_equal({}, params)
31
+ assert_nil body
32
+ true
33
+ end.returns(FakeResponse.new)
34
+
35
+ subject.eql.get_status(id: 'foo')
36
+ end
37
+
38
+ should 'raise argument error without id' do
39
+ assert_raises ArgumentError do
40
+ subject.eql.get_status
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,46 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'test_helper'
19
+
20
+ module Elasticsearch
21
+ module Test
22
+ class XPackEqlGetTest < Minitest::Test
23
+ context 'Eql: Get' do
24
+ subject { FakeClient.new }
25
+
26
+ should 'perform correct request' do
27
+ subject.expects(:perform_request).with do |method, url, params, body|
28
+ assert_equal 'GET', method
29
+ assert_equal '_eql/search/foo', url
30
+ assert_equal({}, params)
31
+ assert_nil body
32
+ true
33
+ end.returns(FakeResponse.new)
34
+
35
+ subject.eql.get(id: 'foo')
36
+ end
37
+
38
+ should 'raise argument error without id' do
39
+ assert_raises ArgumentError do
40
+ subject.eql.get
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end