summaryrefslogtreecommitdiff
path: root/spec/services
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-01-30 10:48:12 +0200
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-01-30 10:48:12 +0200
commit595baf5f70374c9acf63c690e5ac786df345fff1 (patch)
treeb44ff24b635f6e64fce7d29c3618b5965a58b837 /spec/services
parent4ce556c834e564bf6a37ae93c0ca5d331cf5d822 (diff)
downloadgitlab-ci-595baf5f70374c9acf63c690e5ac786df345fff1.tar.gz
Add specs for image_for_build_service
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'spec/services')
-rw-r--r--spec/services/image_for_build_service_spec.rb43
1 files changed, 43 insertions, 0 deletions
diff --git a/spec/services/image_for_build_service_spec.rb b/spec/services/image_for_build_service_spec.rb
new file mode 100644
index 0000000..2a65c48
--- /dev/null
+++ b/spec/services/image_for_build_service_spec.rb
@@ -0,0 +1,43 @@
+require 'spec_helper'
+
+describe ImageForBuildService do
+ let(:service) { ImageForBuildService.new }
+ let(:project) { FactoryGirl.create(:project) }
+ let(:build) { FactoryGirl.create(:build, project: project, ref: 'master') }
+
+ describe :execute do
+ before { build }
+
+ context 'branch name' do
+ let(:image) { service.execute(project, ref: 'master') }
+
+ it { image.should be_kind_of(OpenStruct) }
+ it { image.path.to_s.should include('public/running.png') }
+ it { image.name.should == 'running.png' }
+ end
+
+ context 'unknown branch name' do
+ let(:image) { service.execute(project, ref: 'feature') }
+
+ it { image.should be_kind_of(OpenStruct) }
+ it { image.path.to_s.should include('public/unknown.png') }
+ it { image.name.should == 'unknown.png' }
+ end
+
+ context 'commit sha' do
+ let(:image) { service.execute(project, sha: build.sha) }
+
+ it { image.should be_kind_of(OpenStruct) }
+ it { image.path.to_s.should include('public/running.png') }
+ it { image.name.should == 'running.png' }
+ end
+
+ context 'unknown commit sha' do
+ let(:image) { service.execute(project, sha: '0000000') }
+
+ it { image.should be_kind_of(OpenStruct) }
+ it { image.path.to_s.should include('public/unknown.png') }
+ it { image.name.should == 'unknown.png' }
+ end
+ end
+end