]> source.dussan.org Git - redmine.git/commitdiff
Merged r9783 from trunk.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 9 Jun 2012 13:53:37 +0000 (13:53 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 9 Jun 2012 13:53:37 +0000 (13:53 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/branches/1.4-stable@9790 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/models/time_entry.rb
test/integration/api_test/time_entries_test.rb

index 6dbf78413a145b8988cc1b743c74779264d4aefe..d7c6996069fb895ee9d4fc986317325c0687835a 100644 (file)
@@ -66,7 +66,7 @@ class TimeEntry < ActiveRecord::Base
     end
   }
 
-  safe_attributes 'hours', 'comments', 'issue_id', 'activity_id', 'spent_on', 'custom_field_values'
+  safe_attributes 'hours', 'comments', 'issue_id', 'activity_id', 'spent_on', 'custom_field_values', 'custom_fields'
 
   def initialize(attributes=nil, *args)
     super
index b2d591f1ff090aabaaf71365e78e4602ed9b307d..03b3309bee5f0b7258618c4ebe1f725e1377b9ce 100644 (file)
@@ -79,6 +79,21 @@ class ApiTest::TimeEntriesTest < ActionController::IntegrationTest
         assert_equal 3.5, entry.hours
         assert_equal TimeEntryActivity.find(11), entry.activity
       end
+
+      should "accept custom fields" do
+        field = TimeEntryCustomField.create!(:name => 'Test', :field_format => 'string')
+
+        assert_difference 'TimeEntry.count' do
+          post '/time_entries.xml', {:time_entry => {
+            :issue_id => '1', :spent_on => '2010-12-02', :hours => '3.5', :activity_id => '11', :custom_fields => [{:id => field.id.to_s, :value => 'accepted'}]
+          }}, credentials('jsmith')
+        end
+        assert_response :created
+        assert_equal 'application/xml', @response.content_type
+
+        entry = TimeEntry.first(:order => 'id DESC')
+        assert_equal 'accepted', entry.custom_field_value(field)
+      end
     end
 
     context "with project_id" do