diff options
author | Maxim Filippov <colixer@gmail.com> | 2019-11-05 02:12:48 +0300 |
---|---|---|
committer | Maxim Filippov <colixer@gmail.com> | 2019-11-05 02:12:48 +0300 |
commit | 43ea16870fe60578a6528e1f01bfaab68943a1bc (patch) | |
tree | 108e2d85abfa60cea3b85cd07e0b2ab467b39668 /test/marker_test.exs | |
parent | 24eecc3cb4a35376124b1fc792183d8b8dd0a9cc (diff) | |
parent | fee127696308dbec9cff6b2a9b399cf2877cf445 (diff) | |
download | pleroma-43ea16870fe60578a6528e1f01bfaab68943a1bc.tar.gz pleroma-43ea16870fe60578a6528e1f01bfaab68943a1bc.zip |
Merge branch 'develop' into feature/reports-groups-and-multiple-state-update
Diffstat (limited to 'test/marker_test.exs')
-rw-r--r-- | test/marker_test.exs | 51 |
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 |