logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma
commit: 6706cdce65f8b2dda55380dbfdad5e41e600af2d
parent: 156c8a508846bd6d4e55f666c4ecc6f0129ac5fc
Author: lain <lain@soykaf.club>
Date:   Wed, 13 May 2020 10:34:04 +0000

Merge branch 'openapi/suggestions' into 'develop'

Add OpenAPI spec for SuggestionController

See merge request pleroma/pleroma!2525

Diffstat:

Mlib/pleroma/web/mastodon_api/controllers/suggestion_controller.ex21++++++++++++++++++---
Mtest/web/mastodon_api/controllers/suggestion_controller_test.exs2+-
2 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/lib/pleroma/web/mastodon_api/controllers/suggestion_controller.ex b/lib/pleroma/web/mastodon_api/controllers/suggestion_controller.ex @@ -5,11 +5,26 @@ defmodule Pleroma.Web.MastodonAPI.SuggestionController do use Pleroma.Web, :controller - alias Pleroma.Plugs.OAuthScopesPlug - require Logger - plug(OAuthScopesPlug, %{scopes: ["read"]} when action == :index) + plug(Pleroma.Web.ApiSpec.CastAndValidate) + plug(Pleroma.Plugs.OAuthScopesPlug, %{scopes: ["read"]} when action == :index) + + def open_api_operation(action) do + operation = String.to_existing_atom("#{action}_operation") + apply(__MODULE__, operation, []) + end + + def index_operation do + %OpenApiSpex.Operation{ + tags: ["Suggestions"], + summary: "Follow suggestions (Not implemented)", + operationId: "SuggestionController.index", + responses: %{ + 200 => Pleroma.Web.ApiSpec.Helpers.empty_array_response() + } + } + end @doc "GET /api/v1/suggestions" def index(conn, params), diff --git a/test/web/mastodon_api/controllers/suggestion_controller_test.exs b/test/web/mastodon_api/controllers/suggestion_controller_test.exs @@ -11,7 +11,7 @@ defmodule Pleroma.Web.MastodonAPI.SuggestionControllerTest do res = conn |> get("/api/v1/suggestions") - |> json_response(200) + |> json_response_and_validate_schema(200) assert res == [] end