diff options
author | Jason Rutherford <jason.rutherford@plansource.com> | 2018-10-11 14:25:30 +0000 |
---|---|---|
committer | Douglas Barbosa Alexandre <dbalexandre@gmail.com> | 2018-10-11 14:25:30 +0000 |
commit | ab5e8dc8800886ca206ee9e6ffe80026b319063c (patch) | |
tree | ce697fc2969f57fea4455be6ccdf5a5f03b0ae0f /spec | |
parent | 5b6b2871dfc8f2159103df7f2803459b2cee1647 (diff) | |
download | gitlab-ce-ab5e8dc8800886ca206ee9e6ffe80026b319063c.tar.gz |
Feature improved branch filter sorting
Diffstat (limited to 'spec')
-rw-r--r-- | spec/finders/branches_finder_spec.rb | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/spec/finders/branches_finder_spec.rb b/spec/finders/branches_finder_spec.rb index 9e3f2c69606..7d164539d9a 100644 --- a/spec/finders/branches_finder_spec.rb +++ b/spec/finders/branches_finder_spec.rb @@ -66,7 +66,7 @@ describe BranchesFinder do context 'filter and sort' do it 'filters branches by name and sorts by recently_updated' do - params = { sort: 'updated_desc', search: 'feature' } + params = { sort: 'updated_desc', search: 'feat' } branches_finder = described_class.new(repository, params) result = branches_finder.execute @@ -75,6 +75,17 @@ describe BranchesFinder do expect(result.count).to eq(2) end + it 'filters branches by name and sorts by recently_updated, with exact matches first' do + params = { sort: 'updated_desc', search: 'feature' } + branches_finder = described_class.new(repository, params) + + result = branches_finder.execute + + expect(result.first.name).to eq('feature') + expect(result.second.name).to eq('feature_conflict') + expect(result.count).to eq(2) + end + it 'filters branches by name and sorts by last_updated' do params = { sort: 'updated_asc', search: 'feature' } branches_finder = described_class.new(repository, params) @@ -84,6 +95,26 @@ describe BranchesFinder do expect(result.first.name).to eq('feature') expect(result.count).to eq(2) end + + it 'filters branches by name that begins with' do + params = { search: '^feature_' } + branches_finder = described_class.new(repository, params) + + result = branches_finder.execute + + expect(result.first.name).to eq('feature_conflict') + expect(result.count).to eq(1) + end + + it 'filters branches by name that ends with' do + params = { search: 'feature$' } + branches_finder = described_class.new(repository, params) + + result = branches_finder.execute + + expect(result.first.name).to eq('feature') + expect(result.count).to eq(1) + end end end end |