From 41eacc6691baf301334d43db4d62e16c87a71d90 Mon Sep 17 00:00:00 2001 From: Andrew Kane Date: Tue, 17 Mar 2020 21:59:50 -0700 Subject: [PATCH] Added exclude [skip ci] --- lib/searchkick/relation.rb | 9 +++++++++ test/match_test.rb | 1 + 2 files changed, 10 insertions(+), 0 deletions(-) diff --git a/lib/searchkick/relation.rb b/lib/searchkick/relation.rb index b650cd1..54fc440 100644 --- a/lib/searchkick/relation.rb +++ b/lib/searchkick/relation.rb @@ -327,6 +327,15 @@ module Searchkick self end + def exclude(*args) + spawn.exclude!(*args) + end + + def exclude!(*args) + options[:exclude] = Array(options[:exclude]) + args + self + end + # same as Active Record def inspect entries = results.first(11).map!(&:inspect) diff --git a/test/match_test.rb b/test/match_test.rb index 8fffd1b..6cad659 100644 --- a/test/match_test.rb +++ b/test/match_test.rb @@ -175,6 +175,7 @@ class MatchTest < Minitest::Test def test_exclude_butter store_names ["Butter Tub", "Peanut Butter Tub"] assert_search "butter", ["Butter Tub"], exclude: ["peanut butter"] + assert_search_relation ["Butter Tub"], Product.search("butter", relation: true).exclude("peanut butter") end def test_exclude_butter_word_start -- libgit2 0.21.0