diff options
-rw-r--r-- | app/models/member.rb | 4 | ||||
-rw-r--r-- | test/unit/member_test.rb | 10 |
2 files changed, 12 insertions, 2 deletions
diff --git a/app/models/member.rb b/app/models/member.rb index 547fa9eaa..aa1d50cdf 100644 --- a/app/models/member.rb +++ b/app/models/member.rb @@ -94,9 +94,9 @@ class Member < ActiveRecord::Base end def set_issue_category_nil - if user + if user_id && project_id # remove category based auto assignments for this member - IssueCategory.where(["project_id = ? AND assigned_to_id = ?", project.id, user.id]). + IssueCategory.where(["project_id = ? AND assigned_to_id = ?", project_id, user_id]). update_all("assigned_to_id = NULL") end end diff --git a/test/unit/member_test.rb b/test/unit/member_test.rb index 6ba9717c4..124aa3719 100644 --- a/test/unit/member_test.rb +++ b/test/unit/member_test.rb @@ -94,6 +94,16 @@ class MemberTest < ActiveSupport::TestCase assert !member.save end + def test_set_issue_category_nil_should_handle_nil_values + m = Member.new + assert_nil m.user + assert_nil m.project + + assert_nothing_raised do + m.set_issue_category_nil + end + end + def test_destroy category1 = IssueCategory.find(1) assert_equal @jsmith.user.id, category1.assigned_to_id |