summaryrefslogtreecommitdiff
path: root/test/marker_test.exs
diff options
context:
space:
mode:
authorlain <lain@soykaf.club>2019-11-05 15:21:00 +0100
committerlain <lain@soykaf.club>2019-11-05 15:21:00 +0100
commit1bd1f62af55e01613e6362661b36a19091c87424 (patch)
tree519963a50af82c1a0b251f1405d663ba9ccd4714 /test/marker_test.exs
parentfaced6236b9e2ce9675cf743068f16098b744562 (diff)
parentf11eebc18383be7d7b4b037582e4e1e08b74653b (diff)
downloadpleroma-1bd1f62af55e01613e6362661b36a19091c87424.tar.gz
pleroma-1bd1f62af55e01613e6362661b36a19091c87424.zip
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel
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