diff options
author | kaniini <nenolod@gmail.com> | 2018-09-03 12:33:36 +0000 |
---|---|---|
committer | kaniini <nenolod@gmail.com> | 2018-09-03 12:33:36 +0000 |
commit | 1c9e539b47ff594d75c9548a04e64cb0c61cff8c (patch) | |
tree | 26936ac9208ea802e17c78e31689480ff004cd3f /test/filter_test.exs | |
parent | 8fdddc255ce4fea3060904d27634022718597133 (diff) | |
parent | 6973b77e9462475361772907ddd690a960041b64 (diff) | |
download | pleroma-1c9e539b47ff594d75c9548a04e64cb0c61cff8c.tar.gz |
Merge branch 'feature/mastodon_api_2.4.x' into 'develop'
Add/Fix Mastodon endpoints for 2.4.3 compatibility
See merge request pleroma/pleroma!266
Diffstat (limited to 'test/filter_test.exs')
-rw-r--r-- | test/filter_test.exs | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/test/filter_test.exs b/test/filter_test.exs new file mode 100644 index 000000000..d81c92f08 --- /dev/null +++ b/test/filter_test.exs @@ -0,0 +1,85 @@ +defmodule Pleroma.FilterTest do + alias Pleroma.{User, Repo} + use Pleroma.DataCase + + import Pleroma.Factory + import Ecto.Query + + test "creating a filter" do + user = insert(:user) + + query = %Pleroma.Filter{ + user_id: user.id, + filter_id: 42, + phrase: "knights", + context: ["home"] + } + + {:ok, %Pleroma.Filter{} = filter} = Pleroma.Filter.create(query) + result = Pleroma.Filter.get(filter.filter_id, user) + assert query.phrase == result.phrase + end + + test "deleting a filter" do + user = insert(:user) + + query = %Pleroma.Filter{ + user_id: user.id, + filter_id: 0, + phrase: "knights", + context: ["home"] + } + + {:ok, filter} = Pleroma.Filter.create(query) + {:ok, filter} = Pleroma.Filter.delete(query) + assert is_nil(Repo.get(Pleroma.Filter, filter.filter_id)) + end + + test "getting all filters by an user" do + user = insert(:user) + + query_one = %Pleroma.Filter{ + user_id: user.id, + filter_id: 1, + phrase: "knights", + context: ["home"] + } + + query_two = %Pleroma.Filter{ + user_id: user.id, + filter_id: 2, + phrase: "who", + context: ["home"] + } + + {:ok, filter_one} = Pleroma.Filter.create(query_one) + {:ok, filter_two} = Pleroma.Filter.create(query_two) + filters = Pleroma.Filter.get_filters(user) + assert filter_one in filters + assert filter_two in filters + end + + test "updating a filter" do + user = insert(:user) + + query_one = %Pleroma.Filter{ + user_id: user.id, + filter_id: 1, + phrase: "knights", + context: ["home"] + } + + query_two = %Pleroma.Filter{ + user_id: user.id, + filter_id: 1, + phrase: "who", + context: ["home", "timeline"] + } + + {:ok, filter_one} = Pleroma.Filter.create(query_one) + {:ok, filter_two} = Pleroma.Filter.update(query_two) + assert filter_one != filter_two + assert filter_two.phrase == query_two.phrase + assert filter_two.context == query_two.context + end +end |