Skip to content
Extraits de code Groupes Projets
Valider 546f9096 rédigé par Steffen van Bergerem's avatar Steffen van Bergerem Validation de Benjamin Neff
Parcourir les fichiers

Fix 500 in html requests for post interactions

closes #7085
parent e54077c8
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -15,6 +15,7 @@
* More buttons in mobile streams are fixed [#7036](https://github.com/diaspora/diaspora/pull/7036)
* Fixed missing sidebar background in the contacts tab [#7064](https://github.com/diaspora/diaspora/pull/7064)
* Fix tags URLs in hovercards [#7075](https://github.com/diaspora/diaspora/pull/7075)
* Fix 500 in html requests for post interactions [#7085](https://github.com/diaspora/diaspora/pull/7085)
## Features
* Deleted comments will be removed when loading more comments [#7045](https://github.com/diaspora/diaspora/pull/7045)
......
......@@ -41,8 +41,13 @@ class PostsController < ApplicationController
end
def interactions
post = post_service.find!(params[:id])
respond_with PostInteractionPresenter.new(post, current_user)
respond_to do |format|
format.json {
post = post_service.find!(params[:id])
render json: PostInteractionPresenter.new(post, current_user)
}
format.any { render nothing: true, status: 406 }
end
end
def destroy
......
......@@ -136,6 +136,38 @@ describe PostsController, type: :controller do
end
end
describe "#interactions" do
context "user not signed in" do
it "returns a 401 for private posts and format json" do
get :interactions, id: post.id, format: :json
expect(response.status).to eq(401)
expect(JSON.parse(response.body)["error"]).to eq(I18n.t("devise.failure.unauthenticated"))
end
it "returns a 406 for private posts and format html" do
get :interactions, id: post.id
expect(response.status).to eq(406)
end
end
context "user signed in" do
before do
sign_in alice
end
it "shows interactions of a post as json" do
get :interactions, id: post.id, format: :json
expect(response.body).to eq(PostInteractionPresenter.new(post, alice).to_json)
end
it "returns a 406 for format html" do
sign_in alice
get :interactions, id: post.id
expect(response.status).to eq(406)
end
end
end
describe "#destroy" do
context "own post" do
before do
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter