summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-11-04 19:11:18 +0200
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-11-04 19:11:18 +0200
commitffe0fe0114710e0234d03a1208151a80d277f9e4 (patch)
treeb37312d32cbc79d4809d90ccede4c252e30ef76d
parent0b66f65d66c59dc00387272935bd17878ea13b95 (diff)
downloadgitlab-ci-ffe0fe0114710e0234d03a1208151a80d277f9e4.tar.gz
Fix tests
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
-rw-r--r--app/controllers/projects_controller.rb2
-rw-r--r--lib/api/projects.rb1
-rw-r--r--spec/factories/job.rb6
-rw-r--r--spec/factories/projects.rb4
-rw-r--r--spec/features/projects_spec.rb2
-rw-r--r--spec/models/build_spec.rb6
-rw-r--r--spec/models/project_spec.rb2
-rw-r--r--spec/services/create_builds_service_spec.rb (renamed from spec/services/create_build_service_spec.rb)10
8 files changed, 21 insertions, 12 deletions
diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb
index 9b1efb5..f21578f 100644
--- a/app/controllers/projects_controller.rb
+++ b/app/controllers/projects_controller.rb
@@ -75,7 +75,7 @@ class ProjectsController < ApplicationController
def build
@builds = CreateBuildsService.new.execute(@project, params.dup)
- if @builds.any?
+ if @builds.any? && @builds.any?(&:persisted?)
head 201
else
head 400
diff --git a/lib/api/projects.rb b/lib/api/projects.rb
index 5f4bfcf..d6cd689 100644
--- a/lib/api/projects.rb
+++ b/lib/api/projects.rb
@@ -72,6 +72,7 @@ module API
}
project = Project.new(filtered_params)
+ project.build_default_job
if project.save
present project, :with => Entities::Project
diff --git a/spec/factories/job.rb b/spec/factories/job.rb
new file mode 100644
index 0000000..93f2ff7
--- /dev/null
+++ b/spec/factories/job.rb
@@ -0,0 +1,6 @@
+FactoryGirl.define do
+ factory :job do
+ name 'rspec'
+ commands 'bundle exec rspec spec'
+ end
+end
diff --git a/spec/factories/projects.rb b/spec/factories/projects.rb
index b28b4ab..c995fff 100644
--- a/spec/factories/projects.rb
+++ b/spec/factories/projects.rb
@@ -36,5 +36,9 @@ FactoryGirl.define do
factory :project do
token 'iPWx6WM4lhHNedGfBpPJNP'
end
+
+ before :create do |project|
+ project.build_default_job
+ end
end
end
diff --git a/spec/features/projects_spec.rb b/spec/features/projects_spec.rb
index 7a337ef..c6320b7 100644
--- a/spec/features/projects_spec.rb
+++ b/spec/features/projects_spec.rb
@@ -21,7 +21,7 @@ describe "Projects" do
end
it { page.should have_content @project.name }
- it { page.should have_content 'All builds' }
+ it { page.should have_content 'All commits' }
end
describe "GET /projects/:id/edit" do
diff --git a/spec/models/build_spec.rb b/spec/models/build_spec.rb
index 6e88f31..d1a3a16 100644
--- a/spec/models/build_spec.rb
+++ b/spec/models/build_spec.rb
@@ -141,12 +141,6 @@ describe Build do
end
end
- describe :commands do
- subject { build.commands }
-
- it { should eq(commit.project.scripts) }
- end
-
describe :timeout do
subject { build.timeout }
diff --git a/spec/models/project_spec.rb b/spec/models/project_spec.rb
index 0e29b5c..a0563f9 100644
--- a/spec/models/project_spec.rb
+++ b/spec/models/project_spec.rb
@@ -112,6 +112,8 @@ describe Project do
let(:project_dump) { File.read(Rails.root.join('spec/support/gitlab_stubs/raw_project.yml')) }
let(:parsed_project) { Project.parse(project_dump) }
+ before { parsed_project.build_default_job }
+
it { parsed_project.should be_valid }
it { parsed_project.should be_kind_of(Project) }
it { parsed_project.name.should eq("GitLab / api.gitlab.org") }
diff --git a/spec/services/create_build_service_spec.rb b/spec/services/create_builds_service_spec.rb
index 11b4588..4c79988 100644
--- a/spec/services/create_build_service_spec.rb
+++ b/spec/services/create_builds_service_spec.rb
@@ -1,12 +1,13 @@
require 'spec_helper'
-describe CreateBuildService do
- let(:service) { CreateBuildService.new }
+describe CreateBuildsService do
+ let(:service) { CreateBuildsService.new }
let(:project) { FactoryGirl.create(:project) }
describe :execute do
context 'valid params' do
- let(:build) { service.execute(project, ref: 'refs/heads/master', before: '00000000', after: '31das312') }
+ let(:builds) { service.execute(project, ref: 'refs/heads/master', before: '00000000', after: '31das312') }
+ let(:build) { builds.first }
it { build.should be_kind_of(Build) }
it { build.should be_pending }
@@ -16,7 +17,8 @@ describe CreateBuildService do
end
context 'without params' do
- let(:build) { service.execute(project, {}) }
+ let(:builds) { service.execute(project, {}) }
+ let(:build) { builds.first }
it { build.should be_kind_of(Build) }
it { build.should be_pending }