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
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzegorz@gitlab.com>2017-06-13 15:48:47 +0300
committerGrzegorz Bizon <grzegorz@gitlab.com>2017-06-13 15:48:47 +0300
commit1039f101c9044be9d898ee1cf3fa31c67e48f349 (patch)
tree3acac5aa4dfb1a4c152990b8f6a576f9556fe43a
parente44502f6158be36ff78bf0ecc7e3af9a570a5e44 (diff)
parent93b555af85ff124820366855ed9b3a9fa719c272 (diff)
Merge branch 'zj-commit-status-sortable-name' into 'master'
Handle legacy jobs without name Closes #33403 See merge request !12118
-rw-r--r--app/models/commit_status.rb4
-rw-r--r--changelogs/unreleased/zj-commit-status-sortable-name.yml4
-rw-r--r--spec/models/ci/legacy_stage_spec.rb11
3 files changed, 17 insertions, 2 deletions
diff --git a/app/models/commit_status.rb b/app/models/commit_status.rb
index cb425706a9e..07cec63b939 100644
--- a/app/models/commit_status.rb
+++ b/app/models/commit_status.rb
@@ -112,7 +112,7 @@ class CommitStatus < ActiveRecord::Base
end
def group_name
- name.gsub(/\d+[\s:\/\\]+\d+\s*/, '').strip
+ name.to_s.gsub(/\d+[\s:\/\\]+\d+\s*/, '').strip
end
def failed_but_allowed?
@@ -156,7 +156,7 @@ class CommitStatus < ActiveRecord::Base
end
def sortable_name
- name.split(/(\d+)/).map do |v|
+ name.to_s.split(/(\d+)/).map do |v|
v =~ /\d+/ ? v.to_i : v
end
end
diff --git a/changelogs/unreleased/zj-commit-status-sortable-name.yml b/changelogs/unreleased/zj-commit-status-sortable-name.yml
new file mode 100644
index 00000000000..1be9ac6380f
--- /dev/null
+++ b/changelogs/unreleased/zj-commit-status-sortable-name.yml
@@ -0,0 +1,4 @@
+---
+title: Handle nameless legacy jobs
+merge_request:
+author:
diff --git a/spec/models/ci/legacy_stage_spec.rb b/spec/models/ci/legacy_stage_spec.rb
index 48116c7e701..d43c33d3807 100644
--- a/spec/models/ci/legacy_stage_spec.rb
+++ b/spec/models/ci/legacy_stage_spec.rb
@@ -55,6 +55,17 @@ describe Ci::LegacyStage, :models do
expect(stage.groups.map(&:name))
.to eq %w[aaaaa rspec spinach]
end
+
+ context 'when a name is nil on legacy pipelines' do
+ before do
+ pipeline.builds.first.update_attribute(:name, nil)
+ end
+
+ it 'returns an array of three groups' do
+ expect(stage.groups.map(&:name))
+ .to eq ['', 'aaaaa', 'rspec', 'spinach']
+ end
+ end
end
describe '#statuses_count' do