Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzegorz.bizon@ntsn.pl>2015-12-08 13:59:46 +0300
committerGrzegorz Bizon <grzegorz.bizon@ntsn.pl>2015-12-14 11:59:08 +0300
commit65fe4bb1ceed6bae05724f3494fb57e8b09fa616 (patch)
tree8442c94b804435e8a0ac7eb73e470862724318c4 /spec
parent00155b6c694d7d9a016b532694f5049b70e9a4db (diff)
Improve gitlab ci commits specs (refactoring)
This minimizes usage of instance variables in this spec, and changes double quotation marks to single when string interpolation is not being used.
Diffstat (limited to 'spec')
-rw-r--r--spec/features/commits_spec.rb70
-rw-r--r--spec/support/stub_gitlab_calls.rb4
2 files changed, 39 insertions, 35 deletions
diff --git a/spec/features/commits_spec.rb b/spec/features/commits_spec.rb
index 130a5016b55..80ff4d3751f 100644
--- a/spec/features/commits_spec.rb
+++ b/spec/features/commits_spec.rb
@@ -1,83 +1,83 @@
require 'spec_helper'
-describe "Commits" do
+describe 'Commits' do
include CiStatusHelper
let(:project) { create(:project) }
- describe "CI" do
+ describe 'CI' do
before do
login_as :user
project.team << [@user, :master]
- @ci_project = project.ensure_gitlab_ci_project
- @commit = FactoryGirl.create :ci_commit, gl_project: project, sha: project.commit.sha
- @build = FactoryGirl.create :ci_build, commit: @commit
- @generic_status = FactoryGirl.create :generic_commit_status, commit: @commit
+ project.ensure_gitlab_ci_project
+ stub_ci_commit_to_return_yaml_file
end
- before do
- stub_ci_commit_to_return_yaml_file
+ let!(:commit) do
+ FactoryGirl.create :ci_commit, gl_project: project, sha: project.commit.sha
end
- describe "GET /:project/commits/:sha/ci" do
+ let!(:build) { FactoryGirl.create :ci_build, commit: commit }
+
+ describe 'GET /:project/commits/:sha/ci' do
before do
- visit ci_status_path(@commit)
+ visit ci_status_path(commit)
end
- it { expect(page).to have_content @commit.sha[0..7] }
- it { expect(page).to have_content @commit.git_commit_message }
- it { expect(page).to have_content @commit.git_author_name }
+ it { expect(page).to have_content commit.sha[0..7] }
+ it { expect(page).to have_content commit.git_commit_message }
+ it { expect(page).to have_content commit.git_author_name }
end
- context "Download artifacts" do
+ context 'Download artifacts' do
let(:artifacts_file) { fixture_file_upload(Rails.root + 'spec/fixtures/banana_sample.gif', 'image/gif') }
before do
- @build.update_attributes(artifacts_file: artifacts_file)
+ build.update_attributes(artifacts_file: artifacts_file)
end
it do
- visit ci_status_path(@commit)
- click_on "Download artifacts"
+ visit ci_status_path(commit)
+ click_on 'Download artifacts'
expect(page.response_headers['Content-Type']).to eq(artifacts_file.content_type)
end
end
- describe "Cancel all builds" do
- it "cancels commit" do
- visit ci_status_path(@commit)
- click_on "Cancel running"
- expect(page).to have_content "canceled"
+ describe 'Cancel all builds' do
+ it 'cancels commit' do
+ visit ci_status_path(commit)
+ click_on 'Cancel running'
+ expect(page).to have_content 'canceled'
end
end
- describe "Cancel build" do
- it "cancels build" do
- visit ci_status_path(@commit)
- click_on "Cancel"
- expect(page).to have_content "canceled"
+ describe 'Cancel build' do
+ it 'cancels build' do
+ visit ci_status_path(commit)
+ click_on 'Cancel'
+ expect(page).to have_content 'canceled'
end
end
- describe ".gitlab-ci.yml not found warning" do
+ describe '.gitlab-ci.yml not found warning' do
context 'ci service enabled' do
it "does not show warning" do
- visit ci_status_path(@commit)
- expect(page).not_to have_content ".gitlab-ci.yml not found in this commit"
+ visit ci_status_path(commit)
+ expect(page).not_to have_content '.gitlab-ci.yml not found in this commit'
end
- it "shows warning" do
+ it 'shows warning' do
stub_ci_commit_yaml_file(nil)
- visit ci_status_path(@commit)
- expect(page).to have_content ".gitlab-ci.yml not found in this commit"
+ visit ci_status_path(commit)
+ expect(page).to have_content '.gitlab-ci.yml not found in this commit'
end
end
context 'ci service disabled' do
before do
- allow_any_instance_of(GitlabCiService).to receive(:active).and_return(false)
+ stub_ci_service_disabled
stub_ci_commit_yaml_file(nil)
- visit ci_status_path(@commit)
+ visit ci_status_path(commit)
end
it 'does not show warning' do
diff --git a/spec/support/stub_gitlab_calls.rb b/spec/support/stub_gitlab_calls.rb
index 5b3eb1bfc5f..90936183824 100644
--- a/spec/support/stub_gitlab_calls.rb
+++ b/spec/support/stub_gitlab_calls.rb
@@ -21,6 +21,10 @@ module StubGitlabCalls
allow_any_instance_of(Ci::Commit).to receive(:ci_yaml_file) { ci_yaml }
end
+ def stub_ci_service_disabled
+ allow_any_instance_of(GitlabCiService).to receive(:active).and_return(false)
+ end
+
private
def gitlab_url