discourse/spec/models/user_avatar_spec.rb

37 lines
1.0 KiB
Ruby

require 'spec_helper'
describe UserAvatar do
let(:avatar){
user = Fabricate(:user)
user.create_user_avatar!
}
it 'can generate a system avatar' do
avatar.update_system_avatar!
avatar.system_upload.should_not be_nil
end
it 'corrects old system avatars on refresh' do
upload = Fabricate(:upload)
user = Fabricate(:user, uploaded_avatar_id: upload.id)
avatar = UserAvatar.create!(user_id: user.id, system_upload_id: upload.id)
avatar.update_system_avatar!
user.reload
user.uploaded_avatar_id.should_not == upload.id
avatar.system_upload_id.should == user.uploaded_avatar_id
end
it 'can update gravatars' do
temp = Tempfile.new('test')
temp.binmode
# tiny valid png
temp.write(Base64.decode64("R0lGODlhAQABALMAAAAAAIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A/wD//wBiZCH5BAEAAA8ALAAAAAABAAEAAAQC8EUAOw=="))
temp.rewind
FileHelper.expects(:download).returns(temp)
avatar.update_gravatar!
temp.unlink
avatar.gravatar_upload.should_not be_nil
end
end