diff --git a/app/models/user.rb b/app/models/user.rb index cabce300..05a75e1a 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -33,7 +33,8 @@ class User < ActiveRecord::Base :username => '#{login}' } - has_many :memberships, :class_name => 'Member', :include => [ :project, :role ], :conditions => "#{Project.table_name}.status=#{Project::STATUS_ACTIVE}", :order => "#{Project.table_name}.name", :dependent => :delete_all + has_many :memberships, :class_name => 'Member', :include => [ :project, :role ], :conditions => "#{Project.table_name}.status=#{Project::STATUS_ACTIVE}", :order => "#{Project.table_name}.name" + has_many :members, :dependent => :delete_all has_many :projects, :through => :memberships has_many :issue_categories, :foreign_key => 'assigned_to_id', :dependent => :nullify has_one :preference, :dependent => :destroy, :class_name => 'UserPreference' diff --git a/test/unit/user_test.rb b/test/unit/user_test.rb index 3209f261..80011f4b 100644 --- a/test/unit/user_test.rb +++ b/test/unit/user_test.rb @@ -57,6 +57,12 @@ class UserTest < Test::Unit::TestCase assert_equal "john", @admin.login end + def test_destroy + User.find(2).destroy + assert_nil User.find_by_id(2) + assert Member.find_all_by_user_id(2).empty? + end + def test_validate @admin.login = "" assert !@admin.save