Skip to content

Commit ab95d83

Browse files
committed
add test cases for has all permissions
1 parent 0ba69a0 commit ab95d83

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

tests/HasPermissionsTest.php

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -400,4 +400,34 @@ public function it_can_determine_that_a_user_has_all_of_the_given_roles()
400400

401401
$this->assertTrue($this->testUser->hasAllPermissions('edit-news', 'edit-articles'));
402402
}
403+
404+
/** @test */
405+
public function it_can_determine_that_the_user_has_all_of_the_permissions_directly()
406+
{
407+
$this->testUser->givePermissionTo('edit-articles', 'edit-news');
408+
$this->refreshTestUser();
409+
$this->assertTrue($this->testUser->hasAllPermissions('edit-articles', 'edit-news'));
410+
$this->testUser->revokePermissionTo('edit-articles');
411+
$this->refreshTestUser();
412+
$this->assertFalse($this->testUser->hasAllPermissions('edit-articles', 'edit-news'));
413+
}
414+
/** @test */
415+
public function it_can_determine_that_the_user_has_all_of_the_permissions_directly_using_an_array()
416+
{
417+
$this->assertFalse($this->testUser->hasAllPermissions(['edit-articles', 'edit-news']));
418+
$this->testUser->revokePermissionTo('edit-articles');
419+
$this->refreshTestUser();
420+
$this->assertFalse($this->testUser->hasAllPermissions(['edit-news', 'edit-articles']));
421+
$this->testUser->givePermissionTo('edit-news');
422+
$this->refreshTestUser();
423+
$this->testUser->revokePermissionTo($this->testUserPermission);
424+
$this->assertFalse($this->testUser->hasAllPermissions(['edit-articles', 'edit-news']));
425+
}
426+
/** @test */
427+
public function it_can_determine_that_the_user_has_all_of_the_permissions_via_role()
428+
{
429+
$this->testUserRole->givePermissionTo('edit-articles', 'edit-news');
430+
$this->testUser->assignRole('testRole');
431+
$this->assertTrue($this->testUser->hasAllPermissions('edit-articles', 'edit-news'));
432+
}
403433
}

0 commit comments

Comments
 (0)