travis-api/spec/v3/renderer/avatar_url_spec.rb
2015-04-15 16:22:16 +02:00

45 lines
1.4 KiB
Ruby

require 'spec_helper'
describe Travis::API::V3::Renderer::AvatarURL do
let(:object) { Object.new }
subject { Travis::API::V3::Renderer::AvatarURL.avatar_url(object) }
describe 'without any useful information' do
it { should be_nil }
end
describe 'with valid avatar_url' do
let(:object) { stub('input', avatar_url: "http://foo") }
it { should be == "http://foo" }
end
describe 'with valid avatar_url' do
let(:object) { stub('input', gravatar_url: "http://foo") }
it { should be == "http://foo" }
end
describe 'with valid gravatar_id' do
let(:object) { stub('input', gravatar_id: "foo") }
it { should be == "https://0.gravatar.com/avatar/foo" }
end
describe 'with valid avatar_url and gravatar_id' do
let(:object) { stub('input', avatar_url: "http://foo", gravatar_id: "https://0.gravatar.com/avatar/foo") }
it { should be == "http://foo" }
end
describe 'with missing avatar_url and valid gravatar_id' do
let(:object) { stub('input', avatar_url: nil, gravatar_id: "foo") }
it { should be == "https://0.gravatar.com/avatar/foo" }
end
describe 'with email' do
let(:object) { stub('input', email: "foo") }
it { should be == "https://0.gravatar.com/avatar/acbd18db4cc2f85cedef654fccc4a4d8" }
end
describe 'with missing email' do
let(:object) { stub('input', email: nil) }
it { should be_nil }
end
end