summaryrefslogtreecommitdiff
path: root/spec/lib
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzesiek.bizon@gmail.com>2018-08-16 15:33:24 +0200
committerGrzegorz Bizon <grzesiek.bizon@gmail.com>2018-09-04 14:17:01 +0200
commit2f05e34b3c909aaf0d31ab6e10809bf3d0fc6626 (patch)
tree0c3a962ab0559d49ca8604ae8ed68addb5e3b73a /spec/lib
parent2c41fbb14821c8028e389c270d2f39380e5fbe04 (diff)
downloadgitlab-ce-2f05e34b3c909aaf0d31ab6e10809bf3d0fc6626.tar.gz
Add test for simple ciricular dependency in `extends`
Diffstat (limited to 'spec/lib')
-rw-r--r--spec/lib/gitlab/ci/config/extendable/collection_spec.rb22
1 files changed, 20 insertions, 2 deletions
diff --git a/spec/lib/gitlab/ci/config/extendable/collection_spec.rb b/spec/lib/gitlab/ci/config/extendable/collection_spec.rb
index e3be0704f1a..08c929ef70d 100644
--- a/spec/lib/gitlab/ci/config/extendable/collection_spec.rb
+++ b/spec/lib/gitlab/ci/config/extendable/collection_spec.rb
@@ -116,8 +116,7 @@ describe Gitlab::Ci::Config::Extendable::Collection do
end
end
- pending 'when invalid `extends` is specified'
- context 'when circular dependecy has been detected' do
+ context 'when nested circular dependecy has been detected' do
let(:hash) do
{
test: {
@@ -145,5 +144,24 @@ describe Gitlab::Ci::Config::Extendable::Collection do
.to raise_error(described_class::CircularDependencyError)
end
end
+
+ context 'when circular dependecy to self has been detected' do
+ let(:hash) do
+ {
+ test: {
+ extends: 'test',
+ script: 'ls',
+ only: { refs: %w[master] }
+ }
+ }
+ end
+
+ it 'raises an error' do
+ expect { subject.extend! }
+ .to raise_error(described_class::CircularDependencyError)
+ end
+ end
+
+ pending 'when invalid `extends` is specified'
end
end