searchkick 1.2.1 → 1.3.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 +4 -4
 - data/.gitignore +2 -0
 - data/.travis.yml +17 -5
 - data/CHANGELOG.md +6 -0
 - data/LICENSE.txt +1 -1
 - data/README.md +26 -12
 - data/lib/searchkick.rb +4 -0
 - data/lib/searchkick/index.rb +62 -29
 - data/lib/searchkick/model.rb +3 -1
 - data/lib/searchkick/query.rb +334 -258
 - data/lib/searchkick/version.rb +1 -1
 - data/test/aggs_test.rb +4 -0
 - data/test/ci/before_install.sh +6 -2
 - data/test/facets_test.rb +1 -1
 - data/test/gemfiles/apartment.gemfile +8 -0
 - data/test/match_test.rb +8 -0
 - data/test/multi_tenancy_test.rb +22 -0
 - data/test/order_test.rb +6 -0
 - data/test/sql_test.rb +5 -0
 - data/test/test_helper.rb +48 -3
 - metadata +7 -3
 
    
        data/lib/searchkick/version.rb
    CHANGED
    
    
    
        data/test/aggs_test.rb
    CHANGED
    
    | 
         @@ -30,6 +30,10 @@ class AggsTest < Minitest::Test 
     | 
|
| 
       30 
30 
     | 
    
         
             
                assert_equal ({1 => 1, 2 => 2}), store_agg({aggs: {store_id_new: {field: "store_id"}}}, "store_id_new")
         
     | 
| 
       31 
31 
     | 
    
         
             
              end
         
     | 
| 
       32 
32 
     | 
    
         | 
| 
      
 33 
     | 
    
         
            +
              def test_min_doc_count
         
     | 
| 
      
 34 
     | 
    
         
            +
                assert_equal ({2 => 2}), store_agg(aggs: {store_id: {min_doc_count: 2}})
         
     | 
| 
      
 35 
     | 
    
         
            +
              end
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
       33 
37 
     | 
    
         
             
              def test_no_aggs
         
     | 
| 
       34 
38 
     | 
    
         
             
                assert_nil Product.search("*").aggs
         
     | 
| 
       35 
39 
     | 
    
         
             
              end
         
     | 
    
        data/test/ci/before_install.sh
    CHANGED
    
    | 
         @@ -3,8 +3,12 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            gem install bundler
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            sudo apt-get purge elasticsearch
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
      
 6 
     | 
    
         
            +
            if [[ $ELASTICSEARCH_VERSION == 1* ]]; then
         
     | 
| 
      
 7 
     | 
    
         
            +
              wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-$ELASTICSEARCH_VERSION.deb
         
     | 
| 
      
 8 
     | 
    
         
            +
            else
         
     | 
| 
      
 9 
     | 
    
         
            +
              wget https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/deb/elasticsearch/$ELASTICSEARCH_VERSION/elasticsearch-$ELASTICSEARCH_VERSION.deb
         
     | 
| 
      
 10 
     | 
    
         
            +
            fi
         
     | 
| 
      
 11 
     | 
    
         
            +
            sudo dpkg -i elasticsearch-$ELASTICSEARCH_VERSION.deb
         
     | 
| 
       8 
12 
     | 
    
         
             
            sudo service elasticsearch start
         
     | 
| 
       9 
13 
     | 
    
         | 
| 
       10 
14 
     | 
    
         
             
            if [ -n "$NOBRAINER" ]; then
         
     | 
    
        data/test/facets_test.rb
    CHANGED
    
    | 
         @@ -2,7 +2,7 @@ require_relative "test_helper" 
     | 
|
| 
       2 
2 
     | 
    
         | 
| 
       3 
3 
     | 
    
         
             
            class FacetsTest < Minitest::Test
         
     | 
| 
       4 
4 
     | 
    
         
             
              def setup
         
     | 
| 
       5 
     | 
    
         
            -
                skip  
     | 
| 
      
 5 
     | 
    
         
            +
                skip unless elasticsearch_below20?
         
     | 
| 
       6 
6 
     | 
    
         
             
                super
         
     | 
| 
       7 
7 
     | 
    
         
             
                store [
         
     | 
| 
       8 
8 
     | 
    
         
             
                  {name: "Product Show", latitude: 37.7833, longitude: 12.4167, store_id: 1, in_stock: true, color: "blue", price: 21, created_at: 2.days.ago},
         
     | 
    
        data/test/match_test.rb
    CHANGED
    
    | 
         @@ -110,12 +110,14 @@ class MatchTest < Minitest::Test 
     | 
|
| 
       110 
110 
     | 
    
         
             
              end
         
     | 
| 
       111 
111 
     | 
    
         | 
| 
       112 
112 
     | 
    
         
             
              def test_misspelling_zucchini_transposition
         
     | 
| 
      
 113 
     | 
    
         
            +
                skip if elasticsearch_below14?
         
     | 
| 
       113 
114 
     | 
    
         
             
                store_names ["zucchini"]
         
     | 
| 
       114 
115 
     | 
    
         
             
                assert_search "zuccihni", ["zucchini"]
         
     | 
| 
       115 
116 
     | 
    
         
             
                assert_search "zuccihni", [], misspellings: {transpositions: false}
         
     | 
| 
       116 
117 
     | 
    
         
             
              end
         
     | 
| 
       117 
118 
     | 
    
         | 
| 
       118 
119 
     | 
    
         
             
              def test_misspelling_lasagna
         
     | 
| 
      
 120 
     | 
    
         
            +
                skip if elasticsearch_below14?
         
     | 
| 
       119 
121 
     | 
    
         
             
                store_names ["lasagna"]
         
     | 
| 
       120 
122 
     | 
    
         
             
                assert_search "lasanga", ["lasagna"], misspellings: {transpositions: true}
         
     | 
| 
       121 
123 
     | 
    
         
             
                assert_search "lasgana", ["lasagna"], misspellings: {transpositions: true}
         
     | 
| 
         @@ -124,6 +126,7 @@ class MatchTest < Minitest::Test 
     | 
|
| 
       124 
126 
     | 
    
         
             
              end
         
     | 
| 
       125 
127 
     | 
    
         | 
| 
       126 
128 
     | 
    
         
             
              def test_misspelling_lasagna_pasta
         
     | 
| 
      
 129 
     | 
    
         
            +
                skip if elasticsearch_below14?
         
     | 
| 
       127 
130 
     | 
    
         
             
                store_names ["lasagna pasta"]
         
     | 
| 
       128 
131 
     | 
    
         
             
                assert_search "lasanga", ["lasagna pasta"], misspellings: {transpositions: true}
         
     | 
| 
       129 
132 
     | 
    
         
             
                assert_search "lasanga pasta", ["lasagna pasta"], misspellings: {transpositions: true}
         
     | 
| 
         @@ -191,6 +194,11 @@ class MatchTest < Minitest::Test 
     | 
|
| 
       191 
194 
     | 
    
         
             
                assert_search "ben & jerrys", ["Ben and Jerry's"]
         
     | 
| 
       192 
195 
     | 
    
         
             
              end
         
     | 
| 
       193 
196 
     | 
    
         | 
| 
      
 197 
     | 
    
         
            +
              def test_phrase
         
     | 
| 
      
 198 
     | 
    
         
            +
                store_names ["Fresh Honey", "Honey Fresh"]
         
     | 
| 
      
 199 
     | 
    
         
            +
                assert_search "fresh honey", ["Fresh Honey"], match: :phrase
         
     | 
| 
      
 200 
     | 
    
         
            +
              end
         
     | 
| 
      
 201 
     | 
    
         
            +
             
     | 
| 
       194 
202 
     | 
    
         
             
              def test_unsearchable
         
     | 
| 
       195 
203 
     | 
    
         
             
                store [
         
     | 
| 
       196 
204 
     | 
    
         
             
                  {name: "Unsearchable", description: "Almond"}
         
     | 
| 
         @@ -0,0 +1,22 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require_relative "test_helper"
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            class MultiTenancyTest < Minitest::Test
         
     | 
| 
      
 4 
     | 
    
         
            +
              def setup
         
     | 
| 
      
 5 
     | 
    
         
            +
                skip unless defined?(Apartment)
         
     | 
| 
      
 6 
     | 
    
         
            +
              end
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
              def test_basic
         
     | 
| 
      
 9 
     | 
    
         
            +
                Apartment::Tenant.switch!("tenant1")
         
     | 
| 
      
 10 
     | 
    
         
            +
                store_names ["Product A"], Tenant
         
     | 
| 
      
 11 
     | 
    
         
            +
                Apartment::Tenant.switch!("tenant2")
         
     | 
| 
      
 12 
     | 
    
         
            +
                store_names ["Product B"], Tenant
         
     | 
| 
      
 13 
     | 
    
         
            +
                Apartment::Tenant.switch!("tenant1")
         
     | 
| 
      
 14 
     | 
    
         
            +
                assert_search "product", ["Product A"], {load: false}, Tenant
         
     | 
| 
      
 15 
     | 
    
         
            +
                Apartment::Tenant.switch!("tenant2")
         
     | 
| 
      
 16 
     | 
    
         
            +
                assert_search "product", ["Product B"], {load: false}, Tenant
         
     | 
| 
      
 17 
     | 
    
         
            +
              end
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
              def teardown
         
     | 
| 
      
 20 
     | 
    
         
            +
                Apartment::Tenant.reset if defined?(Apartment)
         
     | 
| 
      
 21 
     | 
    
         
            +
              end
         
     | 
| 
      
 22 
     | 
    
         
            +
            end
         
     | 
    
        data/test/order_test.rb
    CHANGED
    
    | 
         @@ -28,9 +28,15 @@ class OrderTest < Minitest::Test 
     | 
|
| 
       28 
28 
     | 
    
         
             
              end
         
     | 
| 
       29 
29 
     | 
    
         | 
| 
       30 
30 
     | 
    
         
             
              def test_order_ignore_unmapped
         
     | 
| 
      
 31 
     | 
    
         
            +
                skip unless elasticsearch_below50?
         
     | 
| 
       31 
32 
     | 
    
         
             
                assert_order "product", [], order: {not_mapped: {ignore_unmapped: true}}
         
     | 
| 
       32 
33 
     | 
    
         
             
              end
         
     | 
| 
       33 
34 
     | 
    
         | 
| 
      
 35 
     | 
    
         
            +
              def test_order_unmapped_type
         
     | 
| 
      
 36 
     | 
    
         
            +
                skip if elasticsearch_below50?
         
     | 
| 
      
 37 
     | 
    
         
            +
                assert_order "product", [], order: {not_mapped: {unmapped_type: "long"}}
         
     | 
| 
      
 38 
     | 
    
         
            +
              end
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
       34 
40 
     | 
    
         
             
              def test_order_array
         
     | 
| 
       35 
41 
     | 
    
         
             
                store [{name: "San Francisco", latitude: 37.7833, longitude: -122.4167}]
         
     | 
| 
       36 
42 
     | 
    
         
             
                assert_order "francisco", ["San Francisco"], order: [{_geo_distance: {location: "0,0"}}]
         
     | 
    
        data/test/sql_test.rb
    CHANGED
    
    | 
         @@ -77,6 +77,7 @@ class SqlTest < Minitest::Test 
     | 
|
| 
       77 
77 
     | 
    
         
             
              # select
         
     | 
| 
       78 
78 
     | 
    
         | 
| 
       79 
79 
     | 
    
         
             
              def test_select
         
     | 
| 
      
 80 
     | 
    
         
            +
                skip unless elasticsearch_below50?
         
     | 
| 
       80 
81 
     | 
    
         
             
                store [{name: "Product A", store_id: 1}]
         
     | 
| 
       81 
82 
     | 
    
         
             
                result = Product.search("product", load: false, select: [:name, :store_id]).first
         
     | 
| 
       82 
83 
     | 
    
         
             
                assert_equal %w(id name store_id), result.keys.reject { |k| k.start_with?("_") }.sort
         
     | 
| 
         @@ -85,12 +86,14 @@ class SqlTest < Minitest::Test 
     | 
|
| 
       85 
86 
     | 
    
         
             
              end
         
     | 
| 
       86 
87 
     | 
    
         | 
| 
       87 
88 
     | 
    
         
             
              def test_select_array
         
     | 
| 
      
 89 
     | 
    
         
            +
                skip unless elasticsearch_below50?
         
     | 
| 
       88 
90 
     | 
    
         
             
                store [{name: "Product A", user_ids: [1, 2]}]
         
     | 
| 
       89 
91 
     | 
    
         
             
                result = Product.search("product", load: false, select: [:user_ids]).first
         
     | 
| 
       90 
92 
     | 
    
         
             
                assert_equal [1, 2], result.user_ids
         
     | 
| 
       91 
93 
     | 
    
         
             
              end
         
     | 
| 
       92 
94 
     | 
    
         | 
| 
       93 
95 
     | 
    
         
             
              def test_select_single_field
         
     | 
| 
      
 96 
     | 
    
         
            +
                skip unless elasticsearch_below50?
         
     | 
| 
       94 
97 
     | 
    
         
             
                store [{name: "Product A", store_id: 1}]
         
     | 
| 
       95 
98 
     | 
    
         
             
                result = Product.search("product", load: false, select: :name).first
         
     | 
| 
       96 
99 
     | 
    
         
             
                assert_equal %w(id name), result.keys.reject { |k| k.start_with?("_") }.sort
         
     | 
| 
         @@ -99,6 +102,7 @@ class SqlTest < Minitest::Test 
     | 
|
| 
       99 
102 
     | 
    
         
             
              end
         
     | 
| 
       100 
103 
     | 
    
         | 
| 
       101 
104 
     | 
    
         
             
              def test_select_all
         
     | 
| 
      
 105 
     | 
    
         
            +
                skip unless elasticsearch_below50?
         
     | 
| 
       102 
106 
     | 
    
         
             
                store [{name: "Product A", user_ids: [1, 2]}]
         
     | 
| 
       103 
107 
     | 
    
         
             
                hit = Product.search("product", select: true).hits.first
         
     | 
| 
       104 
108 
     | 
    
         
             
                assert_equal hit["_source"]["name"], "Product A"
         
     | 
| 
         @@ -106,6 +110,7 @@ class SqlTest < Minitest::Test 
     | 
|
| 
       106 
110 
     | 
    
         
             
              end
         
     | 
| 
       107 
111 
     | 
    
         | 
| 
       108 
112 
     | 
    
         
             
              def test_select_none
         
     | 
| 
      
 113 
     | 
    
         
            +
                skip unless elasticsearch_below50?
         
     | 
| 
       109 
114 
     | 
    
         
             
                store [{name: "Product A", user_ids: [1, 2]}]
         
     | 
| 
       110 
115 
     | 
    
         
             
                hit = Product.search("product", select: []).hits.first
         
     | 
| 
       111 
116 
     | 
    
         
             
                assert_nil hit["_source"]
         
     | 
    
        data/test/test_helper.rb
    CHANGED
    
    | 
         @@ -21,8 +21,16 @@ I18n.config.enforce_available_locales = true 
     | 
|
| 
       21 
21 
     | 
    
         
             
            ActiveJob::Base.logger = nil if defined?(ActiveJob)
         
     | 
| 
       22 
22 
     | 
    
         
             
            ActiveSupport::LogSubscriber.logger = Logger.new(STDOUT) if ENV["NOTIFICATIONS"]
         
     | 
| 
       23 
23 
     | 
    
         | 
| 
       24 
     | 
    
         
            -
            def  
     | 
| 
       25 
     | 
    
         
            -
              Searchkick. 
     | 
| 
      
 24 
     | 
    
         
            +
            def elasticsearch_below50?
         
     | 
| 
      
 25 
     | 
    
         
            +
              Searchkick.server_below?("5.0.0-alpha1")
         
     | 
| 
      
 26 
     | 
    
         
            +
            end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
            def elasticsearch_below20?
         
     | 
| 
      
 29 
     | 
    
         
            +
              Searchkick.server_below?("2.0.0")
         
     | 
| 
      
 30 
     | 
    
         
            +
            end
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
            def elasticsearch_below14?
         
     | 
| 
      
 33 
     | 
    
         
            +
              Searchkick.server_below?("1.4.0")
         
     | 
| 
       26 
34 
     | 
    
         
             
            end
         
     | 
| 
       27 
35 
     | 
    
         | 
| 
       28 
36 
     | 
    
         
             
            def mongoid2?
         
     | 
| 
         @@ -156,6 +164,43 @@ else 
     | 
|
| 
       156 
164 
     | 
    
         | 
| 
       157 
165 
     | 
    
         
             
              ActiveRecord::Base.raise_in_transactional_callbacks = true if ActiveRecord::Base.respond_to?(:raise_in_transactional_callbacks=)
         
     | 
| 
       158 
166 
     | 
    
         | 
| 
      
 167 
     | 
    
         
            +
              if defined?(Apartment)
         
     | 
| 
      
 168 
     | 
    
         
            +
                class Rails
         
     | 
| 
      
 169 
     | 
    
         
            +
                  def self.env
         
     | 
| 
      
 170 
     | 
    
         
            +
                    ENV["RACK_ENV"]
         
     | 
| 
      
 171 
     | 
    
         
            +
                  end
         
     | 
| 
      
 172 
     | 
    
         
            +
                end
         
     | 
| 
      
 173 
     | 
    
         
            +
             
     | 
| 
      
 174 
     | 
    
         
            +
                tenants = ["tenant1", "tenant2"]
         
     | 
| 
      
 175 
     | 
    
         
            +
                Apartment.configure do |config|
         
     | 
| 
      
 176 
     | 
    
         
            +
                  config.tenant_names = tenants
         
     | 
| 
      
 177 
     | 
    
         
            +
                  config.database_schema_file = false
         
     | 
| 
      
 178 
     | 
    
         
            +
                  config.excluded_models = ["Product", "Store", "Animal", "Dog", "Cat"]
         
     | 
| 
      
 179 
     | 
    
         
            +
                end
         
     | 
| 
      
 180 
     | 
    
         
            +
             
     | 
| 
      
 181 
     | 
    
         
            +
                class Tenant < ActiveRecord::Base
         
     | 
| 
      
 182 
     | 
    
         
            +
                  searchkick index_prefix: -> { Apartment::Tenant.current }
         
     | 
| 
      
 183 
     | 
    
         
            +
                end
         
     | 
| 
      
 184 
     | 
    
         
            +
             
     | 
| 
      
 185 
     | 
    
         
            +
                tenants.each do |tenant|
         
     | 
| 
      
 186 
     | 
    
         
            +
                  begin
         
     | 
| 
      
 187 
     | 
    
         
            +
                    Apartment::Tenant.create(tenant)
         
     | 
| 
      
 188 
     | 
    
         
            +
                  rescue Apartment::TenantExists
         
     | 
| 
      
 189 
     | 
    
         
            +
                    # do nothing
         
     | 
| 
      
 190 
     | 
    
         
            +
                  end
         
     | 
| 
      
 191 
     | 
    
         
            +
                  Apartment::Tenant.switch!(tenant)
         
     | 
| 
      
 192 
     | 
    
         
            +
             
     | 
| 
      
 193 
     | 
    
         
            +
                  ActiveRecord::Migration.create_table :tenants, force: true do |t|
         
     | 
| 
      
 194 
     | 
    
         
            +
                    t.string :name
         
     | 
| 
      
 195 
     | 
    
         
            +
                    t.timestamps null: true
         
     | 
| 
      
 196 
     | 
    
         
            +
                  end
         
     | 
| 
      
 197 
     | 
    
         
            +
             
     | 
| 
      
 198 
     | 
    
         
            +
                  Tenant.reindex
         
     | 
| 
      
 199 
     | 
    
         
            +
                end
         
     | 
| 
      
 200 
     | 
    
         
            +
             
     | 
| 
      
 201 
     | 
    
         
            +
                Apartment::Tenant.reset
         
     | 
| 
      
 202 
     | 
    
         
            +
              end
         
     | 
| 
      
 203 
     | 
    
         
            +
             
     | 
| 
       159 
204 
     | 
    
         
             
              ActiveRecord::Migration.create_table :products do |t|
         
     | 
| 
       160 
205 
     | 
    
         
             
                t.string :name
         
     | 
| 
       161 
206 
     | 
    
         
             
                t.integer :store_id
         
     | 
| 
         @@ -251,7 +296,7 @@ class Store 
     | 
|
| 
       251 
296 
     | 
    
         
             
                mappings: {
         
     | 
| 
       252 
297 
     | 
    
         
             
                  store: {
         
     | 
| 
       253 
298 
     | 
    
         
             
                    properties: {
         
     | 
| 
       254 
     | 
    
         
            -
                      name: {type: "string", analyzer: "keyword"}
         
     | 
| 
      
 299 
     | 
    
         
            +
                      name: elasticsearch_below50? ? {type: "string", analyzer: "keyword"} : {type: "keyword"}
         
     | 
| 
       255 
300 
     | 
    
         
             
                    }
         
     | 
| 
       256 
301 
     | 
    
         
             
                  }
         
     | 
| 
       257 
302 
     | 
    
         
             
                }
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: searchkick
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.3.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Andrew Kane
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2016- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2016-05-04 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: activemodel
         
     | 
| 
         @@ -131,6 +131,7 @@ files: 
     | 
|
| 
       131 
131 
     | 
    
         
             
            - test/gemfiles/activerecord32.gemfile
         
     | 
| 
       132 
132 
     | 
    
         
             
            - test/gemfiles/activerecord40.gemfile
         
     | 
| 
       133 
133 
     | 
    
         
             
            - test/gemfiles/activerecord41.gemfile
         
     | 
| 
      
 134 
     | 
    
         
            +
            - test/gemfiles/apartment.gemfile
         
     | 
| 
       134 
135 
     | 
    
         
             
            - test/gemfiles/mongoid2.gemfile
         
     | 
| 
       135 
136 
     | 
    
         
             
            - test/gemfiles/mongoid3.gemfile
         
     | 
| 
       136 
137 
     | 
    
         
             
            - test/gemfiles/mongoid4.gemfile
         
     | 
| 
         @@ -143,6 +144,7 @@ files: 
     | 
|
| 
       143 
144 
     | 
    
         
             
            - test/misspellings_test.rb
         
     | 
| 
       144 
145 
     | 
    
         
             
            - test/model_test.rb
         
     | 
| 
       145 
146 
     | 
    
         
             
            - test/multi_search_test.rb
         
     | 
| 
      
 147 
     | 
    
         
            +
            - test/multi_tenancy_test.rb
         
     | 
| 
       146 
148 
     | 
    
         
             
            - test/order_test.rb
         
     | 
| 
       147 
149 
     | 
    
         
             
            - test/pagination_test.rb
         
     | 
| 
       148 
150 
     | 
    
         
             
            - test/query_test.rb
         
     | 
| 
         @@ -177,7 +179,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       177 
179 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       178 
180 
     | 
    
         
             
            requirements: []
         
     | 
| 
       179 
181 
     | 
    
         
             
            rubyforge_project: 
         
     | 
| 
       180 
     | 
    
         
            -
            rubygems_version: 2. 
     | 
| 
      
 182 
     | 
    
         
            +
            rubygems_version: 2.6.1
         
     | 
| 
       181 
183 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       182 
184 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       183 
185 
     | 
    
         
             
            summary: Searchkick learns what your users are looking for. As more people search,
         
     | 
| 
         @@ -195,6 +197,7 @@ test_files: 
     | 
|
| 
       195 
197 
     | 
    
         
             
            - test/gemfiles/activerecord32.gemfile
         
     | 
| 
       196 
198 
     | 
    
         
             
            - test/gemfiles/activerecord40.gemfile
         
     | 
| 
       197 
199 
     | 
    
         
             
            - test/gemfiles/activerecord41.gemfile
         
     | 
| 
      
 200 
     | 
    
         
            +
            - test/gemfiles/apartment.gemfile
         
     | 
| 
       198 
201 
     | 
    
         
             
            - test/gemfiles/mongoid2.gemfile
         
     | 
| 
       199 
202 
     | 
    
         
             
            - test/gemfiles/mongoid3.gemfile
         
     | 
| 
       200 
203 
     | 
    
         
             
            - test/gemfiles/mongoid4.gemfile
         
     | 
| 
         @@ -207,6 +210,7 @@ test_files: 
     | 
|
| 
       207 
210 
     | 
    
         
             
            - test/misspellings_test.rb
         
     | 
| 
       208 
211 
     | 
    
         
             
            - test/model_test.rb
         
     | 
| 
       209 
212 
     | 
    
         
             
            - test/multi_search_test.rb
         
     | 
| 
      
 213 
     | 
    
         
            +
            - test/multi_tenancy_test.rb
         
     | 
| 
       210 
214 
     | 
    
         
             
            - test/order_test.rb
         
     | 
| 
       211 
215 
     | 
    
         
             
            - test/pagination_test.rb
         
     | 
| 
       212 
216 
     | 
    
         
             
            - test/query_test.rb
         
     |