diff options
author | James Lopez <james@jameslopez.es> | 2018-04-12 10:58:49 +0300 |
---|---|---|
committer | James Lopez <james@jameslopez.es> | 2018-04-12 10:58:49 +0300 |
commit | 0015fc7d205cd86d0347385372791e470ff3ed3a (patch) | |
tree | af2ab0a4d5f602710968fe01736ec60cacee09e4 /spec | |
parent | 24a654db62631ecf08687530e6ca93002340d36a (diff) | |
parent | c393a44f2fa5e161c8055bc589f10d4ee2e1d8a0 (diff) |
Merge remote-tracking branch 'origin/10-7-stable' into 10-7-stable-prepare-rc5
Diffstat (limited to 'spec')
-rw-r--r-- | spec/lib/gitlab/ci/variables/collection/item_spec.rb | 35 |
1 files changed, 30 insertions, 5 deletions
diff --git a/spec/lib/gitlab/ci/variables/collection/item_spec.rb b/spec/lib/gitlab/ci/variables/collection/item_spec.rb index bf9208f1ff4..e79f0a7f257 100644 --- a/spec/lib/gitlab/ci/variables/collection/item_spec.rb +++ b/spec/lib/gitlab/ci/variables/collection/item_spec.rb @@ -5,6 +5,18 @@ describe Gitlab::Ci::Variables::Collection::Item do { key: 'VAR', value: 'something', public: true } end + describe '.new' do + it 'raises error if unknown key i specified' do + expect { described_class.new(key: 'VAR', value: 'abc', files: true) } + .to raise_error ArgumentError, 'unknown keyword: files' + end + + it 'raises error when required keywords are not specified' do + expect { described_class.new(key: 'VAR') } + .to raise_error ArgumentError, 'missing keyword: value' + end + end + describe '.fabricate' do it 'supports using a hash' do resource = described_class.fabricate(variable) @@ -47,12 +59,25 @@ describe Gitlab::Ci::Variables::Collection::Item do end describe '#to_runner_variable' do - it 'returns a runner-compatible hash representation' do - runner_variable = described_class - .new(**variable) - .to_runner_variable + context 'when variable is not a file-related' do + it 'returns a runner-compatible hash representation' do + runner_variable = described_class + .new(**variable) + .to_runner_variable + + expect(runner_variable).to eq variable + end + end + + context 'when variable is file-related' do + it 'appends file description component' do + runner_variable = described_class + .new(key: 'VAR', value: 'value', file: true) + .to_runner_variable - expect(runner_variable).to eq variable + expect(runner_variable) + .to eq(key: 'VAR', value: 'value', public: true, file: true) + end end end end |