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  | 
