summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-01-16 10:21:21 +0000
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-01-16 10:21:21 +0000
commite3f436dc4378940337d8a2146e599fee2125eec4 (patch)
tree1d63750783e420cf9b1c476f82554e396fb7512a /spec
parent70f17624dc4373cffe309ac3ba834ed54d1f31fb (diff)
parent974281d140a37d8c480bcf871b9498c50d42769b (diff)
downloadgitlab-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.rb73
-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