@@ -145,14 +145,23 @@ protected function hasPermissionAssertions()
145145 $ this ->assertTrue ($ this ->user ->hasPermission (EnumsPermission::PERM_A ));
146146 $ this ->assertTrue ($ this ->user ->hasPermission ('permission_b ' , 'team_a ' ));
147147 $ this ->assertTrue ($ this ->user ->hasPermission ('permission_b ' , $ team ));
148+ $ this ->assertFalse ($ this ->user ->doesntHavePermission (EnumsPermission::PERM_A ));
149+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('permission_b ' , 'team_a ' ));
150+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('permission_b ' , $ team ));
148151 $ this ->app ['config ' ]->set ('laratrust.teams.strict_check ' , true );
149152 $ this ->assertFalse ($ this ->user ->hasPermission ('permission_c ' ));
153+ $ this ->assertTrue ($ this ->user ->doesntHavePermission ('permission_c ' ));
150154 $ this ->app ['config ' ]->set ('laratrust.teams.strict_check ' , false );
151155 $ this ->assertTrue ($ this ->user ->hasPermission ('permission_c ' ));
152156 $ this ->assertTrue ($ this ->user ->hasPermission ('permission_c ' , 'team_a ' ));
153157 $ this ->assertTrue ($ this ->user ->hasPermission ('permission_c ' , $ team ));
154158 $ this ->assertTrue ($ this ->user ->hasPermission ('permission_d ' ));
155159 $ this ->assertFalse ($ this ->user ->hasPermission ('permission_e ' ));
160+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('permission_c ' ));
161+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('permission_c ' , 'team_a ' ));
162+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('permission_c ' , $ team ));
163+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('permission_d ' ));
164+ $ this ->assertTrue ($ this ->user ->doesntHavePermission ('permission_e ' ));
156165
157166 $ this ->assertTrue ($ this ->user ->hasPermission ([EnumsPermission::PERM_A , 'permission_b ' , 'permission_c ' , 'permission_d ' , 'permission_e ' ]));
158167 $ this ->assertTrue ($ this ->user ->hasPermission ('permission_a|permission_b|permission_c|permission_d|permission_e ' ));
@@ -163,13 +172,26 @@ protected function hasPermissionAssertions()
163172 $ this ->assertFalse ($ this ->user ->hasPermission (['permission_a ' , 'permission_b ' , 'permission_e ' ], requireAll: true ));
164173 $ this ->assertFalse ($ this ->user ->hasPermission (['permission_e ' , 'permission_f ' ]));
165174
175+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ([EnumsPermission::PERM_A , 'permission_b ' , 'permission_c ' , 'permission_d ' , 'permission_e ' ]));
176+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('permission_a|permission_b|permission_c|permission_d|permission_e ' ));
177+ $ this ->assertFalse ($ this ->user ->doesntHavePermission (['permission_a ' , 'permission_d ' ], requireAll: true ));
178+ $ this ->assertFalse ($ this ->user ->doesntHavePermission (['permission_a ' , 'permission_b ' , 'permission_d ' ], requireAll: true ));
179+ $ this ->assertTrue ($ this ->user ->doesntHavePermission ([EnumsPermission::PERM_A , 'permission_b ' , 'permission_d ' ], 'team_a ' , true ));
180+ $ this ->assertTrue ($ this ->user ->doesntHavePermission (['permission_a ' , 'permission_b ' , 'permission_d ' ], $ team , true ));
181+ $ this ->assertTrue ($ this ->user ->doesntHavePermission (['permission_a ' , 'permission_b ' , 'permission_e ' ], requireAll: true ));
182+ $ this ->assertTrue ($ this ->user ->doesntHavePermission (['permission_e ' , 'permission_f ' ]));
183+
166184 $ this ->app ['config ' ]->set ('laratrust.teams.enabled ' , false );
167185 $ this ->assertTrue ($ this ->user ->hasPermission (['permission_a ' , 'permission_b ' , 'permission_d ' ], 'team_a ' , true ));
168186 $ this ->assertTrue ($ this ->user ->hasPermission (['permission_a ' , 'permission_b ' , 'permission_d ' ], $ team , true ));
187+ $ this ->assertFalse ($ this ->user ->doesntHavePermission (['permission_a ' , 'permission_b ' , 'permission_d ' ], 'team_a ' , true ));
188+ $ this ->assertFalse ($ this ->user ->doesntHavePermission (['permission_a ' , 'permission_b ' , 'permission_d ' ], $ team , true ));
169189
170190 $ this ->app ['config ' ]->set ('laratrust.cache.enabled ' , false );
171191 $ this ->assertTrue ($ this ->user ->hasPermission ('permission_b ' , 'team_a ' ));
172192 $ this ->assertTrue ($ this ->user ->hasPermission ('permission_c ' , 'team_a ' ));
193+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('permission_b ' , 'team_a ' ));
194+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('permission_c ' , 'team_a ' ));
173195 }
174196
175197 protected function hasPermissionWithPlaceholderSupportAssertions ()
@@ -205,11 +227,22 @@ protected function hasPermissionWithPlaceholderSupportAssertions()
205227 $ this ->assertTrue ($ this ->user ->hasPermission ('admin.users ' ));
206228 $ this ->assertFalse ($ this ->user ->hasPermission ('admin.config ' , 'team_a ' ));
207229
230+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('admin.posts ' ));
231+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('admin.pages ' ));
232+ $ this ->assertFalse ($ this ->user ->doesntHavePermission ('admin.users ' ));
233+ $ this ->assertTrue ($ this ->user ->doesntHavePermission ('admin.config ' , 'team_a ' ));
234+
208235 $ this ->assertTrue ($ this ->user ->hasPermission (['admin.* ' ]));
209236 $ this ->assertTrue ($ this ->user ->hasPermission (['admin.* ' ]));
210237 $ this ->assertTrue ($ this ->user ->hasPermission (['config.* ' ], 'team_a ' ));
211238 $ this ->assertTrue ($ this ->user ->hasPermission (['config.* ' ]));
212239 $ this ->assertFalse ($ this ->user ->hasPermission (['site.* ' ]));
240+
241+ $ this ->assertFalse ($ this ->user ->doesntHavePermission (['admin.* ' ]));
242+ $ this ->assertFalse ($ this ->user ->doesntHavePermission (['admin.* ' ]));
243+ $ this ->assertFalse ($ this ->user ->doesntHavePermission (['config.* ' ], 'team_a ' ));
244+ $ this ->assertFalse ($ this ->user ->doesntHavePermission (['config.* ' ]));
245+ $ this ->assertTrue ($ this ->user ->doesntHavePermission (['site.* ' ]));
213246 }
214247
215248 public function userDisableTheRolesAndPermissionsCachingAssertions ()
0 commit comments