@@ -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