diff --git a/app/helpers/labels_helper.rb b/app/helpers/labels_helper.rb
index 122f50081e..37fc1dab87 100644
--- a/app/helpers/labels_helper.rb
+++ b/app/helpers/labels_helper.rb
@@ -50,22 +50,23 @@ module LabelsHelper
@project.labels.pluck(:title)
end
- def render_colored_label(label, label_prefix = '')
+ def render_colored_label(label, label_suffix = '')
label_color = label.color || Label::DEFAULT_COLOR
text_color = text_color_for_bg(label_color)
# Intentionally not using content_tag here so that this method can be called
# by LabelReferenceFilter
span = %() +
- label_prefix + escape_once(label.name) + ''
+ %(style="background-color: #{label_color}; color: #{text_color}">) +
+ %(#{escape_once(label.name)}#{label_suffix})
span.html_safe
end
def render_colored_cross_project_label(label)
- label_prefix = "#{label.project.path_with_namespace} » "
- render_colored_label(label, label_prefix)
+ label_suffix = label.project.name
+ label_suffix = " « #{label_suffix}"
+ render_colored_label(label, label_suffix)
end
def suggested_colors
diff --git a/spec/lib/banzai/filter/label_reference_filter_spec.rb b/spec/lib/banzai/filter/label_reference_filter_spec.rb
index 96a403f269..8786095fbe 100644
--- a/spec/lib/banzai/filter/label_reference_filter_spec.rb
+++ b/spec/lib/banzai/filter/label_reference_filter_spec.rb
@@ -178,7 +178,8 @@ describe Banzai::Filter::LabelReferenceFilter, lib: true do
end
describe 'cross project label references' do
- let(:another_project) { create(:empty_project, :public) }
+ let(:project_name) { 'Some project' }
+ let(:another_project) { create(:empty_project, :public, name: project_name) }
let(:label) { create(:label, project: another_project, color: '#00ff00') }
let(:reference) { label.to_reference(project) }
@@ -192,7 +193,12 @@ describe Banzai::Filter::LabelReferenceFilter, lib: true do
end
it 'has valid color' do
- expect(result.css('a span').first.attr('style')).to match /background-color: #00ff00/
+ expect(result.css('a span').first.attr('style'))
+ .to match /background-color: #00ff00/
+ end
+
+ it 'contains cross project content' do
+ expect(result.css('a').first.text).to eq "#{label.name} « #{project_name}"
end
end
end