these code bits were part of old logic that was already refactored out

- only references were in unit tests

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
This commit is contained in:
Arthur Schiwon 2020-09-04 10:27:25 +02:00 committed by backportbot[bot]
parent 55bad53353
commit 303bac6c75
2 changed files with 0 additions and 132 deletions

View File

@ -108,7 +108,6 @@ class User {
* DB config keys for user preferences * DB config keys for user preferences
*/ */
public const USER_PREFKEY_FIRSTLOGIN = 'firstLoginAccomplished'; public const USER_PREFKEY_FIRSTLOGIN = 'firstLoginAccomplished';
public const USER_PREFKEY_LASTREFRESH = 'lastFeatureRefresh';
/** /**
* @brief constructor, make sure the subclasses call this one! * @brief constructor, make sure the subclasses call this one!
@ -150,32 +149,6 @@ class User {
\OCP\Util::connectHook('OC_User', 'post_login', $this, 'handlePasswordExpiry'); \OCP\Util::connectHook('OC_User', 'post_login', $this, 'handlePasswordExpiry');
} }
/**
* @brief updates properties like email, quota or avatar provided by LDAP
* @return null
*/
public function update() {
if (is_null($this->dn)) {
return null;
}
$hasLoggedIn = $this->config->getUserValue($this->uid, 'user_ldap',
self::USER_PREFKEY_FIRSTLOGIN, 0);
if ($this->needsRefresh()) {
$this->updateEmail();
$this->updateQuota();
if ($hasLoggedIn !== 0) {
//we do not need to try it, when the user has not been logged in
//before, because the file system will not be ready.
$this->updateAvatar();
//in order to get an avatar as soon as possible, mark the user
//as refreshed only when updating the avatar did happen
$this->markRefreshTime();
}
}
}
/** /**
* marks a user as deleted * marks a user as deleted
* *
@ -196,7 +169,6 @@ class User {
* @param array $ldapEntry the user entry as retrieved from LDAP * @param array $ldapEntry the user entry as retrieved from LDAP
*/ */
public function processAttributes($ldapEntry) { public function processAttributes($ldapEntry) {
$this->markRefreshTime();
//Quota //Quota
$attr = strtolower($this->connection->ldapQuotaAttribute); $attr = strtolower($this->connection->ldapQuotaAttribute);
if (isset($ldapEntry[$attr])) { if (isset($ldapEntry[$attr])) {
@ -396,31 +368,6 @@ class User {
$this->uid, 'user_ldap', self::USER_PREFKEY_FIRSTLOGIN, 1); $this->uid, 'user_ldap', self::USER_PREFKEY_FIRSTLOGIN, 1);
} }
/**
* @brief marks the time when user features like email have been updated
* @return null
*/
public function markRefreshTime() {
$this->config->setUserValue(
$this->uid, 'user_ldap', self::USER_PREFKEY_LASTREFRESH, time());
}
/**
* @brief checks whether user features needs to be updated again by
* comparing the difference of time of the last refresh to now with the
* desired interval
* @return bool
*/
private function needsRefresh() {
$lastChecked = $this->config->getUserValue($this->uid, 'user_ldap',
self::USER_PREFKEY_LASTREFRESH, 0);
if ((time() - (int)$lastChecked) < (int)$this->config->getAppValue('user_ldap', 'updateAttributesInterval', 86400)) {
return false;
}
return true;
}
/** /**
* Stores a key-value pair in relation to this user * Stores a key-value pair in relation to this user
* *

View File

@ -824,57 +824,6 @@ class UserTest extends \Test\TestCase {
$this->user->updateAvatar(); $this->user->updateAvatar();
} }
public function testUpdateBeforeFirstLogin() {
$this->config->expects($this->at(0))
->method('getUserValue')
->with($this->equalTo($this->uid), $this->equalTo('user_ldap'),
$this->equalTo(User::USER_PREFKEY_FIRSTLOGIN),
$this->equalTo(0))
->willReturn(0);
$this->config->expects($this->at(1))
->method('getUserValue')
->with($this->equalTo($this->uid), $this->equalTo('user_ldap'),
$this->equalTo(User::USER_PREFKEY_LASTREFRESH),
$this->equalTo(0))
->willReturn(0);
$this->config->expects($this->exactly(2))
->method('getUserValue');
$this->config->expects($this->never())
->method('setUserValue');
$this->user->update();
}
public function testUpdateAfterFirstLogin() {
$this->config->expects($this->at(0))
->method('getUserValue')
->with($this->equalTo($this->uid), $this->equalTo('user_ldap'),
$this->equalTo(User::USER_PREFKEY_FIRSTLOGIN),
$this->equalTo(0))
->willReturn(1);
$this->config->expects($this->at(1))
->method('getUserValue')
->with($this->equalTo($this->uid), $this->equalTo('user_ldap'),
$this->equalTo(User::USER_PREFKEY_LASTREFRESH),
$this->equalTo(0))
->willReturn(0);
$this->config->expects($this->exactly(2))
->method('getUserValue');
$this->config->expects($this->once())
->method('setUserValue')
->with($this->equalTo($this->uid), $this->equalTo('user_ldap'),
$this->equalTo(User::USER_PREFKEY_LASTREFRESH),
$this->anything())
->willReturn(true);
$this->connection->expects($this->any())
->method('resolveRule')
->with('avatar')
->willReturn(['jpegphoto', 'thumbnailphoto']);
$this->user->update();
}
public function extStorageHomeDataProvider() { public function extStorageHomeDataProvider() {
return [ return [
[ 'myFolder', null ], [ 'myFolder', null ],
@ -918,33 +867,6 @@ class UserTest extends \Test\TestCase {
$this->assertSame($expected, $actual); $this->assertSame($expected, $actual);
} }
public function testUpdateNoRefresh() {
$this->config->expects($this->at(0))
->method('getUserValue')
->with($this->equalTo($this->uid), $this->equalTo('user_ldap'),
$this->equalTo(User::USER_PREFKEY_FIRSTLOGIN),
$this->equalTo(0))
->willReturn(1);
$this->config->expects($this->at(1))
->method('getUserValue')
->with($this->equalTo($this->uid), $this->equalTo('user_ldap'),
$this->equalTo(User::USER_PREFKEY_LASTREFRESH),
$this->equalTo(0))
->willReturn(time() - 10);
$this->config->expects($this->once())
->method('getAppValue')
->with($this->equalTo('user_ldap'),
$this->equalTo('updateAttributesInterval'),
$this->anything())
->willReturn(1800);
$this->config->expects($this->exactly(2))
->method('getUserValue');
$this->config->expects($this->never())
->method('setUserValue');
$this->user->update();
}
public function testMarkLogin() { public function testMarkLogin() {
$this->config->expects($this->once()) $this->config->expects($this->once())
->method('setUserValue') ->method('setUserValue')
@ -997,7 +919,6 @@ class UserTest extends \Test\TestCase {
public function testProcessAttributes() { public function testProcessAttributes() {
$requiredMethods = [ $requiredMethods = [
'markRefreshTime',
'updateQuota', 'updateQuota',
'updateEmail', 'updateEmail',
'composeAndStoreDisplayName', 'composeAndStoreDisplayName',