X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=test%2Fweb%2Ftwitter_api%2Ftwitter_api_controller_test.exs;h=8c689d7d3efddf02f9f15179cf135b45617ce2bb;hb=67bfa19b35af6ae4a064b02f3888dd11a218f6fb;hp=5ccced73941a40314e2ed3532fddc002fa3ad7f7;hpb=1e6491ec96c3eb4e7ce1ca76b521b892206fac03;p=akkoma diff --git a/test/web/twitter_api/twitter_api_controller_test.exs b/test/web/twitter_api/twitter_api_controller_test.exs index 5ccced739..8c689d7d3 100644 --- a/test/web/twitter_api/twitter_api_controller_test.exs +++ b/test/web/twitter_api/twitter_api_controller_test.exs @@ -24,6 +24,24 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do end end + describe "POST /api/account/most_recent_notification" do + setup [:valid_user] + test "without valid credentials", %{conn: conn} do + conn = post conn, "/api/account/most_recent_notification.json" + assert json_response(conn, 403) == %{"error" => "Invalid credentials."} + end + + test "with credentials", %{conn: conn, user: user} do + conn = conn + |> with_credentials(user.nickname, "test") + |> post("/api/account/most_recent_notification.json", %{id: "200"}) + + assert json_response(conn, 200) + user = User.get_by_nickname(user.nickname) + assert user.info["most_recent_notification"] == 200 + end + end + describe "POST /statuses/update.json" do setup [:valid_user] test "without valid credentials", %{conn: conn} do @@ -85,9 +103,9 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do describe "GET /statusnet/conversation/:id.json" do test "returns the statuses in the conversation", %{conn: conn} do {:ok, _user} = UserBuilder.insert - {:ok, _activity} = ActivityBuilder.insert(%{"context" => "2hu"}) - {:ok, _activity_two} = ActivityBuilder.insert(%{"context" => "2hu"}) - {:ok, _activity_three} = ActivityBuilder.insert(%{"context" => "3hu"}) + {:ok, _activity} = ActivityBuilder.insert(%{"type" => "Create", "context" => "2hu"}) + {:ok, _activity_two} = ActivityBuilder.insert(%{"type" => "Create", "context" => "2hu"}) + {:ok, _activity_three} = ActivityBuilder.insert(%{"type" => "Create", "context" => "3hu"}) {:ok, object} = Object.context_mapping("2hu") |> Repo.insert conn = conn @@ -401,6 +419,42 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do end end + describe "GET /api/statuses/followers" do + test "it returns a user's followers", %{conn: conn} do + user = insert(:user) + follower_one = insert(:user) + follower_two = insert(:user) + not_follower = insert(:user) + + {:ok, follower_one} = User.follow(follower_one, user) + {:ok, follower_two} = User.follow(follower_two, user) + + conn = conn + |> assign(:user, user) + |> get("/api/statuses/followers") + + assert json_response(conn, 200) == UserView.render("index.json", %{users: [follower_one, follower_two], for: user}) + end + end + + describe "GET /api/statuses/friends" do + test "it returns a user's friends", %{conn: conn} do + user = insert(:user) + followed_one = insert(:user) + followed_two = insert(:user) + not_followed = insert(:user) + + {:ok, user} = User.follow(user, followed_one) + {:ok, user} = User.follow(user, followed_two) + + conn = conn + |> assign(:user, user) + |> get("/api/statuses/friends") + + assert json_response(conn, 200) == UserView.render("index.json", %{users: [followed_one, followed_two], for: user}) + end + end + defp valid_user(_context) do user = insert(:user) [user: user]