OSDN Git Service

Fixed: time entries created with the default activity even if a different one is...
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 14 Jun 2008 12:31:32 +0000 (12:31 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 14 Jun 2008 12:31:32 +0000 (12:31 +0000)
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1533 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/models/time_entry.rb
test/functional/timelog_controller_test.rb

index 4bd2d33..b234a8b 100644 (file)
@@ -30,8 +30,10 @@ class TimeEntry < ActiveRecord::Base
   validates_length_of :comments, :maximum => 255
 
   def after_initialize
-    if new_record?
-      self.activity ||= Enumeration.default('ACTI')
+    if new_record? && self.activity.nil?
+      if default_activity = Enumeration.default('ACTI')
+        self.activity_id = default_activity.id
+      end
     end
   end
   
index 479f4f4..c8b47cf 100644 (file)
@@ -44,7 +44,8 @@ class TimelogControllerTest < Test::Unit::TestCase
     @request.session[:user_id] = 3
     post :edit, :project_id => 1,
                 :time_entry => {:comments => 'Some work on TimelogControllerTest',
-                                :activity_id => '10',
+                                # Not the default activity
+                                :activity_id => '11',
                                 :spent_on => '2008-03-14',
                                 :issue_id => '1',
                                 :hours => '7.3'}
@@ -53,6 +54,7 @@ class TimelogControllerTest < Test::Unit::TestCase
     i = Issue.find(1)
     t = TimeEntry.find_by_comments('Some work on TimelogControllerTest')
     assert_not_nil t
+    assert_equal 11, t.activity_id
     assert_equal 7.3, t.hours
     assert_equal 3, t.user_id
     assert_equal i, t.issue