From 45510fc1a3ea322d6a41c73024ddf41085054c9f Mon Sep 17 00:00:00 2001 From: Nafies Luthfi Date: Fri, 15 Feb 2019 07:19:56 +0800 Subject: [PATCH] Job deletion will also deletes related comments --- app/Entities/Projects/Project.php | 1 + tests/Unit/Models/ProjectTest.php | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/app/Entities/Projects/Project.php b/app/Entities/Projects/Project.php index edf7640..91742c2 100755 --- a/app/Entities/Projects/Project.php +++ b/app/Entities/Projects/Project.php @@ -253,6 +253,7 @@ class Project extends Model $this->invoices()->delete(); $this->payments()->delete(); $this->subscriptions()->delete(); + $this->comments()->delete(); DB::commit(); return parent::delete(); diff --git a/tests/Unit/Models/ProjectTest.php b/tests/Unit/Models/ProjectTest.php index 20f2db7..c8233e2 100644 --- a/tests/Unit/Models/ProjectTest.php +++ b/tests/Unit/Models/ProjectTest.php @@ -269,6 +269,23 @@ class ProjectTest extends TestCase } /** @test */ + public function project_deletion_also_deletes_related_comments() + { + $project = factory(Project::class)->create(); + $comment = factory(Comment::class)->create([ + 'commentable_type' => 'projects', + 'commentable_id' => $project->id, + ]); + + $project->delete(); + + $this->dontSeeInDatabase('comments', [ + 'commentable_type' => 'projects', + 'commentable_id' => $project->id, + ]); + } + + /** @test */ public function project_has_work_duration_attribute() { $project = factory(Project::class)->create([