/**
  * Tests some of the methods.
  *
  * @see \Drupal\user\Entity\User::getRoles()
  * @see \Drupal\user\Entity\User::addRole()
  * @see \Drupal\user\Entity\User::removeRole()
  */
 public function testUserMethods()
 {
     $role_storage = $this->container->get('entity.manager')->getStorage('user_role');
     $role_storage->create(array('id' => 'test_role_one'))->save();
     $role_storage->create(array('id' => 'test_role_two'))->save();
     $role_storage->create(array('id' => 'test_role_three'))->save();
     $values = array('roles' => array(LanguageInterface::LANGCODE_DEFAULT => array('test_role_one')));
     $user = new User($values, 'user');
     $this->assertTrue($user->hasRole('test_role_one'));
     $this->assertFalse($user->hasRole('test_role_two'));
     $this->assertEqual(array('test_role_one'), $user->getRoles());
     $user->addRole('test_role_one');
     $this->assertTrue($user->hasRole('test_role_one'));
     $this->assertFalse($user->hasRole('test_role_two'));
     $this->assertEqual(array('test_role_one'), $user->getRoles());
     $user->addRole('test_role_two');
     $this->assertTrue($user->hasRole('test_role_one'));
     $this->assertTrue($user->hasRole('test_role_two'));
     $this->assertEqual(array('test_role_one', 'test_role_two'), $user->getRoles());
     $user->removeRole('test_role_three');
     $this->assertTrue($user->hasRole('test_role_one'));
     $this->assertTrue($user->hasRole('test_role_two'));
     $this->assertEqual(array('test_role_one', 'test_role_two'), $user->getRoles());
     $user->removeRole('test_role_one');
     $this->assertFalse($user->hasRole('test_role_one'));
     $this->assertTrue($user->hasRole('test_role_two'));
     $this->assertEqual(array('test_role_two'), $user->getRoles());
 }