]> source.dussan.org Git - redmine.git/commitdiff
Fixed: start date being filled with current date even when blank value is submitted...
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 6 Nov 2010 23:23:02 +0000 (23:23 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 6 Nov 2010 23:23:02 +0000 (23:23 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4378 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/controllers/issues_controller.rb
test/functional/issues_controller_test.rb

index 7993522184bb8416781b03465d37ed1307abc897..6418477297dc85b94b3a8e460f6285526a760e9e 100644 (file)
@@ -304,6 +304,7 @@ private
       render_error l(:error_no_tracker_in_project)
       return false
     end
+    @issue.start_date ||= Date.today
     if params[:issue].is_a?(Hash)
       @issue.safe_attributes = params[:issue]
       if User.current.allowed_to?(:add_issue_watchers, @project) && @issue.new_record?
@@ -311,7 +312,6 @@ private
       end
     end
     @issue.author = User.current
-    @issue.start_date ||= Date.today
     @priorities = IssuePriority.all
     @allowed_statuses = @issue.new_statuses_allowed_to(User.current, true)
   end
index 48ab8cef66634516df8158496112b908fb4210f4..1fdff9214d4f640bfe2f8fd16417d17ce651f24a 100644 (file)
@@ -378,6 +378,7 @@ class IssuesControllerTest < ActionController::TestCase
                             :subject => 'This is the test_new issue',
                             :description => 'This is the description',
                             :priority_id => 5,
+                            :start_date => '2010-11-07',
                             :estimated_hours => '',
                             :custom_field_values => {'2' => 'Value for field 2'}}
     end
@@ -388,12 +389,33 @@ class IssuesControllerTest < ActionController::TestCase
     assert_equal 2, issue.author_id
     assert_equal 3, issue.tracker_id
     assert_equal 2, issue.status_id
+    assert_equal Date.parse('2010-11-07'), issue.start_date
     assert_nil issue.estimated_hours
     v = issue.custom_values.find(:first, :conditions => {:custom_field_id => 2})
     assert_not_nil v
     assert_equal 'Value for field 2', v.value
   end
   
+  def test_post_create_without_start_date
+    @request.session[:user_id] = 2
+    assert_difference 'Issue.count' do
+      post :create, :project_id => 1, 
+                 :issue => {:tracker_id => 3,
+                            :status_id => 2,
+                            :subject => 'This is the test_new issue',
+                            :description => 'This is the description',
+                            :priority_id => 5,
+                            :start_date => '',
+                            :estimated_hours => '',
+                            :custom_field_values => {'2' => 'Value for field 2'}}
+    end
+    assert_redirected_to :controller => 'issues', :action => 'show', :id => Issue.last.id
+    
+    issue = Issue.find_by_subject('This is the test_new issue')
+    assert_not_nil issue
+    assert_nil issue.start_date
+  end
+  
   def test_post_create_and_continue
     @request.session[:user_id] = 2
     post :create, :project_id => 1,