opensearch-api 1.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.
- checksums.yaml +7 -0
- checksums.yaml.gz.sig +0 -0
- data/.gitignore +17 -0
- data/Gemfile +48 -0
- data/LICENSE +202 -0
- data/README.md +194 -0
- data/Rakefile +131 -0
- data/lib/opensearch/api/actions/abort_benchmark.rb +49 -0
- data/lib/opensearch/api/actions/benchmark.rb +89 -0
- data/lib/opensearch/api/actions/bulk.rb +97 -0
- data/lib/opensearch/api/actions/cat/aliases.rb +79 -0
- data/lib/opensearch/api/actions/cat/allocation.rb +81 -0
- data/lib/opensearch/api/actions/cat/count.rb +75 -0
- data/lib/opensearch/api/actions/cat/fielddata.rb +77 -0
- data/lib/opensearch/api/actions/cat/health.rb +72 -0
- data/lib/opensearch/api/actions/cat/help.rb +61 -0
- data/lib/opensearch/api/actions/cat/indices.rb +91 -0
- data/lib/opensearch/api/actions/cat/master.rb +71 -0
- data/lib/opensearch/api/actions/cat/nodeattrs.rb +71 -0
- data/lib/opensearch/api/actions/cat/nodes.rb +80 -0
- data/lib/opensearch/api/actions/cat/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/cat/pending_tasks.rb +74 -0
- data/lib/opensearch/api/actions/cat/plugins.rb +73 -0
- data/lib/opensearch/api/actions/cat/recovery.rb +84 -0
- data/lib/opensearch/api/actions/cat/repositories.rb +72 -0
- data/lib/opensearch/api/actions/cat/segments.rb +76 -0
- data/lib/opensearch/api/actions/cat/shards.rb +83 -0
- data/lib/opensearch/api/actions/cat/snapshots.rb +80 -0
- data/lib/opensearch/api/actions/cat/tasks.rb +77 -0
- data/lib/opensearch/api/actions/cat/templates.rb +78 -0
- data/lib/opensearch/api/actions/cat/thread_pool.rb +82 -0
- data/lib/opensearch/api/actions/clear_scroll.rb +62 -0
- data/lib/opensearch/api/actions/close_point_in_time.rb +50 -0
- data/lib/opensearch/api/actions/cluster/allocation_explain.rb +67 -0
- data/lib/opensearch/api/actions/cluster/delete_component_template.rb +66 -0
- data/lib/opensearch/api/actions/cluster/delete_voting_config_exclusions.rb +59 -0
- data/lib/opensearch/api/actions/cluster/exists_component_template.rb +68 -0
- data/lib/opensearch/api/actions/cluster/get_component_template.rb +68 -0
- data/lib/opensearch/api/actions/cluster/get_settings.rb +65 -0
- data/lib/opensearch/api/actions/cluster/health.rb +86 -0
- data/lib/opensearch/api/actions/cluster/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/cluster/pending_tasks.rb +62 -0
- data/lib/opensearch/api/actions/cluster/post_voting_config_exclusions.rb +63 -0
- data/lib/opensearch/api/actions/cluster/put_component_template.rb +70 -0
- data/lib/opensearch/api/actions/cluster/put_settings.rb +66 -0
- data/lib/opensearch/api/actions/cluster/remote_info.rb +51 -0
- data/lib/opensearch/api/actions/cluster/reroute.rb +70 -0
- data/lib/opensearch/api/actions/cluster/state.rb +85 -0
- data/lib/opensearch/api/actions/cluster/stats.rb +68 -0
- data/lib/opensearch/api/actions/count.rb +101 -0
- data/lib/opensearch/api/actions/create.rb +61 -0
- data/lib/opensearch/api/actions/dangling_indices/delete_dangling_index.rb +68 -0
- data/lib/opensearch/api/actions/dangling_indices/import_dangling_index.rb +67 -0
- data/lib/opensearch/api/actions/dangling_indices/list_dangling_indices.rb +51 -0
- data/lib/opensearch/api/actions/dangling_indices/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/delete.rb +96 -0
- data/lib/opensearch/api/actions/delete_by_query.rb +140 -0
- data/lib/opensearch/api/actions/delete_by_query_rethrottle.rb +62 -0
- data/lib/opensearch/api/actions/delete_by_rethrottle.rb +55 -0
- data/lib/opensearch/api/actions/delete_script.rb +64 -0
- data/lib/opensearch/api/actions/exists.rb +101 -0
- data/lib/opensearch/api/actions/exists_source.rb +96 -0
- data/lib/opensearch/api/actions/explain.rb +106 -0
- data/lib/opensearch/api/actions/features/get_features.rb +59 -0
- data/lib/opensearch/api/actions/features/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/features/reset_features.rb +55 -0
- data/lib/opensearch/api/actions/field_caps.rb +78 -0
- data/lib/opensearch/api/actions/get.rb +100 -0
- data/lib/opensearch/api/actions/get_script.rb +62 -0
- data/lib/opensearch/api/actions/get_script_context.rb +53 -0
- data/lib/opensearch/api/actions/get_script_languages.rb +53 -0
- data/lib/opensearch/api/actions/get_source.rb +94 -0
- data/lib/opensearch/api/actions/index.rb +103 -0
- data/lib/opensearch/api/actions/indices/add_block.rb +76 -0
- data/lib/opensearch/api/actions/indices/analyze.rb +71 -0
- data/lib/opensearch/api/actions/indices/clear_cache.rb +79 -0
- data/lib/opensearch/api/actions/indices/clone.rb +73 -0
- data/lib/opensearch/api/actions/indices/close.rb +74 -0
- data/lib/opensearch/api/actions/indices/create.rb +71 -0
- data/lib/opensearch/api/actions/indices/delete.rb +76 -0
- data/lib/opensearch/api/actions/indices/delete_alias.rb +72 -0
- data/lib/opensearch/api/actions/indices/delete_index_template.rb +66 -0
- data/lib/opensearch/api/actions/indices/delete_template.rb +70 -0
- data/lib/opensearch/api/actions/indices/disk_usage.rb +76 -0
- data/lib/opensearch/api/actions/indices/exists.rb +79 -0
- data/lib/opensearch/api/actions/indices/exists_alias.rb +82 -0
- data/lib/opensearch/api/actions/indices/exists_index_template.rb +70 -0
- data/lib/opensearch/api/actions/indices/exists_template.rb +73 -0
- data/lib/opensearch/api/actions/indices/exists_type.rb +79 -0
- data/lib/opensearch/api/actions/indices/field_usage_stats.rb +74 -0
- data/lib/opensearch/api/actions/indices/flush.rb +74 -0
- data/lib/opensearch/api/actions/indices/flush_synced.rb +79 -0
- data/lib/opensearch/api/actions/indices/forcemerge.rb +76 -0
- data/lib/opensearch/api/actions/indices/get.rb +78 -0
- data/lib/opensearch/api/actions/indices/get_alias.rb +79 -0
- data/lib/opensearch/api/actions/indices/get_field_mapping.rb +92 -0
- data/lib/opensearch/api/actions/indices/get_index_template.rb +70 -0
- data/lib/opensearch/api/actions/indices/get_mapping.rb +88 -0
- data/lib/opensearch/api/actions/indices/get_settings.rb +85 -0
- data/lib/opensearch/api/actions/indices/get_template.rb +72 -0
- data/lib/opensearch/api/actions/indices/get_upgrade.rb +75 -0
- data/lib/opensearch/api/actions/indices/open.rb +74 -0
- data/lib/opensearch/api/actions/indices/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/indices/put_alias.rb +73 -0
- data/lib/opensearch/api/actions/indices/put_index_template.rb +70 -0
- data/lib/opensearch/api/actions/indices/put_mapping.rb +91 -0
- data/lib/opensearch/api/actions/indices/put_settings.rb +81 -0
- data/lib/opensearch/api/actions/indices/put_template.rb +72 -0
- data/lib/opensearch/api/actions/indices/recovery.rb +68 -0
- data/lib/opensearch/api/actions/indices/refresh.rb +70 -0
- data/lib/opensearch/api/actions/indices/resolve_index.rb +68 -0
- data/lib/opensearch/api/actions/indices/rollover.rb +81 -0
- data/lib/opensearch/api/actions/indices/segments.rb +72 -0
- data/lib/opensearch/api/actions/indices/shard_stores.rb +72 -0
- data/lib/opensearch/api/actions/indices/shrink.rb +75 -0
- data/lib/opensearch/api/actions/indices/simulate_index_template.rb +69 -0
- data/lib/opensearch/api/actions/indices/simulate_template.rb +71 -0
- data/lib/opensearch/api/actions/indices/split.rb +75 -0
- data/lib/opensearch/api/actions/indices/stats.rb +100 -0
- data/lib/opensearch/api/actions/indices/update_aliases.rb +64 -0
- data/lib/opensearch/api/actions/indices/upgrade.rb +79 -0
- data/lib/opensearch/api/actions/indices/validate_query.rb +104 -0
- data/lib/opensearch/api/actions/info.rb +49 -0
- data/lib/opensearch/api/actions/ingest/delete_pipeline.rb +66 -0
- data/lib/opensearch/api/actions/ingest/geo_ip_stats.rb +51 -0
- data/lib/opensearch/api/actions/ingest/get_pipeline.rb +68 -0
- data/lib/opensearch/api/actions/ingest/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/ingest/processor_grok.rb +51 -0
- data/lib/opensearch/api/actions/ingest/put_pipeline.rb +68 -0
- data/lib/opensearch/api/actions/ingest/simulate.rb +69 -0
- data/lib/opensearch/api/actions/mget.rb +91 -0
- data/lib/opensearch/api/actions/msearch.rb +112 -0
- data/lib/opensearch/api/actions/msearch_template.rb +96 -0
- data/lib/opensearch/api/actions/mtermvectors.rb +107 -0
- data/lib/opensearch/api/actions/nodes/hot_threads.rb +81 -0
- data/lib/opensearch/api/actions/nodes/info.rb +75 -0
- data/lib/opensearch/api/actions/nodes/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/nodes/reload_secure_settings.rb +67 -0
- data/lib/opensearch/api/actions/nodes/shutdown.rb +65 -0
- data/lib/opensearch/api/actions/nodes/stats.rb +96 -0
- data/lib/opensearch/api/actions/nodes/usage.rb +73 -0
- data/lib/opensearch/api/actions/open_point_in_time.rb +72 -0
- data/lib/opensearch/api/actions/params_registry.rb +67 -0
- data/lib/opensearch/api/actions/ping.rb +57 -0
- data/lib/opensearch/api/actions/put_script.rb +74 -0
- data/lib/opensearch/api/actions/rank_eval.rb +77 -0
- data/lib/opensearch/api/actions/reindex.rb +76 -0
- data/lib/opensearch/api/actions/reindex_rethrottle.rb +62 -0
- data/lib/opensearch/api/actions/remote/info.rb +45 -0
- data/lib/opensearch/api/actions/render_search_template.rb +62 -0
- data/lib/opensearch/api/actions/scripts_painless_execute.rb +59 -0
- data/lib/opensearch/api/actions/scroll.rb +78 -0
- data/lib/opensearch/api/actions/search.rb +165 -0
- data/lib/opensearch/api/actions/search_shards.rb +74 -0
- data/lib/opensearch/api/actions/search_template.rb +101 -0
- data/lib/opensearch/api/actions/shutdown/delete_node.rb +60 -0
- data/lib/opensearch/api/actions/shutdown/get_node.rb +62 -0
- data/lib/opensearch/api/actions/shutdown/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/shutdown/put_node.rb +62 -0
- data/lib/opensearch/api/actions/snapshot/cleanup_repository.rb +66 -0
- data/lib/opensearch/api/actions/snapshot/clone.rb +74 -0
- data/lib/opensearch/api/actions/snapshot/create.rb +71 -0
- data/lib/opensearch/api/actions/snapshot/create_repository.rb +70 -0
- data/lib/opensearch/api/actions/snapshot/delete.rb +72 -0
- data/lib/opensearch/api/actions/snapshot/delete_repository.rb +70 -0
- data/lib/opensearch/api/actions/snapshot/get.rb +80 -0
- data/lib/opensearch/api/actions/snapshot/get_features.rb +59 -0
- data/lib/opensearch/api/actions/snapshot/get_repository.rb +72 -0
- data/lib/opensearch/api/actions/snapshot/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/snapshot/repository_analyze.rb +84 -0
- data/lib/opensearch/api/actions/snapshot/restore.rb +71 -0
- data/lib/opensearch/api/actions/snapshot/status.rb +77 -0
- data/lib/opensearch/api/actions/snapshot/verify_repository.rb +66 -0
- data/lib/opensearch/api/actions/tasks/cancel.rb +76 -0
- data/lib/opensearch/api/actions/tasks/get.rb +68 -0
- data/lib/opensearch/api/actions/tasks/list.rb +75 -0
- data/lib/opensearch/api/actions/tasks/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/termvectors.rb +115 -0
- data/lib/opensearch/api/actions/update.rb +106 -0
- data/lib/opensearch/api/actions/update_by_query.rb +144 -0
- data/lib/opensearch/api/actions/update_by_query_rethrottle.rb +62 -0
- data/lib/opensearch/api/namespace/cat.rb +45 -0
- data/lib/opensearch/api/namespace/cluster.rb +46 -0
- data/lib/opensearch/api/namespace/common.rb +53 -0
- data/lib/opensearch/api/namespace/dangling_indices.rb +44 -0
- data/lib/opensearch/api/namespace/features.rb +45 -0
- data/lib/opensearch/api/namespace/indices.rb +46 -0
- data/lib/opensearch/api/namespace/ingest.rb +46 -0
- data/lib/opensearch/api/namespace/nodes.rb +46 -0
- data/lib/opensearch/api/namespace/remote.rb +46 -0
- data/lib/opensearch/api/namespace/security.rb +45 -0
- data/lib/opensearch/api/namespace/shutdown.rb +46 -0
- data/lib/opensearch/api/namespace/snapshot.rb +46 -0
- data/lib/opensearch/api/namespace/tasks.rb +46 -0
- data/lib/opensearch/api/utils.rb +297 -0
- data/lib/opensearch/api/version.rb +31 -0
- data/lib/opensearch/api.rb +101 -0
- data/lib/opensearch-api.rb +27 -0
- data/opensearch-api.gemspec +92 -0
- data/spec/opensearch/api/actions/abort_benchmark_spec.rb +43 -0
- data/spec/opensearch/api/actions/benchmark_spec.rb +43 -0
- data/spec/opensearch/api/actions/bulk_spec.rb +148 -0
- data/spec/opensearch/api/actions/cat/aliases_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/allocation_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/count_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/fielddata_spec.rb +61 -0
- data/spec/opensearch/api/actions/cat/health_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/help_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/indices_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/master_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/nodeattrs_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/nodes_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/pending_tasks_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/plugins_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/recovery_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/repositories_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/segments_spec.rb +58 -0
- data/spec/opensearch/api/actions/cat/shards_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/snapshot_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/tasks_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/templates_spec.rb +44 -0
- data/spec/opensearch/api/actions/cat/thread_pool_spec.rb +44 -0
- data/spec/opensearch/api/actions/clear_scroll_spec.rb +61 -0
- data/spec/opensearch/api/actions/close_point_in_time_spec.rb +43 -0
- data/spec/opensearch/api/actions/cluster/allocation_explain_spec.rb +44 -0
- data/spec/opensearch/api/actions/cluster/get_settings_spec.rb +44 -0
- data/spec/opensearch/api/actions/cluster/health_spec.rb +78 -0
- data/spec/opensearch/api/actions/cluster/pending_tasks_spec.rb +44 -0
- data/spec/opensearch/api/actions/cluster/put_settings_spec.rb +44 -0
- data/spec/opensearch/api/actions/cluster/remote_info_spec.rb +44 -0
- data/spec/opensearch/api/actions/cluster/reroute_spec.rb +61 -0
- data/spec/opensearch/api/actions/cluster/state_spec.rb +61 -0
- data/spec/opensearch/api/actions/cluster/stats_spec.rb +44 -0
- data/spec/opensearch/api/actions/count_spec.rb +78 -0
- data/spec/opensearch/api/actions/create_document_spec.rb +95 -0
- data/spec/opensearch/api/actions/dangling_indices/delete_dangling_indices_spec.rb +57 -0
- data/spec/opensearch/api/actions/dangling_indices/import_dangling_indices_spec.rb +57 -0
- data/spec/opensearch/api/actions/dangling_indices/list_dangling_indices_spec.rb +45 -0
- data/spec/opensearch/api/actions/delete_by_query_spec.rb +89 -0
- data/spec/opensearch/api/actions/delete_document_spec.rb +121 -0
- data/spec/opensearch/api/actions/delete_script_spec.rb +46 -0
- data/spec/opensearch/api/actions/exists_document_spec.rb +136 -0
- data/spec/opensearch/api/actions/explain_document_spec.rb +108 -0
- data/spec/opensearch/api/actions/features/get_features_spec.rb +43 -0
- data/spec/opensearch/api/actions/features/reset_features_spec.rb +43 -0
- data/spec/opensearch/api/actions/field_caps_spec.rb +44 -0
- data/spec/opensearch/api/actions/get_document_source_spec.rb +110 -0
- data/spec/opensearch/api/actions/get_document_spec.rb +133 -0
- data/spec/opensearch/api/actions/get_script_spec.rb +59 -0
- data/spec/opensearch/api/actions/hashie_spec.rb +98 -0
- data/spec/opensearch/api/actions/index_document_spec.rb +146 -0
- data/spec/opensearch/api/actions/indices/add_block_spec.rb +72 -0
- data/spec/opensearch/api/actions/indices/analyze_spec.rb +77 -0
- data/spec/opensearch/api/actions/indices/clear_cache_spec.rb +89 -0
- data/spec/opensearch/api/actions/indices/clone_spec.rb +131 -0
- data/spec/opensearch/api/actions/indices/close_spec.rb +94 -0
- data/spec/opensearch/api/actions/indices/create_spec.rb +94 -0
- data/spec/opensearch/api/actions/indices/delete_alias_spec.rb +92 -0
- data/spec/opensearch/api/actions/indices/delete_spec.rb +117 -0
- data/spec/opensearch/api/actions/indices/delete_template_spec.rb +95 -0
- data/spec/opensearch/api/actions/indices/disk_usage_spec.rb +57 -0
- data/spec/opensearch/api/actions/indices/exists_alias_spec.rb +117 -0
- data/spec/opensearch/api/actions/indices/exists_spec.rb +117 -0
- data/spec/opensearch/api/actions/indices/exists_template_spec.rb +102 -0
- data/spec/opensearch/api/actions/indices/exists_type_spec.rb +117 -0
- data/spec/opensearch/api/actions/indices/field_usage_stats_spec.rb +55 -0
- data/spec/opensearch/api/actions/indices/flush_spec.rb +100 -0
- data/spec/opensearch/api/actions/indices/flush_synced_spec.rb +99 -0
- data/spec/opensearch/api/actions/indices/forcemerge_spec.rb +44 -0
- data/spec/opensearch/api/actions/indices/get_alias_spec.rb +70 -0
- data/spec/opensearch/api/actions/indices/get_field_mapping_spec.rb +70 -0
- data/spec/opensearch/api/actions/indices/get_mapping_spec.rb +92 -0
- data/spec/opensearch/api/actions/indices/get_settings_spec.rb +81 -0
- data/spec/opensearch/api/actions/indices/get_spec.rb +63 -0
- data/spec/opensearch/api/actions/indices/open_spec.rb +74 -0
- data/spec/opensearch/api/actions/indices/put_alias_spec.rb +98 -0
- data/spec/opensearch/api/actions/indices/put_mapping_spec.rb +111 -0
- data/spec/opensearch/api/actions/indices/put_settings_spec.rb +117 -0
- data/spec/opensearch/api/actions/indices/put_template_spec.rb +116 -0
- data/spec/opensearch/api/actions/indices/recovery_spec.rb +44 -0
- data/spec/opensearch/api/actions/indices/refresh_spec.rb +100 -0
- data/spec/opensearch/api/actions/indices/rollover_spec.rb +67 -0
- data/spec/opensearch/api/actions/indices/segments_spec.rb +100 -0
- data/spec/opensearch/api/actions/indices/shard_stores_spec.rb +44 -0
- data/spec/opensearch/api/actions/indices/shrink_spec.rb +51 -0
- data/spec/opensearch/api/actions/indices/split_spec.rb +44 -0
- data/spec/opensearch/api/actions/indices/stats_spec.rb +133 -0
- data/spec/opensearch/api/actions/indices/update_aliases_spec.rb +76 -0
- data/spec/opensearch/api/actions/indices/upgrade_spec.rb +44 -0
- data/spec/opensearch/api/actions/indices/validate_query_spec.rb +131 -0
- data/spec/opensearch/api/actions/info_spec.rb +44 -0
- data/spec/opensearch/api/actions/ingest/delete_pipeline_spec.rb +69 -0
- data/spec/opensearch/api/actions/ingest/geo_ip_stats_spec.rb +43 -0
- data/spec/opensearch/api/actions/ingest/get_pipeline_spec.rb +59 -0
- data/spec/opensearch/api/actions/ingest/put_pipeline_spec.rb +69 -0
- data/spec/opensearch/api/actions/ingest/simulate_spec.rb +58 -0
- data/spec/opensearch/api/actions/json_builders_spec.rb +93 -0
- data/spec/opensearch/api/actions/mget_spec.rb +111 -0
- data/spec/opensearch/api/actions/msearch_spec.rb +160 -0
- data/spec/opensearch/api/actions/msearch_template_spec.rb +102 -0
- data/spec/opensearch/api/actions/mtermvectors_spec.rb +55 -0
- data/spec/opensearch/api/actions/nodes/hot_threads_spec.rb +70 -0
- data/spec/opensearch/api/actions/nodes/info_spec.rb +111 -0
- data/spec/opensearch/api/actions/nodes/reload_secure_settings_spec.rb +93 -0
- data/spec/opensearch/api/actions/nodes/shutdown_spec.rb +85 -0
- data/spec/opensearch/api/actions/nodes/stats_spec.rb +85 -0
- data/spec/opensearch/api/actions/open_point_in_time_spec.rb +53 -0
- data/spec/opensearch/api/actions/ping_spec.rb +85 -0
- data/spec/opensearch/api/actions/put_script_spec.rb +65 -0
- data/spec/opensearch/api/actions/reindex_spec.rb +44 -0
- data/spec/opensearch/api/actions/remote/info_spec.rb +44 -0
- data/spec/opensearch/api/actions/render_search_template_spec.rb +61 -0
- data/spec/opensearch/api/actions/scroll_spec.rb +61 -0
- data/spec/opensearch/api/actions/search_shards_spec.rb +44 -0
- data/spec/opensearch/api/actions/search_spec.rb +143 -0
- data/spec/opensearch/api/actions/search_template_spec.rb +43 -0
- data/spec/opensearch/api/actions/shutdown/delete_node_spec.rb +53 -0
- data/spec/opensearch/api/actions/shutdown/get_node_spec.rb +55 -0
- data/spec/opensearch/api/actions/shutdown/put_node_spec.rb +59 -0
- data/spec/opensearch/api/actions/snapshot/clone_spec.rb +76 -0
- data/spec/opensearch/api/actions/snapshot/create_repository_spec.rb +60 -0
- data/spec/opensearch/api/actions/snapshot/create_spec.rb +60 -0
- data/spec/opensearch/api/actions/snapshot/delete_repository_spec.rb +59 -0
- data/spec/opensearch/api/actions/snapshot/delete_spec.rb +60 -0
- data/spec/opensearch/api/actions/snapshot/get_features_spec.rb +47 -0
- data/spec/opensearch/api/actions/snapshot/get_repository_spec.rb +44 -0
- data/spec/opensearch/api/actions/snapshot/get_spec.rb +60 -0
- data/spec/opensearch/api/actions/snapshot/repository_analize_spec.rb +57 -0
- data/spec/opensearch/api/actions/snapshot/restore_spec.rb +60 -0
- data/spec/opensearch/api/actions/snapshot/status_spec.rb +59 -0
- data/spec/opensearch/api/actions/snapshot/verify_repository_spec.rb +44 -0
- data/spec/opensearch/api/actions/tasks/cancel_spec.rb +59 -0
- data/spec/opensearch/api/actions/tasks/get_spec.rb +44 -0
- data/spec/opensearch/api/actions/tasks/list_spec.rb +48 -0
- data/spec/opensearch/api/actions/termvectors_spec.rb +75 -0
- data/spec/opensearch/api/actions/update_by_query_spec.rb +44 -0
- data/spec/opensearch/api/actions/update_document_spec.rb +131 -0
- data/spec/opensearch/api/api_spec.rb +52 -0
- data/spec/opensearch/api/client_spec.rb +55 -0
- data/spec/opensearch/api/rest_api_yaml_spec.rb +169 -0
- data/spec/opensearch/api/utils_spec.rb +439 -0
- data/spec/rest_yaml_tests_helper.rb +89 -0
- data/spec/skipped_tests.yml +29 -0
- data/spec/spec_helper.rb +84 -0
- data.tar.gz.sig +0 -0
- metadata +860 -0
- metadata.gz.sig +0 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
require 'spec_helper'
|
|
28
|
+
|
|
29
|
+
describe 'client.ingest#put_pipeline' do
|
|
30
|
+
|
|
31
|
+
let(:expected_args) do
|
|
32
|
+
[
|
|
33
|
+
'PUT',
|
|
34
|
+
url,
|
|
35
|
+
{},
|
|
36
|
+
{},
|
|
37
|
+
{}
|
|
38
|
+
]
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
let(:url) do
|
|
42
|
+
'_ingest/pipeline/foo'
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
let(:client) do
|
|
46
|
+
Class.new { include OpenSearch::API }.new
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
it 'requires the :id argument' do
|
|
50
|
+
expect {
|
|
51
|
+
client.ingest.put_pipeline
|
|
52
|
+
}.to raise_exception(ArgumentError)
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
it 'performs the request' do
|
|
56
|
+
expect(client_double.ingest.put_pipeline(id: 'foo', body: {})).to eq({})
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
context 'when the path must be URL-escaped' do
|
|
60
|
+
|
|
61
|
+
let(:url) do
|
|
62
|
+
'_ingest/pipeline/foo%5Ebar'
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
it 'performs the request' do
|
|
66
|
+
expect(client_double.ingest.put_pipeline(id: 'foo^bar', body: {})).to eq({})
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
require 'spec_helper'
|
|
28
|
+
|
|
29
|
+
describe 'client.ingest#simulate' do
|
|
30
|
+
let(:expected_args) do
|
|
31
|
+
[
|
|
32
|
+
method,
|
|
33
|
+
url,
|
|
34
|
+
{},
|
|
35
|
+
{},
|
|
36
|
+
{}
|
|
37
|
+
]
|
|
38
|
+
end
|
|
39
|
+
let(:method) { 'POST' }
|
|
40
|
+
|
|
41
|
+
let(:url) do
|
|
42
|
+
'_ingest/pipeline/_simulate'
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
it 'performs the request' do
|
|
46
|
+
expect(client_double.ingest.simulate(body: {})).to eq({})
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
context 'when a pipeline id is provided' do
|
|
50
|
+
let(:url) do
|
|
51
|
+
'_ingest/pipeline/foo/_simulate'
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
it 'performs the request' do
|
|
55
|
+
expect(client_double.ingest.simulate(id: 'foo', body: {})).to eq({})
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
require 'spec_helper'
|
|
28
|
+
|
|
29
|
+
describe 'JSON builders' do
|
|
30
|
+
context 'JBuilder' do
|
|
31
|
+
let(:expected_args) do
|
|
32
|
+
[
|
|
33
|
+
'POST',
|
|
34
|
+
'_search',
|
|
35
|
+
{},
|
|
36
|
+
body,
|
|
37
|
+
{}
|
|
38
|
+
]
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
let(:json) do
|
|
42
|
+
Jbuilder.encode do |json|
|
|
43
|
+
json.query do
|
|
44
|
+
json.match do
|
|
45
|
+
json.title do
|
|
46
|
+
json.query 'test'
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
let(:body) do
|
|
54
|
+
json
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
it 'properly builds the json' do
|
|
58
|
+
expect(client_double.search(body: json)).to eq({})
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
context 'Jsonify' do
|
|
63
|
+
let(:expected_args) do
|
|
64
|
+
[
|
|
65
|
+
'POST',
|
|
66
|
+
'_search',
|
|
67
|
+
{},
|
|
68
|
+
body,
|
|
69
|
+
{}
|
|
70
|
+
]
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
let(:json) do
|
|
74
|
+
Jsonify::Builder.compile do |json|
|
|
75
|
+
json.query do
|
|
76
|
+
json.match do
|
|
77
|
+
json.title do
|
|
78
|
+
json.query 'test'
|
|
79
|
+
end
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
let(:body) do
|
|
86
|
+
json
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
it 'properly builds the json' do
|
|
90
|
+
expect(client_double.search(body: json)).to eq({})
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
end
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
require 'spec_helper'
|
|
28
|
+
|
|
29
|
+
describe 'client#mget' do
|
|
30
|
+
let(:expected_args) do
|
|
31
|
+
[
|
|
32
|
+
'POST',
|
|
33
|
+
url,
|
|
34
|
+
params,
|
|
35
|
+
body,
|
|
36
|
+
{}
|
|
37
|
+
]
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
let(:body) do
|
|
41
|
+
{ docs: [] }
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
let(:url) do
|
|
45
|
+
'_mget'
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
let(:params) do
|
|
49
|
+
{}
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
it 'performs the request' do
|
|
53
|
+
expect(client_double.mget(body: { :docs => [] })).to eq({})
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
context 'when an index is specified' do
|
|
57
|
+
|
|
58
|
+
let(:url) do
|
|
59
|
+
'foo/_mget'
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
it 'performs the request' do
|
|
63
|
+
expect(client_double.mget(index: 'foo', body: { :docs => [] })).to eq({})
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
context 'when a type is specified' do
|
|
68
|
+
|
|
69
|
+
let(:url) do
|
|
70
|
+
'foo/bar/_mget'
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
let(:body) do
|
|
74
|
+
{ ids: [ '1', '2' ]}
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
it 'performs the request' do
|
|
78
|
+
expect(client_double.mget(index: 'foo', type: 'bar', body: { :ids => [ '1', '2'] })).to eq({})
|
|
79
|
+
end
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
context 'when url parameters are provided' do
|
|
83
|
+
|
|
84
|
+
let(:params) do
|
|
85
|
+
{ refresh: true }
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
let(:body) do
|
|
89
|
+
{}
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
it 'performs the request' do
|
|
93
|
+
expect(client_double.mget(body: {}, refresh: true)).to eq({})
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
context 'when the request needs to be URL-escaped' do
|
|
98
|
+
|
|
99
|
+
let(:url) do
|
|
100
|
+
'foo%5Ebar/bar%2Fbam/_mget'
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
let(:body) do
|
|
104
|
+
{ ids: [ '1', '2' ]}
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
it 'performs the request' do
|
|
108
|
+
expect(client_double.mget(index: 'foo^bar', type: 'bar/bam', body: { :ids => [ '1', '2'] })).to eq({})
|
|
109
|
+
end
|
|
110
|
+
end
|
|
111
|
+
end
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
require 'spec_helper'
|
|
28
|
+
|
|
29
|
+
describe 'client#msearch' do
|
|
30
|
+
let(:expected_args) do
|
|
31
|
+
[
|
|
32
|
+
'POST',
|
|
33
|
+
url,
|
|
34
|
+
params,
|
|
35
|
+
body,
|
|
36
|
+
headers
|
|
37
|
+
]
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
let(:body) do
|
|
41
|
+
nil
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
let(:url) do
|
|
45
|
+
'_msearch'
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
let(:params) do
|
|
49
|
+
{}
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
let(:headers) do
|
|
53
|
+
{ 'Content-Type' => 'application/x-ndjson' }
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
let(:client) do
|
|
57
|
+
Class.new { include OpenSearch::API }.new
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
it 'requires the :body argument' do
|
|
61
|
+
expect do
|
|
62
|
+
client.msearch
|
|
63
|
+
end.to raise_exception(ArgumentError)
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
context 'when the body is an object' do
|
|
67
|
+
let(:body) do
|
|
68
|
+
<<-PAYLOAD.gsub(/^\s+/, '')
|
|
69
|
+
{"index":"foo"}
|
|
70
|
+
{"query":{"match_all":{}}}
|
|
71
|
+
{"index":"bar"}
|
|
72
|
+
{"query":{"match":{"foo":"bar"}}}
|
|
73
|
+
{"search_type":"count"}
|
|
74
|
+
{"facets":{"tags":{}}}
|
|
75
|
+
PAYLOAD
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
it 'performs the request' do
|
|
79
|
+
expect(
|
|
80
|
+
client_double.msearch(
|
|
81
|
+
body: [
|
|
82
|
+
{ index: 'foo', search: { query: { match_all: {} } } },
|
|
83
|
+
{ index: 'bar', search: { query: { match: { foo: 'bar' } } } },
|
|
84
|
+
{ search_type: 'count', search: { facets: { tags: {} } } }
|
|
85
|
+
]
|
|
86
|
+
)
|
|
87
|
+
)
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
context 'when the body is a string' do
|
|
92
|
+
let(:body) do
|
|
93
|
+
%Q|{"foo":"bar"}\n{"moo":"lam"}|
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
it 'performs the request' do
|
|
97
|
+
expect(client_double.msearch(body: %Q|{"foo":"bar"}\n{"moo":"lam"}|)).to eq({})
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
context 'when an index is specified' do
|
|
102
|
+
let(:url) do
|
|
103
|
+
'foo/_msearch'
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
let(:body) do
|
|
107
|
+
''
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
it 'performs the request' do
|
|
111
|
+
expect(client_double.msearch(index: 'foo', body: []))
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
context 'when multiple indices are specified' do
|
|
116
|
+
let(:url) do
|
|
117
|
+
'foo,bar/_msearch'
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
let(:body) do
|
|
121
|
+
''
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
it 'performs the request' do
|
|
125
|
+
expect(client_double.msearch(index: ['foo', 'bar'], body: []))
|
|
126
|
+
end
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
context 'when the request needs to be URL-escaped' do
|
|
130
|
+
let(:url) do
|
|
131
|
+
'foo%5Ebar/_msearch'
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
let(:body) do
|
|
135
|
+
''
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
it 'performs the request' do
|
|
139
|
+
expect(client_double.msearch(index: 'foo^bar', body: [])).to eq({})
|
|
140
|
+
end
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
context 'when the URL params need to be URL-encoded' do
|
|
144
|
+
let(:url) do
|
|
145
|
+
'_msearch'
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
let(:body) do
|
|
149
|
+
''
|
|
150
|
+
end
|
|
151
|
+
|
|
152
|
+
let(:params) do
|
|
153
|
+
{ search_type: 'scroll' }
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
it 'performs the request' do
|
|
157
|
+
expect(client_double.msearch(body: [], search_type: 'scroll')).to eq({})
|
|
158
|
+
end
|
|
159
|
+
end
|
|
160
|
+
end
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
require 'spec_helper'
|
|
28
|
+
|
|
29
|
+
describe 'client#msearch_template' do
|
|
30
|
+
let(:expected_args) do
|
|
31
|
+
[
|
|
32
|
+
'POST',
|
|
33
|
+
url,
|
|
34
|
+
params,
|
|
35
|
+
body,
|
|
36
|
+
headers
|
|
37
|
+
]
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
let(:body) do
|
|
41
|
+
nil
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
let(:params) do
|
|
45
|
+
{}
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
let(:headers) do
|
|
49
|
+
{ 'Content-Type' => 'application/x-ndjson' }
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
let(:url) do
|
|
53
|
+
'_msearch/template'
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
context 'when a body is provided as a document' do
|
|
57
|
+
|
|
58
|
+
let(:body) do
|
|
59
|
+
<<-PAYLOAD.gsub(/^\s+/, '')
|
|
60
|
+
{"index":"foo"}
|
|
61
|
+
{"inline":{"query":{"match":{"foo":"{{q}}"}}},"params":{"q":"foo"}}
|
|
62
|
+
{"index":"bar"}
|
|
63
|
+
{"id":"query_foo","params":{"q":"foo"}}
|
|
64
|
+
PAYLOAD
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
it 'performs the request' do
|
|
68
|
+
expect(client_double.msearch_template(body: [
|
|
69
|
+
{ index: 'foo' },
|
|
70
|
+
{ inline: { query: { match: { foo: '{{q}}' } } }, params: { q: 'foo' } },
|
|
71
|
+
{ index: 'bar' },
|
|
72
|
+
{ id: 'query_foo', params: { q: 'foo' } }
|
|
73
|
+
])).to eq({})
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
context 'when a body is provided as a string' do
|
|
78
|
+
|
|
79
|
+
let(:body) do
|
|
80
|
+
%Q|{"foo":"bar"}\n{"moo":"lam"}|
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
it 'performs the request' do
|
|
84
|
+
expect(client_double.msearch_template(body: %Q|{"foo":"bar"}\n{"moo":"lam"}|)).to eq({})
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
context 'when an index is provided' do
|
|
89
|
+
|
|
90
|
+
let(:url) do
|
|
91
|
+
'foo/_msearch/template'
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
let(:body) do
|
|
95
|
+
''
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
it 'performs the request' do
|
|
99
|
+
expect(client_double.msearch_template(index: 'foo', body: []))
|
|
100
|
+
end
|
|
101
|
+
end
|
|
102
|
+
end
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
require 'spec_helper'
|
|
28
|
+
|
|
29
|
+
describe 'client#mtermvectors' do
|
|
30
|
+
let(:expected_args) do
|
|
31
|
+
[
|
|
32
|
+
method,
|
|
33
|
+
'my-index/my-type/_mtermvectors',
|
|
34
|
+
{},
|
|
35
|
+
body,
|
|
36
|
+
{}
|
|
37
|
+
]
|
|
38
|
+
end
|
|
39
|
+
let(:method) { 'POST' }
|
|
40
|
+
|
|
41
|
+
let(:body) do
|
|
42
|
+
{ ids: [1, 2, 3] }
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
it 'performs the request' do
|
|
46
|
+
expect(client_double.mtermvectors(index: 'my-index', type: 'my-type', body: { ids: [1, 2, 3] })).to eq({})
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
context 'when a list of ids is passed instead of a body' do
|
|
50
|
+
let(:method) { 'GET' }
|
|
51
|
+
it 'performs the request' do
|
|
52
|
+
expect(client_double.mtermvectors(index: 'my-index', type: 'my-type', ids: [1, 2, 3])).to eq({})
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|