diff options
author | Ivan Tashkinov <ivant.business@gmail.com> | 2019-04-02 09:19:10 +0300 |
---|---|---|
committer | Ivan Tashkinov <ivant.business@gmail.com> | 2019-04-02 09:19:10 +0300 |
commit | aac48d0cc6893c231c88d5cd7fe0334353bbf299 (patch) | |
tree | c3e423993ff5289dd0ba73a94881bd52d9cda1c2 /test/web/admin_api/search_test.exs | |
parent | f6fab01ba7a08fe0e5147f82d9e3dd294922dc93 (diff) | |
parent | f8aa917eef9280631a5cd2c95cf1db8fab6e14e5 (diff) | |
download | pleroma-aac48d0cc6893c231c88d5cd7fe0334353bbf299.tar.gz pleroma-aac48d0cc6893c231c88d5cd7fe0334353bbf299.zip |
Merge remote-tracking branch 'remotes/upstream/develop' into features/mastoapi/2.6.0-conversations
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 |