diff options
author | rinpatch <rinpatch@sdf.org> | 2020-03-08 10:38:35 +0000 |
---|---|---|
committer | rinpatch <rinpatch@sdf.org> | 2020-03-08 10:38:35 +0000 |
commit | e8493431bfc16977e43715bf8bdb09ac46580028 (patch) | |
tree | 2e1a0068583ca62870a15590c4ccba237999f51a /test/web/pleroma_api/controllers/scrobble_controller_test.exs | |
parent | 42f76306e7fe69fc51be00285a4fef8569f54989 (diff) | |
parent | e7c49d51d724680c1f19888ea409687733753c7b (diff) | |
download | pleroma-e8493431bfc16977e43715bf8bdb09ac46580028.tar.gz pleroma-e8493431bfc16977e43715bf8bdb09ac46580028.zip |
Merge branch 'release/2.0.0' into 'stable'
Release/2.0.0
See merge request pleroma/pleroma!2273
Diffstat (limited to 'test/web/pleroma_api/controllers/scrobble_controller_test.exs')
-rw-r--r-- | test/web/pleroma_api/controllers/scrobble_controller_test.exs | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/test/web/pleroma_api/controllers/scrobble_controller_test.exs b/test/web/pleroma_api/controllers/scrobble_controller_test.exs new file mode 100644 index 000000000..1b945040c --- /dev/null +++ b/test/web/pleroma_api/controllers/scrobble_controller_test.exs @@ -0,0 +1,58 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/> +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.PleromaAPI.ScrobbleControllerTest do + use Pleroma.Web.ConnCase + + alias Pleroma.Web.CommonAPI + + describe "POST /api/v1/pleroma/scrobble" do + test "works correctly" do + %{conn: conn} = oauth_access(["write"]) + + conn = + post(conn, "/api/v1/pleroma/scrobble", %{ + "title" => "lain radio episode 1", + "artist" => "lain", + "album" => "lain radio", + "length" => "180000" + }) + + assert %{"title" => "lain radio episode 1"} = json_response(conn, 200) + end + end + + describe "GET /api/v1/pleroma/accounts/:id/scrobbles" do + test "works correctly" do + %{user: user, conn: conn} = oauth_access(["read"]) + + {:ok, _activity} = + CommonAPI.listen(user, %{ + "title" => "lain radio episode 1", + "artist" => "lain", + "album" => "lain radio" + }) + + {:ok, _activity} = + CommonAPI.listen(user, %{ + "title" => "lain radio episode 2", + "artist" => "lain", + "album" => "lain radio" + }) + + {:ok, _activity} = + CommonAPI.listen(user, %{ + "title" => "lain radio episode 3", + "artist" => "lain", + "album" => "lain radio" + }) + + conn = get(conn, "/api/v1/pleroma/accounts/#{user.id}/scrobbles") + + result = json_response(conn, 200) + + assert length(result) == 3 + end + end +end |