From b372968e936a8b02f8d7ff73a1e1cc25b332406c Mon Sep 17 00:00:00 2001 From: Baldinof Date: Tue, 22 Mar 2016 10:56:44 +0100 Subject: Add number sign on external issue reference text --- app/models/external_issue.rb | 8 ++++++++ spec/models/external_issue_spec.rb | 6 ++++++ 2 files changed, 14 insertions(+) diff --git a/app/models/external_issue.rb b/app/models/external_issue.rb index 2ca79df0a29..92f1f174941 100644 --- a/app/models/external_issue.rb +++ b/app/models/external_issue.rb @@ -34,7 +34,15 @@ class ExternalIssue %r{(?\b([A-Z][A-Z0-9_]+-)\d+)} end + def self.reference_prefix + '#' + end + def to_reference(_from_project = nil) id end + + def reference_link_text(from_project = nil) + "#{self.class.reference_prefix}#{id}" + end end diff --git a/spec/models/external_issue_spec.rb b/spec/models/external_issue_spec.rb index 9b144dd1ecc..b3d0c4efe98 100644 --- a/spec/models/external_issue_spec.rb +++ b/spec/models/external_issue_spec.rb @@ -36,4 +36,10 @@ describe ExternalIssue, models: true do expect(issue.title).to eq "External Issue #{issue}" end end + + describe '#reference_link_text' do + it 'returns a String reference to the object' do + expect(issue.reference_link_text).to eq '#EXT-1234' + end + end end -- cgit v1.2.1 From 3918fce5bd073e18addb7d1d4aaf3c81ce8150b0 Mon Sep 17 00:00:00 2001 From: Baldinof Date: Tue, 12 Apr 2016 10:01:52 +0200 Subject: Hide number sign for string prefixed external issues --- app/models/external_issue.rb | 8 +++----- spec/models/external_issue_spec.rb | 13 +++++++++++-- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/app/models/external_issue.rb b/app/models/external_issue.rb index 92f1f174941..d47b479faa8 100644 --- a/app/models/external_issue.rb +++ b/app/models/external_issue.rb @@ -34,15 +34,13 @@ class ExternalIssue %r{(?\b([A-Z][A-Z0-9_]+-)\d+)} end - def self.reference_prefix - '#' - end - def to_reference(_from_project = nil) id end def reference_link_text(from_project = nil) - "#{self.class.reference_prefix}#{id}" + return "##{id}" if /^\d+$/.match(id) + + id end end diff --git a/spec/models/external_issue_spec.rb b/spec/models/external_issue_spec.rb index b3d0c4efe98..4fc3b065592 100644 --- a/spec/models/external_issue_spec.rb +++ b/spec/models/external_issue_spec.rb @@ -38,8 +38,17 @@ describe ExternalIssue, models: true do end describe '#reference_link_text' do - it 'returns a String reference to the object' do - expect(issue.reference_link_text).to eq '#EXT-1234' + context 'if issue id has a prefix' do + it 'returns the issue ID' do + expect(issue.reference_link_text).to eq 'EXT-1234' + end + end + + context 'if issue id is a number' do + let(:issue) { described_class.new('1234', project) } + it 'returns the issue ID prefixed by #' do + expect(issue.reference_link_text).to eq '#1234' + end end end end -- cgit v1.2.1 From a281f68b64c72bfad7796b8dc0ae3805583c66b6 Mon Sep 17 00:00:00 2001 From: BaldinoF Date: Sun, 17 Apr 2016 18:22:23 +0200 Subject: Add CHANGELOG entry --- CHANGELOG | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG b/CHANGELOG index d8fbfafb72c..de520330781 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -75,6 +75,7 @@ v 8.7.0 (unreleased) - Fix emoji categories in the emoji picker - Add encrypted credentials for imported projects and migrate old ones - Author and participants are displayed first on users autocompletion + - Show number sign on external issue reference text (Florent Baldino) v 8.6.6 - Expire the exists cache before deletion to ensure project dir actually exists (Stan Hu). !3413 -- cgit v1.2.1