diff options
author | lambda <lain@soykaf.club> | 2019-03-27 11:33:13 +0000 |
---|---|---|
committer | lambda <lain@soykaf.club> | 2019-03-27 11:33:13 +0000 |
commit | 926bf114b7385761c3cac50e262d061f47fda4b8 (patch) | |
tree | bf223ef4d3a62bdea499a209a76af37e889cdcd6 /test/web/admin_api/search_test.exs | |
parent | a5f141d9d524fc130312d1badd7303add6f92907 (diff) | |
parent | 3cf7539bca56ce1118bbedaba547d371f3f20eed (diff) | |
download | pleroma-926bf114b7385761c3cac50e262d061f47fda4b8.tar.gz pleroma-926bf114b7385761c3cac50e262d061f47fda4b8.zip |
Merge branch 'feature/more-user-filters' into 'develop'
Add more user filters + move search to its own module
See merge request pleroma/pleroma!982
Diffstat (limited to 'test/web/admin_api/search_test.exs')
-rw-r--r-- | test/web/admin_api/search_test.exs | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/test/web/admin_api/search_test.exs b/test/web/admin_api/search_test.exs new file mode 100644 index 000000000..3950996ed --- /dev/null +++ b/test/web/admin_api/search_test.exs @@ -0,0 +1,88 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2018 Pleroma Authors <https://pleroma.social/> +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.AdminAPI.SearchTest do + use Pleroma.Web.ConnCase + + alias Pleroma.Web.AdminAPI.Search + + import Pleroma.Factory + + describe "search for admin" do + test "it ignores case" do + insert(:user, nickname: "papercoach") + insert(:user, nickname: "CanadaPaperCoach") + + {:ok, _results, count} = + Search.user(%{ + query: "paper", + local: false, + page: 1, + page_size: 50 + }) + + assert count == 2 + end + + test "it returns local/external users" do + insert(:user, local: true) + insert(:user, local: false) + insert(:user, local: false) + + {:ok, _results, local_count} = + Search.user(%{ + query: "", + local: true + }) + + {:ok, _results, external_count} = + Search.user(%{ + query: "", + external: true + }) + + assert local_count == 1 + assert external_count == 2 + end + + test "it returns active/deactivated users" do + insert(:user, info: %{deactivated: true}) + insert(:user, info: %{deactivated: true}) + insert(:user, info: %{deactivated: false}) + + {:ok, _results, active_count} = + Search.user(%{ + query: "", + active: true + }) + + {:ok, _results, deactivated_count} = + Search.user(%{ + query: "", + deactivated: true + }) + + assert active_count == 1 + assert deactivated_count == 2 + end + + test "it returns specific user" do + insert(:user) + insert(:user) + insert(:user, nickname: "bob", local: true, info: %{deactivated: false}) + + {:ok, _results, total_count} = Search.user(%{query: ""}) + + {:ok, _results, count} = + Search.user(%{ + query: "Bo", + active: true, + local: true + }) + + assert total_count == 3 + assert count == 1 + end + end +end |