gitlab-ce/spec/models/concerns/ci/metadatable_spec.rb

30 lines
779 B
Ruby

# frozen_string_literal: true
require 'spec_helper'
RSpec.describe Ci::Metadatable, feature_category: :continuous_integration do
describe '#timeout_value' do
using RSpec::Parameterized::TableSyntax
let(:ci_processable) { build(:ci_processable, metadata: ci_build_metadata) }
let(:ci_build_metadata) { build(:ci_build_metadata, timeout: metadata_timeout) }
subject(:timeout_value) { ci_processable.timeout_value }
before do
allow(ci_processable).to receive_messages(timeout: build_timeout)
end
where(:build_timeout, :metadata_timeout, :expected_timeout) do
nil | nil | nil
nil | 100 | 100
200 | nil | 200
200 | 100 | 200
end
with_them do
it { is_expected.to eq(expected_timeout) }
end
end
end