From beb8fe82e56e1491e25a49e46e56471317666d95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20J=C3=A4ggi?= Date: Wed, 6 Nov 2024 20:06:43 +0100 Subject: [PATCH] Add missing person search spec --- .../search_strategies/person_search_spec.rb | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 spec/domain/search_strategies/person_search_spec.rb diff --git a/spec/domain/search_strategies/person_search_spec.rb b/spec/domain/search_strategies/person_search_spec.rb new file mode 100644 index 0000000..bc39870 --- /dev/null +++ b/spec/domain/search_strategies/person_search_spec.rb @@ -0,0 +1,48 @@ +# frozen_string_literal: true + +# Copyright (c) 2021, Die Mitte. This file is part of +# hitobito_die_mitte and licensed under the Affero General Public License version 3 +# or later. See the COPYING file at the top-level directory or at +# https://github.com/hitobito/hitobito_die_mitte. + +require "spec_helper" + +describe SearchStrategies::PersonSearch do + describe "#search_fulltext" do + let(:user) { people(:admin) } + + it "finds accessible person by title" do + result = search_class(people(:admin).title.to_s).search_fulltext + + expect(result).to include(people(:admin)) + end + + it "finds accessible person by website" do + result = search_class(people(:admin).website.to_s).search_fulltext + + expect(result).to include(people(:admin)) + end + + it "finds accessible person by correspondence_language" do + result = search_class(people(:admin).correspondence_language.to_s).search_fulltext + + expect(result).to include(people(:admin)) + end + + it "finds accessible person by civil_status" do + result = search_class(people(:admin).civil_status.to_s).search_fulltext + + expect(result).to include(people(:admin)) + end + + it "finds accessible person by salutation" do + result = search_class(people(:admin).salutation.to_s).search_fulltext + + expect(result).to include(people(:admin)) + end + end + + def search_class(term = nil, page = nil) + described_class.new(user, term, page) + end +end