mirror of
https://github.com/discourse/discourse.git
synced 2025-05-22 16:21:18 +08:00
SECURITY: Make sure uploaded_urls have corresponding upload records
This commit is contained in:
@ -6,6 +6,23 @@ describe UserProfile do
|
||||
expect(user.user_profile).to be_present
|
||||
end
|
||||
|
||||
context "url validation" do
|
||||
let(:user) { Fabricate(:user) }
|
||||
let(:upload) { Fabricate(:upload) }
|
||||
|
||||
it "ensures profile_background is valid" do
|
||||
expect(Fabricate.build(:user_profile, user: user, profile_background: "---%")).not_to be_valid
|
||||
expect(Fabricate.build(:user_profile, user: user, profile_background: "http://example.com/made-up.jpg")).not_to be_valid
|
||||
expect(Fabricate.build(:user_profile, user: user, profile_background: upload.url)).to be_valid
|
||||
end
|
||||
|
||||
it "ensures background_url is valid" do
|
||||
expect(Fabricate.build(:user_profile, user: user, card_background: ";test")).not_to be_valid
|
||||
expect(Fabricate.build(:user_profile, user: user, card_background: "http://example.com/no.jpg")).not_to be_valid
|
||||
expect(Fabricate.build(:user_profile, user: user, card_background: upload.url)).to be_valid
|
||||
end
|
||||
end
|
||||
|
||||
describe 'rebaking' do
|
||||
it 'correctly rebakes bio' do
|
||||
user_profile = Fabricate(:evil_trout).user_profile
|
||||
|
Reference in New Issue
Block a user