##// END OF EJS Templates
Fixed that custom_field_values are not reloaded on #reload (#13119)....
Jean-Philippe Lang -
r11119:514f2d6c0fa6
parent child
Show More
@@ -32,6 +32,8 module Redmine
32 :order => "#{CustomField.table_name}.position",
32 :order => "#{CustomField.table_name}.position",
33 :dependent => :delete_all,
33 :dependent => :delete_all,
34 :validate => false
34 :validate => false
35
36 send :alias_method, :reload_without_custom_fields, :reload
35 send :include, Redmine::Acts::Customizable::InstanceMethods
37 send :include, Redmine::Acts::Customizable::InstanceMethods
36 validate :validate_custom_field_values
38 validate :validate_custom_field_values
37 after_save :save_custom_field_values
39 after_save :save_custom_field_values
@@ -152,6 +154,12 module Redmine
152 @custom_field_values_changed = true
154 @custom_field_values_changed = true
153 end
155 end
154
156
157 def reload(*args)
158 @custom_field_values = nil
159 @custom_field_values_changed = false
160 reload_without_custom_fields(*args)
161 end
162
155 module ClassMethods
163 module ClassMethods
156 end
164 end
157 end
165 end
@@ -421,6 +421,21 class IssueTest < ActiveSupport::TestCase
421 assert_equal 'MySQL', issue.custom_field_value(1)
421 assert_equal 'MySQL', issue.custom_field_value(1)
422 end
422 end
423
423
424 def test_reload_should_reload_custom_field_values
425 issue = Issue.generate!
426 issue.custom_field_values = {'2' => 'Foo'}
427 issue.save!
428
429 issue = Issue.order('id desc').first
430 assert_equal 'Foo', issue.custom_field_value(2)
431
432 issue.custom_field_values = {'2' => 'Bar'}
433 assert_equal 'Bar', issue.custom_field_value(2)
434
435 issue.reload
436 assert_equal 'Foo', issue.custom_field_value(2)
437 end
438
424 def test_should_update_issue_with_disabled_tracker
439 def test_should_update_issue_with_disabled_tracker
425 p = Project.find(1)
440 p = Project.find(1)
426 issue = Issue.find(1)
441 issue = Issue.find(1)
General Comments 0
You need to be logged in to leave comments. Login now