summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexDenisov <1101.debian@gmail.com>2013-05-15 13:59:15 +0000
committerAlexDenisov <1101.debian@gmail.com>2013-05-16 10:32:26 +0000
commitd79592a7f613f47e2dce67184ca3e2106658e2e5 (patch)
tree6ed368357912c4494bcb497aa74df316d707922a
parent31f007f79fda5814902fd8e9be5733ce6611781f (diff)
downloadgitlab-ce-d79592a7f613f47e2dce67184ca3e2106658e2e5.tar.gz
Added spec on bulk issues update
-rw-r--r--spec/contexts/issues/bulk_update_context_spec.rb77
1 files changed, 77 insertions, 0 deletions
diff --git a/spec/contexts/issues/bulk_update_context_spec.rb b/spec/contexts/issues/bulk_update_context_spec.rb
new file mode 100644
index 00000000000..0ea1799f5c9
--- /dev/null
+++ b/spec/contexts/issues/bulk_update_context_spec.rb
@@ -0,0 +1,77 @@
+require 'spec_helper'
+
+describe Issues::BulkUpdateContext do
+
+ describe :close_issue do
+
+ before do
+ @user = create :user
+ opts = {
+ name: "GitLab"
+ }
+ @project = create_project(@user, opts)
+ @issues = 5.times.collect do
+ create(:issue, project: @project)
+ end
+ @params = {
+ update: {
+ status: 'closed',
+ issues_ids: @issues.map(&:id)
+ }
+ }
+
+ end
+
+ it "close issues" do
+ Issues::BulkUpdateContext.new(@project, @user, @params).execute
+ @project.issues.opened.should be_empty
+ @project.issues.closed.should_not be_empty
+ end
+
+ it "return success" do
+ result = Issues::BulkUpdateContext.new(@project, @user, @params).execute
+ result[:success].should be_true
+ result[:count].should == @issues.count
+ end
+
+ end
+
+ describe :reopen_issues do
+
+ before do
+ @user = create :user
+ opts = {
+ name: "GitLab"
+ }
+ @project = create_project(@user, opts)
+ @issues = 5.times.collect do
+ create(:closed_issue, project: @project)
+ end
+ @params = {
+ update: {
+ status: 'reopen',
+ issues_ids: @issues.map(&:id)
+ }
+ }
+
+ end
+
+ it "reopen issues" do
+ Issues::BulkUpdateContext.new(@project, @user, @params).execute
+ @project.issues.closed.should be_empty
+ @project.issues.opened.should_not be_empty
+ end
+
+ it "return success" do
+ result = Issues::BulkUpdateContext.new(@project, @user, @params).execute
+ result[:success].should be_true
+ result[:count].should == @issues.count
+ end
+
+ end
+
+ def create_project(user, opts)
+ Projects::CreateContext.new(user, opts).execute
+ end
+end
+