diff --git a/app/Policies/UserPolicy.php b/app/Policies/UserPolicy.php index 10de3cc..bd952a3 100644 --- a/app/Policies/UserPolicy.php +++ b/app/Policies/UserPolicy.php @@ -13,4 +13,9 @@ class UserPolicy { return $editableUser->manager_id == $user->id; } + + public function delete(User $user, User $editableUser) + { + return $editableUser->manager_id == $user->id; + } } diff --git a/tests/Unit/Policies/UserPolicyTest.php b/tests/Unit/Policies/UserPolicyTest.php index 8a1c3f8..17f2a26 100644 --- a/tests/Unit/Policies/UserPolicyTest.php +++ b/tests/Unit/Policies/UserPolicyTest.php @@ -3,19 +3,28 @@ namespace Tests\Unit\Policies; use App\User; -use Illuminate\Foundation\Testing\RefreshDatabase; use Tests\TestCase; +use Illuminate\Foundation\Testing\RefreshDatabase; class UserPolicyTest extends TestCase { use RefreshDatabase; /** @test */ - public function admin_can_edit_users_profile() + public function manager_can_edit_users_profile() { $manager = factory(User::class)->create(); $user = factory(User::class)->create(['manager_id' => $manager->id]); $this->assertTrue($manager->can('edit', $user)); } + + /** @test */ + public function manager_can_delete_a_user() + { + $manager = factory(User::class)->create(); + $user = factory(User::class)->create(['manager_id' => $manager->id]); + + $this->assertTrue($manager->can('delete', $user)); + } }