diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2014-01-16 10:21:21 +0000 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2014-01-16 10:21:21 +0000 |
commit | e3f436dc4378940337d8a2146e599fee2125eec4 (patch) | |
tree | 1d63750783e420cf9b1c476f82554e396fb7512a /spec | |
parent | 70f17624dc4373cffe309ac3ba834ed54d1f31fb (diff) | |
parent | 974281d140a37d8c480bcf871b9498c50d42769b (diff) | |
download | gitlab-ce-e3f436dc4378940337d8a2146e599fee2125eec4.tar.gz |
Merge branch 'refactoring/issues_filter' into 'master'
Refactoring: Issues/MR filtering logic
Move all issues, mr filtering logic into FilteringService
Diffstat (limited to 'spec')
-rw-r--r-- | spec/contexts/issues/list_context_spec.rb | 73 | ||||
-rw-r--r-- | spec/services/filtering_service_spec.rb (renamed from spec/contexts/filter_context_spec.rb) | 22 |
2 files changed, 11 insertions, 84 deletions
diff --git a/spec/contexts/issues/list_context_spec.rb b/spec/contexts/issues/list_context_spec.rb deleted file mode 100644 index 70ce956499c..00000000000 --- a/spec/contexts/issues/list_context_spec.rb +++ /dev/null @@ -1,73 +0,0 @@ -require 'spec_helper' - -describe Issues::ListContext do - - let(:user) { create(:user) } - let(:project) { create(:project, creator: user) } - - titles = ['foo','bar','baz'] - titles.each_with_index do |title, index| - let!(title.to_sym) { create(:issue, title: title, project: project, created_at: Time.now - (index * 60)) } - end - - describe 'sorting' do - it 'sorts by newest' do - params = {sort: 'newest'} - - issues = Issues::ListContext.new(project, user, params).execute - issues.first.should eq foo - end - - it 'sorts by oldest' do - params = {sort: 'oldest'} - - issues = Issues::ListContext.new(project, user, params).execute - issues.first.should eq baz - end - - it 'sorts by recently updated' do - params = {sort: 'recently_updated'} - baz.updated_at = Time.now + 10 - baz.save - - issues = Issues::ListContext.new(project, user, params).execute - issues.first.should eq baz - end - - it 'sorts by least recently updated' do - params = {sort: 'last_updated'} - bar.updated_at = Time.now - 10 - bar.save - - issues = Issues::ListContext.new(project, user, params).execute - issues.first.should eq bar - end - - describe 'sorting by milestone' do - let(:newer_due_milestone) { create(:milestone, due_date: '2013-12-11') } - let(:later_due_milestone) { create(:milestone, due_date: '2013-12-12') } - - before :each do - foo.milestone = newer_due_milestone - foo.save - bar.milestone = later_due_milestone - bar.save - end - - it 'sorts by most recently due milestone' do - params = {sort: 'milestone_due_soon'} - - issues = Issues::ListContext.new(project, user, params).execute - issues.first.should eq foo - - end - - it 'sorts by least recently due milestone' do - params = {sort: 'milestone_due_later'} - - issues = Issues::ListContext.new(project, user, params).execute - issues.first.should eq bar - end - end - end -end diff --git a/spec/contexts/filter_context_spec.rb b/spec/services/filtering_service_spec.rb index 06aef5d7ed1..596601264b3 100644 --- a/spec/contexts/filter_context_spec.rb +++ b/spec/services/filtering_service_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe FilterContext do +describe FilteringService do let(:user) { create :user } let(:user2) { create :user } let(:project1) { create(:project) } @@ -25,14 +25,14 @@ describe FilterContext do end it 'should filter by scope' do - params = { scope: 'authored' } - merge_requests = FilterContext.new(MergeRequest, user, params).execute + params = { scope: 'authored', state: 'opened' } + merge_requests = FilteringService.new.execute(MergeRequest, user, params) merge_requests.size.should == 3 end it 'should filter by project' do - params = { project_id: project1.id, scope: 'authored' } - merge_requests = FilterContext.new(MergeRequest, user, params).execute + params = { project_id: project1.id, scope: 'authored', state: 'opened' } + merge_requests = FilteringService.new.execute(MergeRequest, user, params) merge_requests.size.should == 1 end end @@ -45,20 +45,20 @@ describe FilterContext do end it 'should filter by all' do - params = { scope: "all" } - issues = FilterContext.new(Issue, user, params).execute + params = { scope: "all", state: 'opened' } + issues = FilteringService.new.execute(Issue, user, params) issues.size.should == 3 end it 'should filter by assignee' do - params = {} - issues = FilterContext.new(Issue, user, params).execute + params = { scope: "assigned-to-me", state: 'opened' } + issues = FilteringService.new.execute(Issue, user, params) issues.size.should == 2 end it 'should filter by project' do - params = { project_id: project1.id } - issues = FilterContext.new(Issue, user, params).execute + params = { scope: "assigned-to-me", state: 'opened', project_id: project1.id } + issues = FilteringService.new.execute(Issue, user, params) issues.size.should == 1 end end |