aboutsummaryrefslogtreecommitdiff
path: root/test/filter_test.exs
diff options
context:
space:
mode:
authorkaniini <nenolod@gmail.com>2018-09-03 12:33:36 +0000
committerkaniini <nenolod@gmail.com>2018-09-03 12:33:36 +0000
commit1c9e539b47ff594d75c9548a04e64cb0c61cff8c (patch)
tree26936ac9208ea802e17c78e31689480ff004cd3f /test/filter_test.exs
parent8fdddc255ce4fea3060904d27634022718597133 (diff)
parent6973b77e9462475361772907ddd690a960041b64 (diff)
downloadpleroma-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.exs85
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