summaryrefslogtreecommitdiff
path: root/test/marker_test.exs
diff options
context:
space:
mode:
authorkaniini <ariadne@dereferenced.org>2019-10-21 09:26:17 +0000
committerkaniini <ariadne@dereferenced.org>2019-10-21 09:26:17 +0000
commitce750dbab5de905af1e0ba6ba6a5a08b41600ac1 (patch)
tree67d60289cfc19f5cde3b8e85c35183b6169cfe51 /test/marker_test.exs
parent2ebe8c416a72b512feaba87040982da5bcf865cf (diff)
parent31d6ef6f92ff028499faa85945a51fdd6b5fcf89 (diff)
downloadpleroma-ce750dbab5de905af1e0ba6ba6a5a08b41600ac1.tar.gz
pleroma-ce750dbab5de905af1e0ba6ba6a5a08b41600ac1.zip
Merge branch 'feature/masto_api_markers' into 'develop'
[#1275] Markers /api/v1/markers See merge request pleroma/pleroma!1852
Diffstat (limited to 'test/marker_test.exs')
-rw-r--r--test/marker_test.exs51
1 files changed, 51 insertions, 0 deletions
diff --git a/test/marker_test.exs b/test/marker_test.exs
new file mode 100644
index 000000000..04bd67fe6
--- /dev/null
+++ b/test/marker_test.exs
@@ -0,0 +1,51 @@
+# Pleroma: A lightweight social networking server
+# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
+# SPDX-License-Identifier: AGPL-3.0-only
+
+defmodule Pleroma.MarkerTest do
+ use Pleroma.DataCase
+ alias Pleroma.Marker
+
+ import Pleroma.Factory
+
+ describe "get_markers/2" do
+ test "returns user markers" do
+ user = insert(:user)
+ marker = insert(:marker, user: user)
+ insert(:marker, timeline: "home", user: user)
+ assert Marker.get_markers(user, ["notifications"]) == [refresh_record(marker)]
+ end
+ end
+
+ describe "upsert/2" do
+ test "creates a marker" do
+ user = insert(:user)
+
+ {:ok, %{"notifications" => %Marker{} = marker}} =
+ Marker.upsert(
+ user,
+ %{"notifications" => %{"last_read_id" => "34"}}
+ )
+
+ assert marker.timeline == "notifications"
+ assert marker.last_read_id == "34"
+ assert marker.lock_version == 0
+ end
+
+ test "updates exist marker" do
+ user = insert(:user)
+ marker = insert(:marker, user: user, last_read_id: "8909")
+
+ {:ok, %{"notifications" => %Marker{}}} =
+ Marker.upsert(
+ user,
+ %{"notifications" => %{"last_read_id" => "9909"}}
+ )
+
+ marker = refresh_record(marker)
+ assert marker.timeline == "notifications"
+ assert marker.last_read_id == "9909"
+ assert marker.lock_version == 0
+ end
+ end
+end