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