2
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2026-03-03 23:54:20 +08:00
discourse/spec/serializers/flagged_user_serializer_spec.rb
Krzysztof Kotlarek f97c5fe21c
UX: Display user's email in review queue insights (#36344)
When moderators review flagged posts, they can now see the email address of the flagged user in the user insights section. This additional context helps moderators more quickly identify spam accounts and determine if a post should be flagged as spam.
Feature respects `moderators_view_emails` site setting. 
  
<img width="795" height="650" alt="Screenshot 2025-12-01 at 4 14 38 pm"
src="https://github.com/user-attachments/assets/f3db2889-e18a-4941-8a4c-bf777a1fb81b"
/>
2025-12-02 09:10:56 +08:00

24 lines
878 B
Ruby

# frozen_string_literal: true
RSpec.describe FlaggedUserSerializer do
fab!(:admin)
fab!(:moderator)
fab!(:flagged_user) { Fabricate(:user, email: "flagged@example.com", refresh_auto_groups: true) }
it "includes email for admins and moderators with permission" do
serializer = FlaggedUserSerializer.new(flagged_user, scope: Guardian.new(admin), root: false)
json = serializer.as_json
expect(json[:email]).to eq("flagged@example.com")
serializer =
FlaggedUserSerializer.new(flagged_user, scope: Guardian.new(moderator), root: false)
json = serializer.as_json
expect(json[:email]).to be_nil
SiteSetting.moderators_view_emails = true
serializer =
FlaggedUserSerializer.new(flagged_user, scope: Guardian.new(moderator), root: false)
json = serializer.as_json
expect(json[:email]).to eq("flagged@example.com")
end
end