FIX: quote whole post button was broken
This commit is contained in:
parent
5fda4a613d
commit
dc0a758ec6
|
@ -181,7 +181,7 @@ class PostSerializer < BasicPostSerializer
|
|||
end
|
||||
|
||||
def include_raw?
|
||||
@add_raw.present? && (scope.user.try(:staff?) || yours)
|
||||
@add_raw.present? && (!object.hidden || scope.user.try(:staff?) || yours)
|
||||
end
|
||||
|
||||
def include_link_counts?
|
||||
|
|
|
@ -77,8 +77,7 @@ describe PostSerializer do
|
|||
|
||||
context "a hidden post with add_raw enabled" do
|
||||
let(:user) { Fabricate.build(:user) }
|
||||
let(:raw) { "Offensive stuff here!" }
|
||||
let(:post) { Fabricate.build(:post, raw: raw, user: user, hidden: true, hidden_reason_id: Post.hidden_reasons[:flag_threshold_reached]) }
|
||||
let(:raw) { "Raw contents of the post." }
|
||||
|
||||
def serialized_post_for_user(u)
|
||||
s = PostSerializer.new(post, scope: Guardian.new(u), root: false)
|
||||
|
@ -86,22 +85,37 @@ describe PostSerializer do
|
|||
s.as_json
|
||||
end
|
||||
|
||||
it "shows the raw post only if authorized to see it" do
|
||||
serialized_post_for_user(user)[:raw].should == raw
|
||||
serialized_post_for_user(nil)[:raw].should be_nil
|
||||
serialized_post_for_user(Fabricate(:user))[:raw].should be_nil
|
||||
serialized_post_for_user(Fabricate(:moderator))[:raw].should == raw
|
||||
serialized_post_for_user(Fabricate(:admin))[:raw].should == raw
|
||||
context "a public post" do
|
||||
let(:post) { Fabricate.build(:post, raw: raw, user: user) }
|
||||
|
||||
it "includes the raw post for everyone" do
|
||||
serialized_post_for_user(user)[:raw].should == raw
|
||||
serialized_post_for_user(nil)[:raw].should == raw
|
||||
serialized_post_for_user(Fabricate(:user))[:raw].should == raw
|
||||
serialized_post_for_user(Fabricate(:moderator))[:raw].should == raw
|
||||
serialized_post_for_user(Fabricate(:admin))[:raw].should == raw
|
||||
end
|
||||
end
|
||||
|
||||
it "can view edit history only if authorized" do
|
||||
serialized_post_for_user(user)[:can_view_edit_history].should == true
|
||||
serialized_post_for_user(nil)[:can_view_edit_history].should == false
|
||||
serialized_post_for_user(Fabricate(:user))[:can_view_edit_history].should == false
|
||||
serialized_post_for_user(Fabricate(:moderator))[:can_view_edit_history].should == true
|
||||
serialized_post_for_user(Fabricate(:admin))[:can_view_edit_history].should == true
|
||||
end
|
||||
context "a hidden post" do
|
||||
let(:post) { Fabricate.build(:post, raw: raw, user: user, hidden: true, hidden_reason_id: Post.hidden_reasons[:flag_threshold_reached]) }
|
||||
|
||||
it "shows the raw post only if authorized to see it" do
|
||||
serialized_post_for_user(user)[:raw].should == raw
|
||||
serialized_post_for_user(nil)[:raw].should be_nil
|
||||
serialized_post_for_user(Fabricate(:user))[:raw].should be_nil
|
||||
serialized_post_for_user(Fabricate(:moderator))[:raw].should == raw
|
||||
serialized_post_for_user(Fabricate(:admin))[:raw].should == raw
|
||||
end
|
||||
|
||||
it "can view edit history only if authorized" do
|
||||
serialized_post_for_user(user)[:can_view_edit_history].should == true
|
||||
serialized_post_for_user(nil)[:can_view_edit_history].should == false
|
||||
serialized_post_for_user(Fabricate(:user))[:can_view_edit_history].should == false
|
||||
serialized_post_for_user(Fabricate(:moderator))[:can_view_edit_history].should == true
|
||||
serialized_post_for_user(Fabricate(:admin))[:can_view_edit_history].should == true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue