FIX: only show agreed abd deferred flags on user's profile

This commit is contained in:
Régis Hanol
2014-10-09 16:10:16 +02:00
parent f834a5fe4e
commit 7e8c4b63f4
3 changed files with 51 additions and 6 deletions

View File

@ -697,6 +697,29 @@ describe PostsController do
response.should be_success
end
it "only shows agreed and deferred flags" do
user = Fabricate(:user)
post_agreed = create_post(user: user)
post_deferred = create_post(user: user)
post_disagreed = create_post(user: user)
moderator = Fabricate(:moderator)
PostAction.act(moderator, post_agreed, PostActionType.types[:spam])
PostAction.act(moderator, post_deferred, PostActionType.types[:off_topic])
PostAction.act(moderator, post_disagreed, PostActionType.types[:inappropriate])
admin = Fabricate(:admin)
PostAction.agree_flags!(post_agreed, admin)
PostAction.defer_flags!(post_deferred, admin)
PostAction.clear_flags!(post_disagreed, admin)
Guardian.any_instance.expects(:can_see_flagged_posts?).returns(true)
xhr :get, :flagged_posts, username: user.username
response.should be_success
JSON.parse(response.body).length.should == 2
end
end
end
@ -720,6 +743,27 @@ describe PostsController do
response.should be_success
end
it "only shows posts deleted by other users" do
user = Fabricate(:user)
admin = Fabricate(:admin)
post_not_deleted = create_post(user: user)
post_deleted_by_user = create_post(user: user)
post_deleted_by_admin = create_post(user: user)
PostDestroyer.new(user, post_deleted_by_user).destroy
PostDestroyer.new(admin, post_deleted_by_admin).destroy
Guardian.any_instance.expects(:can_see_deleted_posts?).returns(true)
xhr :get, :deleted_posts, username: user.username
response.should be_success
data = JSON.parse(response.body)
data.length.should == 1
data[0]["id"].should == post_deleted_by_admin.id
data[0]["deleted_by"]["id"].should == admin.id
end
end
end