summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatija Čupić <matteeyah@gmail.com>2018-03-29 19:39:30 +0200
committerMatija Čupić <matteeyah@gmail.com>2018-03-29 19:39:30 +0200
commit3447d71e73a538dbcb30fb478474bdd526ff38a4 (patch)
tree55a1979153b026a735f1dc4952ad4b093f28e64f
parentddabac46b918611ecaa82ea5af554a7f0f9b7407 (diff)
downloadgitlab-ce-3447d71e73a538dbcb30fb478474bdd526ff38a4.tar.gz
Add specs for empty states .matches? methods
-rw-r--r--spec/lib/gitlab/ci/status/build/canceled_spec.rb22
-rw-r--r--spec/lib/gitlab/ci/status/build/created_spec.rb22
-rw-r--r--spec/lib/gitlab/ci/status/build/manual_spec.rb23
-rw-r--r--spec/lib/gitlab/ci/status/build/pending_spec.rb22
-rw-r--r--spec/lib/gitlab/ci/status/build/skipped_spec.rb22
5 files changed, 110 insertions, 1 deletions
diff --git a/spec/lib/gitlab/ci/status/build/canceled_spec.rb b/spec/lib/gitlab/ci/status/build/canceled_spec.rb
index 689b4237b6e..c6b5cc68770 100644
--- a/spec/lib/gitlab/ci/status/build/canceled_spec.rb
+++ b/spec/lib/gitlab/ci/status/build/canceled_spec.rb
@@ -1,6 +1,8 @@
require 'spec_helper'
describe Gitlab::Ci::Status::Build::Canceled do
+ let(:user) { create(:user) }
+
subject do
described_class.new(double('subject'))
end
@@ -8,4 +10,24 @@ describe Gitlab::Ci::Status::Build::Canceled do
describe '#illustration' do
it { expect(subject.illustration).to include(:image, :size, :title) }
end
+
+ describe '.matches?' do
+ subject {described_class.matches?(build, user) }
+
+ context 'when build is canceled' do
+ let(:build) { create(:ci_build, :canceled) }
+
+ it 'is a correct match' do
+ expect(subject).to be true
+ end
+ end
+
+ context 'when build is not canceled' do
+ let(:build) { create(:ci_build) }
+
+ it 'does not match' do
+ expect(subject).to be false
+ end
+ end
+ end
end
diff --git a/spec/lib/gitlab/ci/status/build/created_spec.rb b/spec/lib/gitlab/ci/status/build/created_spec.rb
index ace553c67a1..8bdfe6ef7a2 100644
--- a/spec/lib/gitlab/ci/status/build/created_spec.rb
+++ b/spec/lib/gitlab/ci/status/build/created_spec.rb
@@ -1,6 +1,8 @@
require 'spec_helper'
describe Gitlab::Ci::Status::Build::Created do
+ let(:user) { create(:user) }
+
subject do
described_class.new(double('subject'))
end
@@ -8,4 +10,24 @@ describe Gitlab::Ci::Status::Build::Created do
describe '#illustration' do
it { expect(subject.illustration).to include(:image, :size, :title, :content) }
end
+
+ describe '.matches?' do
+ subject {described_class.matches?(build, user) }
+
+ context 'when build is created' do
+ let(:build) { create(:ci_build, :created) }
+
+ it 'is a correct match' do
+ expect(subject).to be true
+ end
+ end
+
+ context 'when build is not created' do
+ let(:build) { create(:ci_build) }
+
+ it 'does not match' do
+ expect(subject).to be false
+ end
+ end
+ end
end
diff --git a/spec/lib/gitlab/ci/status/build/manual_spec.rb b/spec/lib/gitlab/ci/status/build/manual_spec.rb
index c8c650d4e56..6386296f992 100644
--- a/spec/lib/gitlab/ci/status/build/manual_spec.rb
+++ b/spec/lib/gitlab/ci/status/build/manual_spec.rb
@@ -1,8 +1,9 @@
require 'spec_helper'
describe Gitlab::Ci::Status::Build::Manual do
+ let(:user) { create(:user) }
+
subject do
- user = create(:user)
build = create(:ci_build, :manual)
described_class.new(Gitlab::Ci::Status::Core.new(build, user))
end
@@ -10,4 +11,24 @@ describe Gitlab::Ci::Status::Build::Manual do
describe '#illustration' do
it { expect(subject.illustration).to include(:image, :size, :title, :content) }
end
+
+ describe '.matches?' do
+ subject {described_class.matches?(build, user) }
+
+ context 'when build is manual' do
+ let(:build) { create(:ci_build, :manual) }
+
+ it 'is a correct match' do
+ expect(subject).to be true
+ end
+ end
+
+ context 'when build is not manual' do
+ let(:build) { create(:ci_build) }
+
+ it 'does not match' do
+ expect(subject).to be false
+ end
+ end
+ end
end
diff --git a/spec/lib/gitlab/ci/status/build/pending_spec.rb b/spec/lib/gitlab/ci/status/build/pending_spec.rb
index 2c114313536..4cf70828e53 100644
--- a/spec/lib/gitlab/ci/status/build/pending_spec.rb
+++ b/spec/lib/gitlab/ci/status/build/pending_spec.rb
@@ -1,6 +1,8 @@
require 'spec_helper'
describe Gitlab::Ci::Status::Build::Pending do
+ let(:user) { create(:user) }
+
subject do
described_class.new(double('subject'))
end
@@ -8,4 +10,24 @@ describe Gitlab::Ci::Status::Build::Pending do
describe '#illustration' do
it { expect(subject.illustration).to include(:image, :size, :title, :content) }
end
+
+ describe '.matches?' do
+ subject {described_class.matches?(build, user) }
+
+ context 'when build is pending' do
+ let(:build) { create(:ci_build, :pending) }
+
+ it 'is a correct match' do
+ expect(subject).to be true
+ end
+ end
+
+ context 'when build is not pending' do
+ let(:build) { create(:ci_build, :success) }
+
+ it 'does not match' do
+ expect(subject).to be false
+ end
+ end
+ end
end
diff --git a/spec/lib/gitlab/ci/status/build/skipped_spec.rb b/spec/lib/gitlab/ci/status/build/skipped_spec.rb
index 4667d10e6f6..46f6933025a 100644
--- a/spec/lib/gitlab/ci/status/build/skipped_spec.rb
+++ b/spec/lib/gitlab/ci/status/build/skipped_spec.rb
@@ -1,6 +1,8 @@
require 'spec_helper'
describe Gitlab::Ci::Status::Build::Skipped do
+ let(:user) { create(:user) }
+
subject do
described_class.new(double('subject'))
end
@@ -8,4 +10,24 @@ describe Gitlab::Ci::Status::Build::Skipped do
describe '#illustration' do
it { expect(subject.illustration).to include(:image, :size, :title) }
end
+
+ describe '.matches?' do
+ subject {described_class.matches?(build, user) }
+
+ context 'when build is skipped' do
+ let(:build) { create(:ci_build, :skipped) }
+
+ it 'is a correct match' do
+ expect(subject).to be true
+ end
+ end
+
+ context 'when build is not skipped' do
+ let(:build) { create(:ci_build) }
+
+ it 'does not match' do
+ expect(subject).to be false
+ end
+ end
+ end
end