Issue #2202185 by Wim Leers, effulgentsia, msonnabaum, damiankloip, alexpott: Statically cache Role entities to speed up (User|UserSession)::hasPermission().
							parent
							
								
									9528aedfcf
								
							
						
					
					
						commit
						f6312b85d2
					
				| 
						 | 
				
			
			@ -28,6 +28,7 @@ use Drupal\user\RoleInterface;
 | 
			
		|||
 *   },
 | 
			
		||||
 *   admin_permission = "administer permissions",
 | 
			
		||||
 *   config_prefix = "role",
 | 
			
		||||
 *   static_cache = TRUE,
 | 
			
		||||
 *   entity_keys = {
 | 
			
		||||
 *     "id" = "id",
 | 
			
		||||
 *     "weight" = "weight",
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -53,12 +53,11 @@ class UserRoleAdminTest extends WebTestBase {
 | 
			
		|||
    $this->assertRaw(t('The machine-readable name is already in use. It must be unique.'), 'Duplicate role warning displayed.');
 | 
			
		||||
 | 
			
		||||
    // Test renaming a role.
 | 
			
		||||
    $old_name = $role_name;
 | 
			
		||||
    $role_name = '456';
 | 
			
		||||
    $edit = array('label' => $role_name);
 | 
			
		||||
    $this->drupalPostForm("admin/people/roles/manage/{$role->id()}", $edit, t('Save'));
 | 
			
		||||
    $this->assertRaw(t('Role %label has been updated.', array('%label' => $role_name)));
 | 
			
		||||
    $new_role = entity_load('user_role', $old_name);
 | 
			
		||||
    $new_role = entity_load('user_role', $role->id(), TRUE);
 | 
			
		||||
    $this->assertEqual($new_role->label(), $role_name, 'The role name has been successfully changed.');
 | 
			
		||||
 | 
			
		||||
    // Test deleting a role.
 | 
			
		||||
| 
						 | 
				
			
			@ -67,7 +66,7 @@ class UserRoleAdminTest extends WebTestBase {
 | 
			
		|||
    $this->drupalPostForm(NULL, array(), t('Delete'));
 | 
			
		||||
    $this->assertRaw(t('Role %label has been deleted.', array('%label' => $role_name)));
 | 
			
		||||
    $this->assertNoLinkByHref("admin/people/roles/manage/{$role->id()}", 'Role edit link removed.');
 | 
			
		||||
    $this->assertFalse(entity_load('user_role', $role_name), 'A deleted role can no longer be loaded.');
 | 
			
		||||
    $this->assertFalse(entity_load('user_role', $role->id(), TRUE), 'A deleted role can no longer be loaded.');
 | 
			
		||||
 | 
			
		||||
    // Make sure that the system-defined roles can be edited via the user
 | 
			
		||||
    // interface.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue