elastic_record 1.1.8 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +4 -1
  3. data/Gemfile +3 -1
  4. data/elastic_record.gemspec +1 -1
  5. data/lib/elastic_record/callbacks.rb +2 -0
  6. data/lib/elastic_record/connection.rb +5 -9
  7. data/lib/elastic_record/index/mapping.rb +2 -2
  8. data/lib/elastic_record/model.rb +1 -1
  9. data/lib/elastic_record/relation/search_methods.rb +0 -9
  10. data/lib/elastic_record/relation/value_methods.rb +1 -1
  11. data/lib/elastic_record/relation.rb +7 -26
  12. data/lib/elastic_record.rb +0 -1
  13. data/test/elastic_record/config_test.rb +1 -1
  14. data/test/elastic_record/connection_test.rb +2 -2
  15. data/test/elastic_record/index/mapping_test.rb +11 -1
  16. data/test/elastic_record/integration/active_record_test.rb +62 -25
  17. data/test/elastic_record/relation_test.rb +0 -47
  18. data/test/helper.rb +1 -7
  19. data/test/support/models/test_model.rb +1 -19
  20. data/test/support/models/warehouse.rb +0 -1
  21. data/test/support/models/widget.rb +0 -2
  22. metadata +11 -24
  23. data/lib/elastic_record/searches_many/association.rb +0 -149
  24. data/lib/elastic_record/searches_many/autosave.rb +0 -72
  25. data/lib/elastic_record/searches_many/builder.rb +0 -42
  26. data/lib/elastic_record/searches_many/collection_proxy.rb +0 -26
  27. data/lib/elastic_record/searches_many/reflection.rb +0 -45
  28. data/lib/elastic_record/searches_many.rb +0 -100
  29. data/test/elastic_record/searches_many/association_test.rb +0 -47
  30. data/test/elastic_record/searches_many/autosave_test.rb +0 -32
  31. data/test/elastic_record/searches_many/collection_proxy_test.rb +0 -23
  32. data/test/elastic_record/searches_many/reflection_test.rb +0 -33
  33. data/test/elastic_record/searches_many_test.rb +0 -76
  34. data/test/support/models/option.rb +0 -24
  35. data/test/support/query_counter.rb +0 -56
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 51cb1409dc9723d93f90460254076361b76d06d9
4
- data.tar.gz: 04cc38fec1620e2f2858758d8a8b6c9c34fd619d
3
+ metadata.gz: 87cc4a4cf72e33d968d2d7ffaa9a28eab62e3bfb
4
+ data.tar.gz: ca646f6157b72b51cd77c0886c71bc935418e456
5
5
  SHA512:
6
- metadata.gz: fe950144e596ed58fbd5cd3944d4a25868ddae217e84ed61bcd319a259a63eab201ca2d3e19caee798c609dbf21277ff149fb56368ab7289636d9228e38570a3
7
- data.tar.gz: 4908924df6ed4e420dd9dbba400b9155f2557020d8e91b24a549c16b07afd78bf1685942f6cf00bca3e83eb7996a7c5278687541a6ea5d281a9ebd75ece210ca
6
+ metadata.gz: d64bd38ead974d0e42b65b1fa472779661f0a48f3e9c7aea831228f87655cf1c3e63f1b1277fc69df3c806cd5ca6c5491debba14029c64e99d125c5a0887d1ea
7
+ data.tar.gz: bed6b22da214f2aadccb6f01a7a39afe02ce3faf8bd0da29348d03562f9769b5daff9b0e7b95f69f875338467fe7617e8ae2d4132efeeb651ee6ab24d32bf855
data/.travis.yml CHANGED
@@ -1,4 +1,7 @@
1
1
  services:
2
2
  - elasticsearch
3
3
  rvm:
4
- - 2.0.0
4
+ - 2.0.0
5
+ env:
6
+ - "GEM=ar:mysql2"
7
+ - "GEM=ar:postgresql"
data/Gemfile CHANGED
@@ -3,6 +3,8 @@ source 'https://rubygems.org'
3
3
  gemspec
4
4
 
5
5
  gem 'activerecord'
6
- gem 'mysql2'
7
6
  gem 'fakeweb'
8
7
  gem 'rake'
8
+
9
+ gem 'mysql2'
10
+ gem 'pg'
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'elastic_record'
5
- s.version = '1.1.8'
5
+ s.version = '1.2.1'
6
6
  s.summary = 'Use Elastic Search with your objects'
7
7
  s.description = 'Find your records with elastic search'
8
8
 
@@ -1,6 +1,8 @@
1
1
  module ElasticRecord
2
2
  module Callbacks
3
3
  def self.included(base)
4
+ return unless base.respond_to?(:after_save) && base.respond_to?(:after_destroy)
5
+
4
6
  base.class_eval do
5
7
  after_save if: :changed? do
6
8
  self.class.elastic_index.index_record self
@@ -7,11 +7,7 @@ module ElasticRecord
7
7
  attr_accessor :max_request_count
8
8
  attr_accessor :bulk_stack
9
9
  def initialize(servers, options = {})
10
- if servers.is_a?(Array)
11
- self.servers = servers
12
- else
13
- self.servers = servers.split(',')
14
- end
10
+ self.servers = Array(servers)
15
11
 
16
12
  self.current_server = next_server
17
13
  self.request_count = 0
@@ -51,10 +47,10 @@ module ElasticRecord
51
47
  end
52
48
 
53
49
  METHODS = {
54
- head: Net::HTTP::Head,
55
- get: Net::HTTP::Get,
56
- post: Net::HTTP::Post,
57
- put: Net::HTTP::Put,
50
+ head: Net::HTTP::Head,
51
+ get: Net::HTTP::Get,
52
+ post: Net::HTTP::Post,
53
+ put: Net::HTTP::Put,
58
54
  delete: Net::HTTP::Delete
59
55
  }
60
56
 
@@ -1,8 +1,8 @@
1
1
  module ElasticRecord
2
2
  class Index
3
3
  module Mapping
4
- def mapping=(mapping)
5
- mapping.deep_merge!(mapping)
4
+ def mapping=(custom_mapping)
5
+ mapping.deep_merge!(custom_mapping)
6
6
  end
7
7
 
8
8
  def update_mapping(index_name = alias_name)
@@ -4,7 +4,7 @@ module ElasticRecord
4
4
  base.class_eval do
5
5
  extend Searching
6
6
  extend ClassMethods
7
- include SearchesMany
7
+ include Callbacks
8
8
 
9
9
  class_attribute :elastic_connection
10
10
  self.elastic_connection = ElasticRecord::Connection.new(ElasticRecord::Config.servers, ElasticRecord::Config.connection_options)
@@ -47,15 +47,6 @@ module ElasticRecord
47
47
  filter(*args).first!
48
48
  end
49
49
 
50
- def eager_load!(*args)
51
- self.eager_load_values += args.flatten
52
- self
53
- end
54
-
55
- def eager_load(*args)
56
- clone.eager_load! *args
57
- end
58
-
59
50
  def limit!(value)
60
51
  self.limit_value = value
61
52
  self
@@ -1,6 +1,6 @@
1
1
  module ElasticRecord
2
2
  class Relation
3
- MULTI_VALUE_METHODS = [:extending, :facet, :filter, :order, :select, :eager_load]
3
+ MULTI_VALUE_METHODS = [:extending, :facet, :filter, :order, :select]
4
4
  SINGLE_VALUE_METHODS = [:query, :limit, :offset, :reverse_order]
5
5
  end
6
6
  end
@@ -35,16 +35,8 @@ module ElasticRecord
35
35
  reset
36
36
  end
37
37
 
38
- def eager_loading?
39
- @should_eager_load ||= eager_load_values.any?
40
- end
41
-
42
38
  def to_a
43
- @records ||= begin
44
- records = load_hits(to_ids)
45
- eager_load_associations(records) if eager_loading?
46
- records
47
- end
39
+ @records ||= load_hits(to_ids)
48
40
  end
49
41
 
50
42
  def to_ids
@@ -69,7 +61,6 @@ module ElasticRecord
69
61
  private
70
62
  def reset
71
63
  @search_results = @records = nil
72
- @should_eager_load = nil
73
64
  end
74
65
 
75
66
  def search_hits
@@ -83,24 +74,14 @@ module ElasticRecord
83
74
  def load_hits(ids)
84
75
  scope = select_values.any? ? klass.select(select_values) : klass
85
76
  if defined?(ActiveRecord::Base) && klass < ActiveRecord::Base
86
- scope = scope.order("FIELD(#{connection.quote_column_name(primary_key)}, #{ids.join(',')})")
87
- end
88
- scope.find(ids)
89
- end
90
-
91
- def eager_load_associations(records)
92
- records = records.reject(&:marked_for_destruction?)
93
- ids = records.map(&:id)
94
- eager_load_values.each do |to_load|
95
- reflection = klass.searches_many_reflections[to_load] ||(raise "searches_many #{to_load} does not exist on #{klass}")
96
- foreign_key = reflection.foreign_key.to_sym
97
- grouped_children = reflection.klass.elastic_search.filter(foreign_key => ids).limit(1000000).group_by(&foreign_key)
98
- records.each do |record|
99
- children = grouped_children.fetch(record.id, [])
100
- record.send(to_load).eager_loaded(children)
77
+ case klass.connection.adapter_name
78
+ when /Mysql/
79
+ scope = scope.order("FIELD(#{connection.quote_column_name(primary_key)}, #{ids.join(',')})")
80
+ when /Pos/
81
+ scope = scope.order(ids.map { |id| "ID=#{connection.quote(id)} DESC" }.join(','))
101
82
  end
102
83
  end
103
- records
84
+ scope.find(ids)
104
85
  end
105
86
  end
106
87
  end
@@ -11,7 +11,6 @@ module ElasticRecord
11
11
  autoload :Lucene, 'elastic_record/lucene'
12
12
  autoload :Model, 'elastic_record/model'
13
13
  autoload :Relation, 'elastic_record/relation'
14
- autoload :SearchesMany, 'elastic_record/searches_many'
15
14
  autoload :Searching, 'elastic_record/searching'
16
15
 
17
16
  class << self
@@ -8,6 +8,6 @@ class ElasticRecord::ConfigTest < MiniTest::Unit::TestCase
8
8
  def test_models
9
9
  ElasticRecord::Config.model_names = %w(Widget)
10
10
 
11
- assert_equal [Warehouse, Widget, Option], ElasticRecord::Config.models
11
+ assert_equal [Warehouse, Widget], ElasticRecord::Config.models
12
12
  end
13
13
  end
@@ -2,7 +2,7 @@ require 'helper'
2
2
 
3
3
  class ElasticRecord::ConnectionTest < MiniTest::Unit::TestCase
4
4
  def test_servers
5
- assert_equal ['foo', 'bar'], ElasticRecord::Connection.new('foo,bar').servers
5
+ assert_equal ['foo'], ElasticRecord::Connection.new('foo').servers
6
6
  assert_equal ['foo', 'bar'], ElasticRecord::Connection.new(['foo', 'bar']).servers
7
7
  end
8
8
 
@@ -43,7 +43,7 @@ class ElasticRecord::ConnectionTest < MiniTest::Unit::TestCase
43
43
 
44
44
  ElasticRecord::Connection.new(ElasticRecord::Config.servers, retries: 0).tap do |connection|
45
45
  FakeWeb.register_uri :get, %r[/error], responses
46
- assert_raises(Errno::ECONNREFUSED) { connection.json_get("/error") }
46
+ assert_raises(Errno::ECONNREFUSED) { connection.json_get("/error") }
47
47
  end
48
48
 
49
49
  ElasticRecord::Connection.new(ElasticRecord::Config.servers, retries: 1).tap do |connection|
@@ -6,7 +6,7 @@ class ElasticRecord::Index::MappingTest < MiniTest::Unit::TestCase
6
6
  index.get_mapping(index_name)
7
7
 
8
8
  index.delete_mapping(index_name)
9
-
9
+
10
10
  assert_raises ElasticRecord::ConnectionError do
11
11
  index.get_mapping(index_name)
12
12
  end
@@ -19,6 +19,16 @@ class ElasticRecord::Index::MappingTest < MiniTest::Unit::TestCase
19
19
  refute_nil mapping[:properties]
20
20
  end
21
21
 
22
+ def test_merge_mapping
23
+ index.mapping.clear
24
+ index.mapping[:properties] = {color: {type: 'string'}}
25
+
26
+ custom = {properties: {color: {type: 'integer'}}, other: 'stuff'}
27
+ index.mapping = custom
28
+
29
+ assert_equal custom, index.mapping
30
+ end
31
+
22
32
  private
23
33
  def index
24
34
  @index ||= ElasticRecord::Index.new(Widget)
@@ -1,45 +1,82 @@
1
1
  require 'helper'
2
2
 
3
3
  require 'active_record'
4
- require 'mysql2'
5
-
6
- ActiveSupport.on_load :active_record do
7
- ActiveRecord::Base.establish_connection(
8
- adapter: 'mysql2',
9
- host: "localhost",
10
- database: "elastic_record_test",
11
- username: "root"
12
- )
13
4
 
14
- `mysqladmin -u root -f drop elastic_record_test`
15
- `mysqladmin -u root create elastic_record_test`
16
-
17
- ActiveRecord::Migration.create_table :projects do |t|
18
- t.string :name, null: false
19
- end
20
- end
5
+ require 'mysql2'
6
+ require 'pg'
21
7
 
22
8
  class Project < ActiveRecord::Base
23
9
  include ElasticRecord::Model
24
- include ElasticRecord::Callbacks
25
10
 
26
11
  self.elastic_index.mapping[:properties].update(
27
12
  name: { type: 'string', index: 'not_analyzed' }
28
13
  )
29
14
  end
30
15
 
31
- class ElasticRecord::ActiveRecordTest < MiniTest::Unit::TestCase
16
+ module ElasticRecord
17
+ module ActiveRecordIntegration
18
+ def setup_project_database(config)
19
+ ActiveRecord::Tasks::DatabaseTasks.drop config
20
+ ActiveRecord::Tasks::DatabaseTasks.create config
21
+ ActiveRecord::Base.establish_connection config
22
+
23
+ quietly do
24
+ ActiveRecord::Migration.create_table :projects do |t|
25
+ t.string :name, null: false
26
+ end
27
+ end
28
+
29
+ Project.elastic_index.create_and_deploy if Project.elastic_index.all_names.empty?
30
+ end
31
+
32
+ def test_ordering
33
+ poo_product = Project.create! name: "Poo"
34
+ bear_product = Project.create! name: "Bear"
35
+ Project.elastic_index.refresh
36
+
37
+ assert_equal [bear_product, poo_product], Project.elastic_relation.order(name: 'asc')
38
+ assert_equal [poo_product, bear_product], Project.elastic_relation.order(name: 'desc')
39
+ end
40
+
41
+ def test_update_callback
42
+ project = Project.create! name: "Ideas"
43
+ Project.elastic_index.refresh
44
+ project.update! name: 'Terrible Stuff'
45
+ Project.elastic_index.refresh
46
+
47
+ assert_equal [project], Project.elastic_relation.filter(name: 'Terrible Stuff')
48
+ end
49
+ end
50
+ end
51
+
52
+ class ElasticRecord::Mysql2Test < MiniTest::Unit::TestCase
53
+ include ElasticRecord::ActiveRecordIntegration
54
+
32
55
  def setup
33
56
  super
34
- Project.elastic_index.create_and_deploy if Project.elastic_index.all_names.empty?
57
+
58
+ setup_project_database(
59
+ 'adapter' => 'mysql2',
60
+ 'host' => "localhost",
61
+ 'database' => 'elastic_record_test',
62
+ 'username' => 'root'
63
+ )
35
64
  end
65
+ end
66
+
67
+ class ElasticRecord::PostgresqlTest < MiniTest::Unit::TestCase
68
+ include ElasticRecord::ActiveRecordIntegration
36
69
 
37
- def test_ordering
38
- poo_product = Project.create! name: "Poo"
39
- bear_product = Project.create! name: "Bear"
40
- Project.elastic_index.refresh
70
+ def setup
71
+ super
41
72
 
42
- assert_equal [bear_product, poo_product], Project.elastic_relation.order(name: 'asc')
43
- assert_equal [poo_product, bear_product], Project.elastic_relation.order(name: 'desc')
73
+ setup_project_database(
74
+ 'adapter' => 'postgresql',
75
+ 'encoding' => 'unicode',
76
+ 'database' => 'content_system_development',
77
+ 'pool' => 5,
78
+ 'username' => 'postgres',
79
+ 'password' => ''
80
+ )
44
81
  end
45
82
  end
@@ -25,53 +25,6 @@ class ElasticRecord::RelationTest < MiniTest::Unit::TestCase
25
25
  # assert Widget.elastic_relation.search_results.is_a?(ElasticSearch::Api::Hits)
26
26
  end
27
27
 
28
- def test_eager_loading?
29
- assert Widget.elastic_relation.eager_load(:options).eager_loading?
30
- end
31
-
32
- def test_eager_loading_is_not_default
33
- assert !Widget.elastic_relation.eager_loading?
34
- end
35
-
36
- def test_eager_load_on_collection_proxy
37
-
38
- warehouse = Warehouse.new
39
- widget = Widget.new(warehouse_id: warehouse.id)
40
- Widget.elastic_index.bulk_add [ widget ]
41
-
42
- Option.elastic_index.bulk_add [
43
- Option.new(id: 5, widget_id: widget.id),
44
- Option.new(id: 10, widget_id: widget.id),
45
- ]
46
-
47
- widgets = warehouse.widgets.eager_load(:options)
48
- widgets = widgets.to_a
49
-
50
- assert_no_queries do
51
- assert_equal ["5", "10"].to_set, widgets.first.options.map(&:id).to_set
52
- end
53
-
54
- end
55
-
56
- def test_eager_load_on_relation
57
-
58
- widget = Widget.new
59
- Widget.elastic_index.bulk_add [ widget ]
60
-
61
- Option.elastic_index.bulk_add [
62
- Option.new(id: 5, widget_id: widget.id),
63
- Option.new(id: 10, widget_id: widget.id),
64
- ]
65
-
66
- widgets = Widget.elastic_relation.eager_load(:options)
67
- widgets = widgets.to_a
68
-
69
- assert_no_queries do
70
- assert_equal ["5", "10"].to_set, widgets.first.options.map(&:id).to_set
71
- end
72
-
73
- end
74
-
75
28
  def test_to_ids
76
29
  create_widgets [Widget.new(id: 5, color: 'red'), Widget.new(id: 10, color: 'blue')]
77
30
 
data/test/helper.rb CHANGED
@@ -4,14 +4,11 @@ Bundler.require
4
4
  require 'minitest/autorun'
5
5
 
6
6
  require 'support/connect'
7
- require 'support/query_counter'
8
7
  require 'support/models/test_model'
9
8
  require 'support/models/warehouse'
10
9
  require 'support/models/widget'
11
- require 'support/models/option'
12
- require 'pp'
13
10
 
14
- ElasticRecord::Config.model_names = %w(Warehouse Widget Option)
11
+ ElasticRecord::Config.model_names = %w(Warehouse Widget)
15
12
 
16
13
  FakeWeb.allow_net_connect = %r[^https?://127.0.0.1]
17
14
 
@@ -19,9 +16,6 @@ module MiniTest
19
16
  class Unit
20
17
  class TestCase
21
18
  def setup
22
- Widget._test_cache.clear
23
- Option._test_cache.clear
24
-
25
19
  FakeWeb.clean_registry
26
20
 
27
21
  ElasticRecord::Config.models.each do |model|
@@ -10,25 +10,11 @@ module TestModel
10
10
  include ActiveModel::Validations
11
11
 
12
12
  include ElasticRecord::Model
13
- include ElasticRecord::Callbacks
14
-
15
13
  end
16
14
 
17
15
  module ClassMethods
18
-
19
- def _test_cache
20
- @_test_cache ||= []
21
- end
22
-
23
- def load_elastic_record_hits(*args)
24
- find(*args)
25
- end
26
-
27
16
  def find(ids)
28
- ids.map do |id|
29
- record = _test_cache.detect { |m| m.id.to_s == id.to_s }
30
- record.nil? ? new(id: id, color: 'red') : record.clone
31
- end
17
+ ids.map { |id| new(id: id) }
32
18
  end
33
19
 
34
20
  def primary_key
@@ -67,10 +53,6 @@ module TestModel
67
53
 
68
54
  def initialize(attrs = {})
69
55
  self.attributes = attrs
70
- cloned = self.clone
71
- cloned.id = cloned.id.to_s
72
- self.class._test_cache.delete_if { |record| record.id == cloned.id }
73
- self.class._test_cache << cloned
74
56
  end
75
57
 
76
58
  def attributes=(attrs)
@@ -2,5 +2,4 @@ class Warehouse
2
2
  include TestModel
3
3
 
4
4
  define_attributes [:name]
5
- searches_many :widgets, :autosave => true
6
5
  end
@@ -5,8 +5,6 @@ class Widget
5
5
 
6
6
  define_attributes [:name, :color, :warehouse_id]
7
7
 
8
- searches_many :options
9
-
10
8
  self.elastic_index.mapping[:properties].update(
11
9
  name: {
12
10
  type: 'multi_field',
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elastic_record
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.8
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Infogroup
@@ -9,34 +9,34 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-10-17 00:00:00.000000000 Z
12
+ date: 2014-02-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: arelastic
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - '>='
18
+ - - ">="
19
19
  - !ruby/object:Gem::Version
20
20
  version: 0.4.0
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - '>='
25
+ - - ">="
26
26
  - !ruby/object:Gem::Version
27
27
  version: 0.4.0
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: activemodel
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - '>='
32
+ - - ">="
33
33
  - !ruby/object:Gem::Version
34
34
  version: '0'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - '>='
39
+ - - ">="
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  description: Find your records with elastic search
@@ -46,8 +46,8 @@ extensions: []
46
46
  extra_rdoc_files:
47
47
  - README.rdoc
48
48
  files:
49
- - .gitignore
50
- - .travis.yml
49
+ - ".gitignore"
50
+ - ".travis.yml"
51
51
  - Gemfile
52
52
  - LICENSE
53
53
  - README.rdoc
@@ -81,12 +81,6 @@ files:
81
81
  - lib/elastic_record/relation/none.rb
82
82
  - lib/elastic_record/relation/search_methods.rb
83
83
  - lib/elastic_record/relation/value_methods.rb
84
- - lib/elastic_record/searches_many.rb
85
- - lib/elastic_record/searches_many/association.rb
86
- - lib/elastic_record/searches_many/autosave.rb
87
- - lib/elastic_record/searches_many/builder.rb
88
- - lib/elastic_record/searches_many/collection_proxy.rb
89
- - lib/elastic_record/searches_many/reflection.rb
90
84
  - lib/elastic_record/searching.rb
91
85
  - lib/elastic_record/tasks/index.rake
92
86
  - test/elastic_record/callbacks_test.rb
@@ -113,19 +107,12 @@ files:
113
107
  - test/elastic_record/relation/none_test.rb
114
108
  - test/elastic_record/relation/search_methods_test.rb
115
109
  - test/elastic_record/relation_test.rb
116
- - test/elastic_record/searches_many/association_test.rb
117
- - test/elastic_record/searches_many/autosave_test.rb
118
- - test/elastic_record/searches_many/collection_proxy_test.rb
119
- - test/elastic_record/searches_many/reflection_test.rb
120
- - test/elastic_record/searches_many_test.rb
121
110
  - test/elastic_record/searching_test.rb
122
111
  - test/helper.rb
123
112
  - test/support/connect.rb
124
- - test/support/models/option.rb
125
113
  - test/support/models/test_model.rb
126
114
  - test/support/models/warehouse.rb
127
115
  - test/support/models/widget.rb
128
- - test/support/query_counter.rb
129
116
  homepage: http://github.com/data-axle/elastic_record
130
117
  licenses:
131
118
  - MIT
@@ -136,17 +123,17 @@ require_paths:
136
123
  - lib
137
124
  required_ruby_version: !ruby/object:Gem::Requirement
138
125
  requirements:
139
- - - '>='
126
+ - - ">="
140
127
  - !ruby/object:Gem::Version
141
128
  version: 1.9.3
142
129
  required_rubygems_version: !ruby/object:Gem::Requirement
143
130
  requirements:
144
- - - '>='
131
+ - - ">="
145
132
  - !ruby/object:Gem::Version
146
133
  version: 1.8.11
147
134
  requirements: []
148
135
  rubyforge_project:
149
- rubygems_version: 2.0.3
136
+ rubygems_version: 2.2.1
150
137
  signing_key:
151
138
  specification_version: 4
152
139
  summary: Use Elastic Search with your objects