From 9ac1c8a9093214633fcc3d29f46836f895a84adf Mon Sep 17 00:00:00 2001 From: Andrew Kane Date: Sun, 20 Feb 2022 17:00:10 -0800 Subject: [PATCH] Moved default scope tests to separate file [skip ci] --- test/default_scope_test.rb | 31 +++++++++++++++++++++++++++++++ test/reindex_test.rb | 6 ------ test/search_test.rb | 10 ---------- test/support/activerecord.rb | 3 ++- test/support/mongoid.rb | 3 ++- 5 files changed, 35 insertions(+), 18 deletions(-) create mode 100644 test/default_scope_test.rb diff --git a/test/default_scope_test.rb b/test/default_scope_test.rb new file mode 100644 index 0000000..61b332e --- /dev/null +++ b/test/default_scope_test.rb @@ -0,0 +1,31 @@ +require_relative "test_helper" + +class DefaultScopeTest < Minitest::Test + def setup + Band.destroy_all + end + + def test_reindex + store [ + {name: "Test", active: true}, + {name: "Test 2", active: false} + ], reindex: false + + Band.reindex + assert_search "*", ["Test"], {load: false} + end + + def test_search + Band.reindex + Band.search("*") # test works + + error = assert_raises(Searchkick::Error) do + Band.all.search("*") + end + assert_equal "search must be called on model, not relation", error.message + end + + def default_model + Band + end +end diff --git a/test/reindex_test.rb b/test/reindex_test.rb index f721090..03d20b4 100644 --- a/test/reindex_test.rb +++ b/test/reindex_test.rb @@ -185,12 +185,6 @@ class ReindexTest < Minitest::Test assert_match "unsupported keywords: :async", error.message end - def test_full_default_scope - store_names ["Test", "Test 2"], Band, reindex: false - Band.reindex - assert_search "*", ["Test"], {load: false}, Band - end - def test_callbacks_false Searchkick.callbacks(false) do store_names ["Product A", "Product B"] diff --git a/test/search_test.rb b/test/search_test.rb index a229bd3..ccd9149 100644 --- a/test/search_test.rb +++ b/test/search_test.rb @@ -8,16 +8,6 @@ class SearchTest < Minitest::Test assert_equal "search must be called on model, not relation", error.message end - def test_search_relation_default_scope - Band.reindex - Band.search("*") # test works - - error = assert_raises(Searchkick::Error) do - Band.all.search("*") - end - assert_equal "search must be called on model, not relation", error.message - end - def test_body store_names ["Dollar Tree"], Store assert_equal ["Dollar Tree"], Store.search(body: {query: {match: {name: "dollar"}}}, load: false).map(&:name) diff --git a/test/support/activerecord.rb b/test/support/activerecord.rb index 6fb2cc6..be86540 100644 --- a/test/support/activerecord.rb +++ b/test/support/activerecord.rb @@ -63,6 +63,7 @@ ActiveRecord::Schema.define do create_table :bands do |t| t.string :name + t.boolean :active end end @@ -96,5 +97,5 @@ class Song < ActiveRecord::Base end class Band < ActiveRecord::Base - default_scope { where(name: "Test") } + default_scope { where(active: true).order(:name) } end diff --git a/test/support/mongoid.rb b/test/support/mongoid.rb index de2a237..d8b3cf6 100644 --- a/test/support/mongoid.rb +++ b/test/support/mongoid.rb @@ -71,6 +71,7 @@ class Band include Mongoid::Document field :name + field :active, type: Mongoid::Boolean - default_scope -> { where(name: "Test") } + default_scope -> { where(active: true).order(:name) } end -- libgit2 0.21.0