From 3ad4beac02693932bc77cabfa38a2ff162295bc8 Mon Sep 17 00:00:00 2001 From: evazion Date: Sun, 20 Dec 2020 01:27:48 -0600 Subject: [PATCH] autocomplete: fix exception when completing unsupported metatags. --- app/logical/autocomplete_service.rb | 2 ++ test/unit/autocomplete_service_test.rb | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/app/logical/autocomplete_service.rb b/app/logical/autocomplete_service.rb index f75101098..23bb33f92 100644 --- a/app/logical/autocomplete_service.rb +++ b/app/logical/autocomplete_service.rb @@ -148,6 +148,8 @@ class AutocompleteService autocomplete_saved_search_label(value) when *STATIC_METATAGS.keys autocomplete_static_metatag(metatag, value) + else + [] end results.map do |result| diff --git a/test/unit/autocomplete_service_test.rb b/test/unit/autocomplete_service_test.rb index e0463f36e..d57ef52ce 100644 --- a/test/unit/autocomplete_service_test.rb +++ b/test/unit/autocomplete_service_test.rb @@ -150,6 +150,14 @@ class AutocompleteServiceTest < ActiveSupport::TestCase assert_autocomplete_equals(%w[touhou], "touhuo", :tag_query) end + should "ignore unsupported metatags" do + assert_autocomplete_equals([], "date:2020", :tag_query) + assert_autocomplete_equals([], "score:20", :tag_query) + assert_autocomplete_equals([], "favcount:>20", :tag_query) + assert_autocomplete_equals([], "age:<1w", :tag_query) + assert_autocomplete_equals([], "limit:200", :tag_query) + end + should "autocomplete static metatags" do assert_autocomplete_equals(["status:active"], "status:act", :tag_query) assert_autocomplete_equals(["parent:active"], "parent:act", :tag_query)