diff --git a/app/models/reshare.rb b/app/models/reshare.rb index f5468a5b2216cd87c8a3abe6e07fa39a5c760227..7caaeb999d884571d649dd5664539911a953a871 100644 --- a/app/models/reshare.rb +++ b/app/models/reshare.rb @@ -22,7 +22,7 @@ class Reshare < Post end after_destroy do - self.root.update_reshares_counter + self.root.update_reshares_counter if self.root.present? end def root_diaspora_id diff --git a/spec/models/reshare_spec.rb b/spec/models/reshare_spec.rb index 5795fc9eba54ac64b9497968989b3a8457d5575a..b8da885628b8f02767807ddc500c7dd8ee14dd22 100644 --- a/spec/models/reshare_spec.rb +++ b/spec/models/reshare_spec.rb @@ -105,6 +105,17 @@ describe Reshare do end end + describe 'destroy' do + it 'allows you to destroy the reshare if the root post is missing' do + reshare = Factory(:reshare) + reshare.root = nil + + expect{ + reshare.destroy + }.should_not raise_error + end + end + context 'remote' do before do @root_object = @reshare.root