From d6315335814a4b509d10e830ed5c20c8608ac054 Mon Sep 17 00:00:00 2001 From: Andrew Kane Date: Wed, 19 May 2021 01:38:32 -0700 Subject: [PATCH] Added warning for missing models keyword - #1487 --- lib/searchkick.rb | 5 +++++ test/multi_indices_test.rb | 12 ++++++++++++ 2 files changed, 17 insertions(+), 0 deletions(-) diff --git a/lib/searchkick.rb b/lib/searchkick.rb index a82c995..77da93f 100644 --- a/lib/searchkick.rb +++ b/lib/searchkick.rb @@ -128,6 +128,11 @@ module Searchkick end end + # TODO raise ArgumentError in next major version + unless klass || options[:models] + Searchkick.warn("missing keyword: :models") + end + options = options.merge(block: block) if block query = Searchkick::Query.new(klass, term, **options) if options[:execute] == false diff --git a/test/multi_indices_test.rb b/test/multi_indices_test.rb index e5019df..ade0c13 100644 --- a/test/multi_indices_test.rb +++ b/test/multi_indices_test.rb @@ -41,6 +41,18 @@ class MultiIndicesTest < Minitest::Test assert_includes error.message, "Use Searchkick.search" end + def test_no_models_or_index_name + store_names ["Product A"] + + # TODO raise ArgumentError in next major version + assert_output(nil, /missing keyword: :models/) do + error = assert_raises(Searchkick::Error) do + Searchkick.search("product").results + end + assert_includes error.message, "Unknown model" + end + end + private def assert_search_multi(term, expected, options = {}) -- libgit2 0.21.0