summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean McGivern <sean@mcgivern.me.uk>2017-10-25 09:14:32 +0000
committerSean McGivern <sean@mcgivern.me.uk>2017-10-25 09:14:32 +0000
commite81d74b9253e4a9f48bad0071bf37075bb6a20c5 (patch)
tree3ab99d7c724af4d30f2c9f335e8655fc26f91602
parent700ead2e047e7c82882f1ba862251c1fbfd48f85 (diff)
parent1cf35c3d1d274a24bf7b6283bf5d43ca0ffe8a10 (diff)
downloadgitlab-ce-e81d74b9253e4a9f48bad0071bf37075bb6a20c5.tar.gz
Merge branch '35199-case-insensitive-branches-search' into 'master'
Add case insensitive branches search Closes #35199 See merge request gitlab-org/gitlab-ce!14995
-rw-r--r--app/finders/branches_finder.rb2
-rw-r--r--changelogs/unreleased/35199-case-insensitive-branches-search.yml5
-rw-r--r--spec/finders/branches_finder_spec.rb9
3 files changed, 15 insertions, 1 deletions
diff --git a/app/finders/branches_finder.rb b/app/finders/branches_finder.rb
index 533076585c0..852eac3647d 100644
--- a/app/finders/branches_finder.rb
+++ b/app/finders/branches_finder.rb
@@ -23,7 +23,7 @@ class BranchesFinder
def filter_by_name(branches)
if search
- branches.select { |branch| branch.name.include?(search) }
+ branches.select { |branch| branch.name.upcase.include?(search.upcase) }
else
branches
end
diff --git a/changelogs/unreleased/35199-case-insensitive-branches-search.yml b/changelogs/unreleased/35199-case-insensitive-branches-search.yml
new file mode 100644
index 00000000000..da2729e9e55
--- /dev/null
+++ b/changelogs/unreleased/35199-case-insensitive-branches-search.yml
@@ -0,0 +1,5 @@
+---
+title: Case insensitive search for branches
+merge_request: 14995
+author: George Andrinopoulos
+type: fixed
diff --git a/spec/finders/branches_finder_spec.rb b/spec/finders/branches_finder_spec.rb
index 91f34973ba5..9e3f2c69606 100644
--- a/spec/finders/branches_finder_spec.rb
+++ b/spec/finders/branches_finder_spec.rb
@@ -46,6 +46,15 @@ describe BranchesFinder do
expect(result.count).to eq(1)
end
+ it 'filters branches by name ignoring letter case' do
+ branches_finder = described_class.new(repository, { search: 'FiX' })
+
+ result = branches_finder.execute
+
+ expect(result.first.name).to eq('fix')
+ expect(result.count).to eq(1)
+ end
+
it 'does not find any branch with that name' do
branches_finder = described_class.new(repository, { search: 'random' })