elastic_adapter 0.0.2 → 0.0.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f388cfada6ca770fbeb5f7039efb9986a08c6bcd
4
- data.tar.gz: 516fd85530fdf3b62561e829ff72728ef8c90f58
3
+ metadata.gz: 25e0579bbeba803053caee8b5986f7b02f7f719c
4
+ data.tar.gz: 1280437e020532bc8c67fc55555fad96ac9bd1e8
5
5
  SHA512:
6
- metadata.gz: 42428a0a11237fad29bdb3f01f1ae007e23baec0da33d29ca3443a4bb8a76ea15eb61bbc42b16fbeb218d552a0463e6eea23cadd067aaa656e07cdf3aaf5f5f2
7
- data.tar.gz: a71a53218c7ea5d93fe8150cb3667e9037f276bca3ac9c73bb232093e76d884b972803793d255d67e85ea1896227785ccf28c6bb5acc8baa2e1403ea3338c7f7
6
+ metadata.gz: 577612284345aea4de48577b3d01c462326605e0b16531947fea2366c0ec5e4e43eac8a1687ed6942db07d559a992e29b41195d89e20e24f39d4e03a0ff84a3a
7
+ data.tar.gz: ef247ad391ecc75e53f322f9a8fb659a26eb2de46f4cbd50354428a146a35028beccdf70687c043d1818cc1a578664b4bb45b7fdd99171634854ce59ef273840
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![Build Status](https://travis-ci.org/kbredemeier/elastic_adatper.svg?branch=master)](https://travis-ci.org/kbredemeier/elastic_adatper) [![Code Climate](https://codeclimate.com/github/kbredemeier/elastic_adatper/badges/gpa.svg)](https://codeclimate.com/github/kbredemeier/elastic_adatper)
1
+ [![Build Status](https://travis-ci.org/kbredemeier/elastic_adapter.svg?branch=master)](https://travis-ci.org/kbredemeier/elastic_adatper) [![Code Climate](https://codeclimate.com/github/kbredemeier/elastic_adatper/badges/gpa.svg)](https://codeclimate.com/github/kbredemeier/elastic_adatper)
2
2
 
3
3
  # ElasticAdapter
4
4
 
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = ["k.bredemeier@gmail.com"]
11
11
  spec.summary = %q{Repository like access to elasticseach indices}
12
12
  spec.description = %q{Repository like access to elasticseach indices}
13
- spec.homepage = "https://github.com/kbredemeier/elastic_adatper"
13
+ spec.homepage = "https://github.com/kbredemeier/elastic_adapter"
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files -z`.split("\x0")
@@ -0,0 +1,34 @@
1
+ module ElasticAdapter
2
+ module Decoration
3
+ # Used to decorate responses from the elasticsearch search api
4
+ #
5
+ # @attr_reader [Hash] aggregations
6
+ class AggregationResponse < Decorator
7
+ attr_reader :aggregations
8
+
9
+ # Reduces the interface
10
+ #
11
+ # @param [Hash] hash
12
+ # @return [Hash]
13
+ def alter_object(hash)
14
+ new_hash = {}
15
+ new_hash[:aggregations] = {}
16
+
17
+ hash[:aggregations].each do |key, value|
18
+ new_hash[:aggregations][key] = []
19
+
20
+ value[:buckets].each do |agg|
21
+ new_hash[:aggregations][key] << {
22
+ term: agg[:key],
23
+ count: agg[:doc_count]
24
+ }
25
+ end
26
+ end
27
+
28
+ @aggregations = new_hash[:aggregations]
29
+
30
+ new_hash
31
+ end
32
+ end
33
+ end
34
+ end
@@ -6,23 +6,21 @@ module ElasticAdapter
6
6
  # @see Response#decorate
7
7
  class ResponseDecoratorFactory
8
8
  class << self
9
- # Takes a response and returns it with the right decorator
10
- # applied
9
+ # Takes a response and multiple symbols and decorated response.
11
10
  #
12
11
  # @param [Hash] response a response returned by elasticsearch
12
+ # @param [Array<Symbol>] args the decorators the response should be decorated with.
13
+ # Currently valid args are :count, :hit, :search, :validation, :suggestion
13
14
  # @return [Docorator] a decorated response
14
- def decorate(response)
15
- if response.key? :count
16
- return CountResponse.new(response)
17
- elsif response.key? :source
18
- return HitDecorator.new(response)
19
- elsif response.key? :hits
20
- return SearchResponse.new(response)
21
- elsif response.key? :valid
22
- return ValidationResponse.new(response)
23
- elsif suggestion?(response)
24
- return SuggestionResponse.new(response)
25
- end
15
+ def decorate(plain_response, *args)
16
+ response = Response.new(plain_response)
17
+
18
+ response = CountResponse.new(response) if args.include? :count
19
+ response = HitDecorator.new(response) if args.include? :hit
20
+ response = SearchResponse.new(response) if args.include? :search
21
+ response = ValidationResponse.new(response) if args.include? :validation
22
+ response = SuggestionResponse.new(response) if args.include? :suggestion
23
+ response = AggregationResponse.new(response) if args.include? :aggregation
26
24
 
27
25
  response
28
26
  end
@@ -85,7 +85,7 @@ module ElasticAdapter
85
85
  # @param [Hash] query a query to count the documents for a given query. Defaults to match all
86
86
  # @return [Decoration::CountResponse] the count
87
87
  def count(query = { query: { match_all: {} } })
88
- handle_api_call do
88
+ handle_api_call :count do
89
89
  client.count index: name, body: query
90
90
  end
91
91
  end
@@ -125,7 +125,7 @@ module ElasticAdapter
125
125
  # @param [Integer] id
126
126
  # @return [ElasticAdapter::HitDecorator]
127
127
  def get(id)
128
- handle_api_call do
128
+ handle_api_call :hit do
129
129
  client.get(
130
130
  index: name,
131
131
  type: document_type.name,
@@ -145,7 +145,7 @@ module ElasticAdapter
145
145
  # @param [Hash] query
146
146
  # @return [ElasticAdapter::SearchResponse]
147
147
  def search(query)
148
- handle_api_call do
148
+ handle_api_call :search do
149
149
  client.search(
150
150
  index: name,
151
151
  body: query
@@ -164,7 +164,7 @@ module ElasticAdapter
164
164
  # @param [Hash] query
165
165
  # @return [ElasticAdapter::SuggestResponse]
166
166
  def suggest(query)
167
- handle_api_call do
167
+ handle_api_call :suggestion do
168
168
  client.suggest(
169
169
  index: name,
170
170
  body: query
@@ -179,7 +179,7 @@ module ElasticAdapter
179
179
  # @param [Hash] query
180
180
  # @return [ElasticAdapter::ValidationResponse]
181
181
  def validate(query)
182
- handle_api_call do
182
+ handle_api_call :validation do
183
183
  client.indices.validate_query(
184
184
  index: name,
185
185
  explain: true,
@@ -188,10 +188,23 @@ module ElasticAdapter
188
188
  end
189
189
  end
190
190
 
191
+ # Executes a search request and wraps the response in an AggregationResponse
192
+ #
193
+ # @param [Hash] query
194
+ # @return [ElasticAdapter::Decoration::AggregationResponse]
195
+ def aggregate(query)
196
+ handle_api_call :aggregation do
197
+ client.search(
198
+ index: name,
199
+ body: query
200
+ )
201
+ end
202
+ end
203
+
191
204
  private
192
205
 
193
- def handle_api_call
194
- Response.new(yield).decorate
206
+ def handle_api_call(*args)
207
+ Decoration::ResponseDecoratorFactory.decorate(yield, *args)
195
208
  rescue Elasticsearch::Transport::Transport::Error => e
196
209
  Response.new(
197
210
  exception: e
@@ -15,13 +15,6 @@ module ElasticAdapter
15
15
  key?(:exception)
16
16
  end
17
17
 
18
- # Decorates the response with the right decorator
19
- #
20
- # @return [Decorator] returns the decorated response
21
- def decorate
22
- Decoration::ResponseDecoratorFactory.decorate(self)
23
- end
24
-
25
18
  private
26
19
 
27
20
  # Sanitizes a nested hash. It removes leading underscores
@@ -1,3 +1,3 @@
1
1
  module ElasticAdapter
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -8,6 +8,7 @@ require "elastic_adapter/decoration/count_response"
8
8
  require "elastic_adapter/decoration/validation_response"
9
9
  require "elastic_adapter/decoration/suggestion_response"
10
10
  require "elastic_adapter/decoration/search_response"
11
+ require "elastic_adapter/decoration/aggregation_response"
11
12
  require "elastic_adapter/decoration/response_decorator_factory"
12
13
  require "elastic_adapter/response"
13
14
  require "elastic_adapter/index"
@@ -0,0 +1,30 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://localhost:9200/test_index/_search
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"aggs":{"group":{"terms":{"field":"group"}}}}'
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.1
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Content-Type:
22
+ - application/json; charset=UTF-8
23
+ Content-Length:
24
+ - '483'
25
+ body:
26
+ encoding: UTF-8
27
+ string: '{"took":7,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":2,"max_score":1.0,"hits":[{"_index":"test_index","_type":"test_doc","_id":"AUv-oTm7Ngm7ooYjXOfD","_score":1.0,"_source":{"foo":"bar","group":"A"}},{"_index":"test_index","_type":"test_doc","_id":"AUv-n2n-Ngm7ooYjXOVX","_score":1.0,"_source":{"foo":"bar","group":"A"}}]},"aggregations":{"group":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":[{"key":"a","doc_count":2}]}}}'
28
+ http_version:
29
+ recorded_at: Mon, 09 Mar 2015 13:02:38 GMT
30
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,84 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: put
5
+ uri: http://localhost:9200/test_index
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"mappings":{"test_doc":{"properties":{"foo":{"type":"string"},"foo_suggest":{"type":"completion"}}}},"settings":{}}'
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.1
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ response:
17
+ status:
18
+ code: 400
19
+ message: Bad Request
20
+ headers:
21
+ Content-Type:
22
+ - application/json; charset=UTF-8
23
+ Content-Length:
24
+ - '81'
25
+ body:
26
+ encoding: UTF-8
27
+ string: '{"error":"IndexAlreadyExistsException[[test_index] already exists]","status":400}'
28
+ http_version:
29
+ recorded_at: Mon, 09 Mar 2015 13:02:33 GMT
30
+ - request:
31
+ method: post
32
+ uri: http://localhost:9200/test_index/test_doc
33
+ body:
34
+ encoding: UTF-8
35
+ string: '{"foo":"bar","group":"A"}'
36
+ headers:
37
+ User-Agent:
38
+ - Faraday v0.9.1
39
+ Accept-Encoding:
40
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
41
+ Accept:
42
+ - "*/*"
43
+ response:
44
+ status:
45
+ code: 201
46
+ message: Created
47
+ headers:
48
+ Content-Type:
49
+ - application/json; charset=UTF-8
50
+ Content-Length:
51
+ - '99'
52
+ body:
53
+ encoding: UTF-8
54
+ string: '{"_index":"test_index","_type":"test_doc","_id":"AUv-oTm7Ngm7ooYjXOfD","_version":1,"created":true}'
55
+ http_version:
56
+ recorded_at: Mon, 09 Mar 2015 13:02:33 GMT
57
+ - request:
58
+ method: delete
59
+ uri: http://localhost:9200/test_index
60
+ body:
61
+ encoding: US-ASCII
62
+ string: ''
63
+ headers:
64
+ User-Agent:
65
+ - Faraday v0.9.1
66
+ Accept-Encoding:
67
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
68
+ Accept:
69
+ - "*/*"
70
+ response:
71
+ status:
72
+ code: 200
73
+ message: OK
74
+ headers:
75
+ Content-Type:
76
+ - application/json; charset=UTF-8
77
+ Content-Length:
78
+ - '21'
79
+ body:
80
+ encoding: UTF-8
81
+ string: '{"acknowledged":true}'
82
+ http_version:
83
+ recorded_at: Mon, 09 Mar 2015 13:23:53 GMT
84
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,58 @@
1
+ require "spec_helper"
2
+
3
+ module ElasticAdapter
4
+ module Decoration
5
+ describe AggregationResponse do
6
+ let(:response){{
7
+ aggregations: {
8
+ products: {
9
+ doc_count_error_upper_bound: 46,
10
+ buckets: [
11
+ {
12
+ key: "Product A",
13
+ doc_count: 100
14
+ },
15
+ {
16
+ key: "Product Z",
17
+ doc_count: 52
18
+ }
19
+ ]
20
+ }
21
+ }
22
+ }}
23
+
24
+ subject { AggregationResponse.new(response) }
25
+
26
+ describe "#aggregations" do
27
+ it "counts one" do
28
+ expect(subject.aggregations.count).to eq 1
29
+ end
30
+
31
+ it "contains products" do
32
+ expect(subject.aggregations).to have_key :products
33
+ end
34
+
35
+ describe "products" do
36
+ it "counts two" do
37
+ expect(subject.aggregations[:products].count).to eq 2
38
+ end
39
+
40
+ it "contains Product A with it's count" do
41
+ expect(subject.aggregations[:products]).to include({
42
+ term: "Product A",
43
+ count: 100
44
+ })
45
+ end
46
+
47
+ it "contains Product Z with it's count" do
48
+ expect(subject.aggregations[:products]).to include({
49
+ term: "Product Z",
50
+ count: 52
51
+ })
52
+ end
53
+ end
54
+ end
55
+
56
+ end
57
+ end
58
+ end
@@ -5,69 +5,72 @@ module ElasticAdapter
5
5
  describe ResponseDecoratorFactory do
6
6
  describe "class methods" do
7
7
  describe "#decorate" do
8
- context "response with exception" do
9
- let(:response) {{ exception: ArgumentError.new }}
10
- let(:subject) { ResponseDecoratorFactory.decorate(response)}
11
-
12
- it "returns the unmodified response" do
13
- expect(subject).to be response
14
- end
15
- end
16
-
17
- context "response with acknowledged" do
8
+ context "count" do
18
9
  let(:response) {{ acknowledged: true }}
19
- let(:subject) { ResponseDecoratorFactory.decorate(response)}
10
+ subject { ResponseDecoratorFactory.decorate(response, :count) }
20
11
 
21
- it "returns the unmodified response" do
22
- expect(subject).to be response
12
+ it "returns a CountResponse" do
13
+ expect(subject).to be_a CountResponse
23
14
  end
24
15
  end
25
16
 
26
- context "response with source" do
17
+ context "hit" do
27
18
  let(:response) {{ source: {} }}
28
- let(:subject) { ResponseDecoratorFactory.decorate(response)}
19
+ subject { ResponseDecoratorFactory.decorate(response, :hit) }
29
20
 
30
21
  it "returns a HitDecorator" do
31
22
  expect(subject).to be_a HitDecorator
32
23
  end
33
24
  end
34
25
 
35
- context "response with hits" do
26
+ context "search" do
36
27
  let(:response) {{ hits: {hits: []} }}
37
- let(:subject) { ResponseDecoratorFactory.decorate(response)}
28
+ subject { ResponseDecoratorFactory.decorate(response, :search) }
38
29
 
39
30
  it "returns a SearchResponse" do
40
31
  expect(subject).to be_a SearchResponse
41
32
  end
42
33
  end
43
34
 
44
- context "response with count" do
45
- let(:response) {{ count: {count: 1} }}
46
- let(:subject) { ResponseDecoratorFactory.decorate(response)}
35
+ context "validation" do
36
+ let(:response) {{ valid: true }}
37
+ subject { ResponseDecoratorFactory.decorate(response, :validation) }
47
38
 
48
- it "returns a CountResponse" do
49
- expect(subject).to be_a CountResponse
39
+ it "returns a ValidationResponse" do
40
+ expect(subject).to be_a ValidationResponse
50
41
  end
51
42
  end
52
43
 
53
- context "response with options" do
44
+ context "suggestion" do
54
45
  let(:response) {{ foo: "bar", foo_suggestion: [{options: []}] }}
55
- let(:subject) { ResponseDecoratorFactory.decorate(response)}
46
+ subject { ResponseDecoratorFactory.decorate(response, :suggestion) }
56
47
 
57
48
  it "returns a SuggestionResponse" do
58
49
  expect(subject).to be_a SuggestionResponse
59
50
  end
60
51
  end
61
52
 
62
- context "response with everything_else" do
63
- let(:response) {{ everything_else: {} }}
64
- let(:subject) { ResponseDecoratorFactory.decorate(response)}
53
+ context "aggregation" do
54
+ let(:response){{
55
+ aggregations: {
56
+ products: {
57
+ doc_count_error_upper_bound: 46,
58
+ buckets: [
59
+ {
60
+ key: "Product A",
61
+ doc_count: 100
62
+ }
63
+ ]
64
+ }
65
+ }
66
+ }}
65
67
 
66
- it "returns a Response" do
67
- expect(subject).to be_a Hash
68
+ subject { ResponseDecoratorFactory.decorate(response, :aggregation) }
69
+
70
+ it "returns a AggregationResponse" do
71
+ expect(subject).to be_a AggregationResponse
68
72
  end
69
73
  end
70
-
71
74
  end
72
75
  end
73
76
  end
@@ -0,0 +1,34 @@
1
+ require_relative "./shared_context.rb"
2
+
3
+ module ElasticAdapter
4
+ describe Index do
5
+ include_context "index context"
6
+
7
+ describe "#aggregate", :vcr do
8
+ before :all do
9
+ create_test_index
10
+ index_documents foo: "bar", group: "A"
11
+ index_documents foo: "baz", group: "A"
12
+ index_documents foo: "boo", group: "B"
13
+ end
14
+
15
+ after :all do
16
+ delete_test_index
17
+ end
18
+
19
+ describe "response" do
20
+ let(:query) {{
21
+ aggs: {
22
+ group: {
23
+ terms: { field: "group" }
24
+ }
25
+ }
26
+ }}
27
+
28
+ it "is a AggregationResponse" do
29
+ expect(subject.aggregate(query)).to be_a Decoration::AggregationResponse
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -32,6 +32,13 @@ module ElasticAdapter
32
32
  response = Response.new(hash)
33
33
  expect(response.object).to eq expected
34
34
  end
35
+
36
+ it "works with arrays" do
37
+ hash = { "foo" => ["bar", "buz"] }
38
+ expected = { foo: ["bar", "buz"] }
39
+ response = Response.new(hash)
40
+ expect(response.object).to eq expected
41
+ end
35
42
  end
36
43
 
37
44
  describe "#failure?" do
@@ -53,28 +60,5 @@ module ElasticAdapter
53
60
  end
54
61
  end
55
62
  end
56
-
57
- describe "#decorate" do
58
- context "find request" do
59
- let(:document) { {foo: "bar", id: 1} }
60
- let(:response_hash) do
61
- {
62
- "found" => true,
63
- "_id" => 1,
64
- "_source" => {
65
- "foo" => "bar"
66
- }
67
- }
68
- end
69
-
70
- let(:response) do
71
- response = Response.new(response_hash)
72
- end
73
-
74
- it "is the document" do
75
- expect(response.decorate.to_hash).to eq document
76
- end
77
- end
78
- end
79
63
  end
80
64
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elastic_adapter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kristopher Bredemeier
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-26 00:00:00.000000000 Z
11
+ date: 2015-03-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: elasticsearch
@@ -154,9 +154,9 @@ files:
154
154
  - README.md
155
155
  - Rakefile
156
156
  - elastic_adapter.gemspec
157
- - example.env
158
157
  - examples/basic_usage.rb
159
158
  - lib/elastic_adapter.rb
159
+ - lib/elastic_adapter/decoration/aggregation_response.rb
160
160
  - lib/elastic_adapter/decoration/count_response.rb
161
161
  - lib/elastic_adapter/decoration/decorator.rb
162
162
  - lib/elastic_adapter/decoration/hit_decorator.rb
@@ -168,6 +168,8 @@ files:
168
168
  - lib/elastic_adapter/index.rb
169
169
  - lib/elastic_adapter/response.rb
170
170
  - lib/elastic_adapter/version.rb
171
+ - spec/cassettes/ElasticAdapter_Index/_aggregate.yml
172
+ - spec/cassettes/ElasticAdapter_Index/_aggregate/response/is_a_AggregationResponse.yml
171
173
  - spec/cassettes/ElasticAdapter_Index/_count/empty_index.yml
172
174
  - spec/cassettes/ElasticAdapter_Index/_count/empty_index/is_a_response.yml
173
175
  - spec/cassettes/ElasticAdapter_Index/_count/empty_index/returns_the_amount_of_all_documents.yml
@@ -207,9 +209,11 @@ files:
207
209
  - spec/cassettes/ElasticAdapter_Index/_validate/invalid_query/is_false.yml
208
210
  - spec/cassettes/ElasticAdapter_Index/_validate/valid_query/is_a_response.yml
209
211
  - spec/cassettes/ElasticAdapter_Index/_validate/valid_query/is_true.yml
212
+ - spec/decoration/aggregation_response_spec.rb
210
213
  - spec/decoration/response_decorator_factory_spec.rb
211
214
  - spec/document_type_spec.rb
212
215
  - spec/elastic_adapter_spec.rb
216
+ - spec/index/aggregation_spec.rb
213
217
  - spec/index/count_spec.rb
214
218
  - spec/index/create_index_spec.rb
215
219
  - spec/index/delete_index_spec.rb
@@ -224,7 +228,7 @@ files:
224
228
  - spec/response_spec.rb
225
229
  - spec/spec_helper.rb
226
230
  - spec/support/index_helper.rb
227
- homepage: https://github.com/kbredemeier/elastic_adatper
231
+ homepage: https://github.com/kbredemeier/elastic_adapter
228
232
  licenses:
229
233
  - MIT
230
234
  metadata: {}
@@ -249,6 +253,8 @@ signing_key:
249
253
  specification_version: 4
250
254
  summary: Repository like access to elasticseach indices
251
255
  test_files:
256
+ - spec/cassettes/ElasticAdapter_Index/_aggregate.yml
257
+ - spec/cassettes/ElasticAdapter_Index/_aggregate/response/is_a_AggregationResponse.yml
252
258
  - spec/cassettes/ElasticAdapter_Index/_count/empty_index.yml
253
259
  - spec/cassettes/ElasticAdapter_Index/_count/empty_index/is_a_response.yml
254
260
  - spec/cassettes/ElasticAdapter_Index/_count/empty_index/returns_the_amount_of_all_documents.yml
@@ -288,9 +294,11 @@ test_files:
288
294
  - spec/cassettes/ElasticAdapter_Index/_validate/invalid_query/is_false.yml
289
295
  - spec/cassettes/ElasticAdapter_Index/_validate/valid_query/is_a_response.yml
290
296
  - spec/cassettes/ElasticAdapter_Index/_validate/valid_query/is_true.yml
297
+ - spec/decoration/aggregation_response_spec.rb
291
298
  - spec/decoration/response_decorator_factory_spec.rb
292
299
  - spec/document_type_spec.rb
293
300
  - spec/elastic_adapter_spec.rb
301
+ - spec/index/aggregation_spec.rb
294
302
  - spec/index/count_spec.rb
295
303
  - spec/index/create_index_spec.rb
296
304
  - spec/index/delete_index_spec.rb
data/example.env DELETED
@@ -1,4 +0,0 @@
1
- TEST_CLUSTER_NAME="elastic_adatper_test_cluster"
2
- TEST_CLUSTER_COMMAND="sh /path/to/elasticsearch"
3
- TEST_CLUSTER_PORT=9350
4
- TEST_CLUSTER_NODES=1