ba68facf8d
- Add page titles to CI settings. - Fix CI admin navigation. - Remove duplicated scope. - Use monospace font for commit sha. - Add page title and header title to build page. - Proper authorization for cancel/retry builds. - Use gitlab pagination theme for builds and group members. - Don't paginate builds widget on build page. - Add badges to commit page Changes/Builds tabs. - Add "Builds" to commit Builds tab page title. - Add and use Ci::Build#retryable? method. - Add CI::Build#retried? method. - Allow all failed commit builds to be retried. - Proper authorization for cancel/retry all builds. - Remove unused param. - Use time_ago_with_tooltip where appropriate. - Tweak builds index text - Remove duplication between builds/build and commit_statuses/commit_status. - Use POST rather than GET for canceling and retrying builds. - Remove redundant URL helpers. - Add build ID to build page. - Link branch name on build page. - Move commit/:sha/ci to commit/:sha/builds.
61 lines
1.7 KiB
Ruby
61 lines
1.7 KiB
Ruby
require 'spec_helper'
|
|
|
|
describe "Commits" do
|
|
include CiStatusHelper
|
|
|
|
let(:project) { create(:project) }
|
|
|
|
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
|
|
end
|
|
|
|
before do
|
|
stub_ci_commit_to_return_yaml_file
|
|
end
|
|
|
|
describe "GET /:project/commits/:sha" do
|
|
before do
|
|
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 }
|
|
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"
|
|
end
|
|
end
|
|
|
|
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
|
|
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"
|
|
end
|
|
|
|
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"
|
|
end
|
|
end
|
|
end
|
|
end
|