From 3cd538c2e9e18f31cee008d9b9e13df4dfd40b1d Mon Sep 17 00:00:00 2001 From: James Lopez Date: Wed, 14 Nov 2018 15:37:30 +0100 Subject: Fix text rendering of readme/index --- lib/gitlab/file_detector.rb | 2 +- spec/lib/gitlab/file_detector_spec.rb | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/gitlab/file_detector.rb b/lib/gitlab/file_detector.rb index d6338b09e3d..4e749068f93 100644 --- a/lib/gitlab/file_detector.rb +++ b/lib/gitlab/file_detector.rb @@ -8,7 +8,7 @@ module Gitlab module FileDetector PATTERNS = { # Project files - readme: %r{\A(readme|index)[^/]*\z}i, + readme: %r{\A(readme|index)(|\.#{Gitlab::MarkupHelper::EXTENSIONS.join('|\.')})$[^\/]*\z}i, changelog: %r{\A(changelog|history|changes|news)[^/]*\z}i, license: %r{\A((un)?licen[sc]e|copying)(\.[^/]+)?\z}i, contributing: %r{\Acontributing[^/]*\z}i, diff --git a/spec/lib/gitlab/file_detector_spec.rb b/spec/lib/gitlab/file_detector_spec.rb index edab53247e9..ba65827d1fb 100644 --- a/spec/lib/gitlab/file_detector_spec.rb +++ b/spec/lib/gitlab/file_detector_spec.rb @@ -23,6 +23,10 @@ describe Gitlab::FileDetector do end end + it 'returns nil for a README.rb file' do + expect(described_class.type_of('README.rb')).to be_nil + end + it 'returns nil for a README file in a directory' do expect(described_class.type_of('foo/README.md')).to be_nil end -- cgit v1.2.1 From 5cda92b1cf624f8aa9f33d38b6699b9ae9fc7f8e Mon Sep 17 00:00:00 2001 From: James Lopez Date: Thu, 15 Nov 2018 12:07:20 +0000 Subject: Refactor spec to test all extensions --- spec/lib/gitlab/file_detector_spec.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/spec/lib/gitlab/file_detector_spec.rb b/spec/lib/gitlab/file_detector_spec.rb index ba65827d1fb..b2f8d5c4558 100644 --- a/spec/lib/gitlab/file_detector_spec.rb +++ b/spec/lib/gitlab/file_detector_spec.rb @@ -15,9 +15,11 @@ describe Gitlab::FileDetector do describe '.type_of' do it 'returns the type of a README file' do + extensions = Gitlab::MarkupHelper::EXTENSIONS + Gitlab::MarkupHelper::EXTENSIONS.map(&:upcase) + %w[README readme INDEX index].each do |filename| expect(described_class.type_of(filename)).to eq(:readme) - %w[.md .adoc .rst].each do |extname| + extensions.each do |extname| expect(described_class.type_of(filename + extname)).to eq(:readme) end end -- cgit v1.2.1 From 5e6663a21a7f9c141ee6d52353e2f6bb36707bce Mon Sep 17 00:00:00 2001 From: James Lopez Date: Thu, 15 Nov 2018 13:00:12 +0000 Subject: Update spec to use PLAIN_FILENAMES constant --- spec/lib/gitlab/file_detector_spec.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/spec/lib/gitlab/file_detector_spec.rb b/spec/lib/gitlab/file_detector_spec.rb index b2f8d5c4558..462cc113a95 100644 --- a/spec/lib/gitlab/file_detector_spec.rb +++ b/spec/lib/gitlab/file_detector_spec.rb @@ -15,9 +15,10 @@ describe Gitlab::FileDetector do describe '.type_of' do it 'returns the type of a README file' do + filenames = Gitlab::MarkupHelper::PLAIN_FILENAMES + Gitlab::MarkupHelper::PLAIN_FILENAMES.map(&:upcase) extensions = Gitlab::MarkupHelper::EXTENSIONS + Gitlab::MarkupHelper::EXTENSIONS.map(&:upcase) - %w[README readme INDEX index].each do |filename| + filenames.each do |filename| expect(described_class.type_of(filename)).to eq(:readme) extensions.each do |extname| expect(described_class.type_of(filename + extname)).to eq(:readme) -- cgit v1.2.1 From 39451c9554b3cba2cade6971572626d0578a2fb0 Mon Sep 17 00:00:00 2001 From: James Lopez Date: Thu, 15 Nov 2018 13:06:00 +0000 Subject: Fix trailing whitespace --- spec/lib/gitlab/file_detector_spec.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/lib/gitlab/file_detector_spec.rb b/spec/lib/gitlab/file_detector_spec.rb index 462cc113a95..d731f88ae03 100644 --- a/spec/lib/gitlab/file_detector_spec.rb +++ b/spec/lib/gitlab/file_detector_spec.rb @@ -17,7 +17,7 @@ describe Gitlab::FileDetector do it 'returns the type of a README file' do filenames = Gitlab::MarkupHelper::PLAIN_FILENAMES + Gitlab::MarkupHelper::PLAIN_FILENAMES.map(&:upcase) extensions = Gitlab::MarkupHelper::EXTENSIONS + Gitlab::MarkupHelper::EXTENSIONS.map(&:upcase) - + filenames.each do |filename| expect(described_class.type_of(filename)).to eq(:readme) extensions.each do |extname| -- cgit v1.2.1 From 71f4ec45c029a2b6101f6eaf849da79289915583 Mon Sep 17 00:00:00 2001 From: James Lopez Date: Thu, 15 Nov 2018 15:20:58 +0100 Subject: Fix spec failure --- spec/lib/gitlab/file_detector_spec.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/spec/lib/gitlab/file_detector_spec.rb b/spec/lib/gitlab/file_detector_spec.rb index d731f88ae03..4ba9094b24e 100644 --- a/spec/lib/gitlab/file_detector_spec.rb +++ b/spec/lib/gitlab/file_detector_spec.rb @@ -20,8 +20,9 @@ describe Gitlab::FileDetector do filenames.each do |filename| expect(described_class.type_of(filename)).to eq(:readme) + extensions.each do |extname| - expect(described_class.type_of(filename + extname)).to eq(:readme) + expect(described_class.type_of("#{filename}.#{extname}")).to eq(:readme) end end end -- cgit v1.2.1 From f837281ff6f2e27a838eaa40a908ca6b9b47d2a0 Mon Sep 17 00:00:00 2001 From: James Lopez Date: Fri, 16 Nov 2018 11:03:45 +0100 Subject: Update regex to use union --- lib/gitlab/file_detector.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/gitlab/file_detector.rb b/lib/gitlab/file_detector.rb index 4e749068f93..2e78fc0e9c5 100644 --- a/lib/gitlab/file_detector.rb +++ b/lib/gitlab/file_detector.rb @@ -8,7 +8,7 @@ module Gitlab module FileDetector PATTERNS = { # Project files - readme: %r{\A(readme|index)(|\.#{Gitlab::MarkupHelper::EXTENSIONS.join('|\.')})$[^\/]*\z}i, + readme: %r{\A(#{Regexp.union(*Gitlab::MarkupHelper::PLAIN_FILENAMES).source})(\.(#{Regexp.union(*Gitlab::MarkupHelper::EXTENSIONS).source}))?$[^\/]*\z}i, changelog: %r{\A(changelog|history|changes|news)[^/]*\z}i, license: %r{\A((un)?licen[sc]e|copying)(\.[^/]+)?\z}i, contributing: %r{\Acontributing[^/]*\z}i, -- cgit v1.2.1 From 53b2c3011e01b7f0174a0863e2597d3b4a251321 Mon Sep 17 00:00:00 2001 From: James Lopez Date: Fri, 16 Nov 2018 11:27:47 +0100 Subject: Remove redundant end anchors --- lib/gitlab/file_detector.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/gitlab/file_detector.rb b/lib/gitlab/file_detector.rb index 2e78fc0e9c5..48025f6ad5a 100644 --- a/lib/gitlab/file_detector.rb +++ b/lib/gitlab/file_detector.rb @@ -8,7 +8,7 @@ module Gitlab module FileDetector PATTERNS = { # Project files - readme: %r{\A(#{Regexp.union(*Gitlab::MarkupHelper::PLAIN_FILENAMES).source})(\.(#{Regexp.union(*Gitlab::MarkupHelper::EXTENSIONS).source}))?$[^\/]*\z}i, + readme: %r{\A(#{Regexp.union(*Gitlab::MarkupHelper::PLAIN_FILENAMES).source})(\.(#{Regexp.union(*Gitlab::MarkupHelper::EXTENSIONS).source}))?\z}i, changelog: %r{\A(changelog|history|changes|news)[^/]*\z}i, license: %r{\A((un)?licen[sc]e|copying)(\.[^/]+)?\z}i, contributing: %r{\Acontributing[^/]*\z}i, -- cgit v1.2.1 From a4ae5411f5e75ca90f6172d8d03c6524f8efb8cb Mon Sep 17 00:00:00 2001 From: James Lopez Date: Fri, 16 Nov 2018 12:09:18 +0100 Subject: Fix rubocop warning --- lib/gitlab/file_detector.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/gitlab/file_detector.rb b/lib/gitlab/file_detector.rb index 48025f6ad5a..2770469ca9f 100644 --- a/lib/gitlab/file_detector.rb +++ b/lib/gitlab/file_detector.rb @@ -8,7 +8,7 @@ module Gitlab module FileDetector PATTERNS = { # Project files - readme: %r{\A(#{Regexp.union(*Gitlab::MarkupHelper::PLAIN_FILENAMES).source})(\.(#{Regexp.union(*Gitlab::MarkupHelper::EXTENSIONS).source}))?\z}i, + readme: /\A(#{Regexp.union(*Gitlab::MarkupHelper::PLAIN_FILENAMES).source})(\.(#{Regexp.union(*Gitlab::MarkupHelper::EXTENSIONS).source}))?\z/i, changelog: %r{\A(changelog|history|changes|news)[^/]*\z}i, license: %r{\A((un)?licen[sc]e|copying)(\.[^/]+)?\z}i, contributing: %r{\Acontributing[^/]*\z}i, -- cgit v1.2.1