gitlab-org--gitlab-foss/spec/models/deployment_spec.rb

40 lines
1.3 KiB
Ruby
Raw Normal View History

2016-06-14 11:51:12 +00:00
require 'spec_helper'
describe Deployment, models: true do
subject { build(:deployment) }
it { is_expected.to belong_to(:project) }
it { is_expected.to belong_to(:environment) }
it { is_expected.to belong_to(:user) }
it { is_expected.to belong_to(:deployable) }
it { is_expected.to delegate_method(:name).to(:environment).with_prefix }
it { is_expected.to delegate_method(:commit).to(:project) }
it { is_expected.to delegate_method(:commit_title).to(:commit).as(:try) }
it { is_expected.to delegate_method(:manual_actions).to(:deployable).as(:try) }
2016-06-14 11:51:12 +00:00
it { is_expected.to validate_presence_of(:ref) }
it { is_expected.to validate_presence_of(:sha) }
2016-08-03 11:37:39 +00:00
describe '#deployed_to?' do
let(:project) { create(:project) }
let(:environment) { create(:environment, project: project) }
let(:deployment) do
2016-08-04 09:29:41 +00:00
create(:deployment, environment: environment,
sha: '5f923865dde3436854e9ceb9cdb7815618d4e849')
2016-08-03 11:37:39 +00:00
end
context 'when there is no project commit' do
it 'returns false' do
expect(deployment.deployed_to?('random-branch')).to be false
end
end
context 'when they share the same tree branch' do
it 'returns true' do
expect(deployment.deployed_to?('HEAD')).to be true
end
end
end
2016-06-14 11:51:12 +00:00
end