@@ -513,22 +513,31 class IssueTest < ActiveSupport::TestCase | |||
|
513 | 513 | end |
|
514 | 514 | |
|
515 | 515 | def test_safe_attributes_should_not_include_readonly_custom_fields |
|
516 |
cf1 = IssueCustomField.create!(:name => 'Writable field', |
|
|
517 | cf2 = IssueCustomField.create!(:name => 'Readonly field', :field_format => 'string', :is_for_all => true, :tracker_ids => [1]) | |
|
518 | ||
|
516 | cf1 = IssueCustomField.create!(:name => 'Writable field', | |
|
517 | :field_format => 'string', | |
|
518 | :is_for_all => true, :tracker_ids => [1]) | |
|
519 | cf2 = IssueCustomField.create!(:name => 'Readonly field', | |
|
520 | :field_format => 'string', | |
|
521 | :is_for_all => true, :tracker_ids => [1]) | |
|
519 | 522 | WorkflowPermission.delete_all |
|
520 |
WorkflowPermission.create!(:old_status_id => 1, :tracker_id => 1, |
|
|
523 | WorkflowPermission.create!(:old_status_id => 1, :tracker_id => 1, | |
|
524 | :role_id => 1, :field_name => cf2.id.to_s, | |
|
525 | :rule => 'readonly') | |
|
521 | 526 | user = User.find(2) |
|
522 | ||
|
523 | 527 | issue = Issue.new(:project_id => 1, :tracker_id => 1) |
|
524 | 528 | assert_equal [cf2.id.to_s], issue.read_only_attribute_names(user) |
|
525 | 529 | assert_not_include cf2.id.to_s, issue.safe_attribute_names(user) |
|
526 | 530 | |
|
527 |
issue.send :safe_attributes=, {'custom_field_values' => { |
|
|
531 | issue.send :safe_attributes=, {'custom_field_values' => { | |
|
532 | cf1.id.to_s => 'value1', cf2.id.to_s => 'value2' | |
|
533 | }}, user | |
|
528 | 534 | assert_equal 'value1', issue.custom_field_value(cf1) |
|
529 | 535 | assert_nil issue.custom_field_value(cf2) |
|
530 | 536 | |
|
531 | issue.send :safe_attributes=, {'custom_fields' => [{'id' => cf1.id.to_s, 'value' => 'valuea'}, {'id' => cf2.id.to_s, 'value' => 'valueb'}]}, user | |
|
537 | issue.send :safe_attributes=, {'custom_fields' => [ | |
|
538 | {'id' => cf1.id.to_s, 'value' => 'valuea'}, | |
|
539 | {'id' => cf2.id.to_s, 'value' => 'valueb'} | |
|
540 | ]}, user | |
|
532 | 541 | assert_equal 'valuea', issue.custom_field_value(cf1) |
|
533 | 542 | assert_nil issue.custom_field_value(cf2) |
|
534 | 543 | end |
General Comments 0
You need to be logged in to leave comments.
Login now