aboutsummaryrefslogtreecommitdiffstats
path: root/tests/lib/Authentication/Token
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/Authentication/Token')
-rw-r--r--tests/lib/Authentication/Token/PublicKeyTokenMapperTest.php49
-rw-r--r--tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php18
2 files changed, 65 insertions, 2 deletions
diff --git a/tests/lib/Authentication/Token/PublicKeyTokenMapperTest.php b/tests/lib/Authentication/Token/PublicKeyTokenMapperTest.php
index 4b87f7101b5..8ff7ec70bf7 100644
--- a/tests/lib/Authentication/Token/PublicKeyTokenMapperTest.php
+++ b/tests/lib/Authentication/Token/PublicKeyTokenMapperTest.php
@@ -261,4 +261,53 @@ class PublicKeyTokenMapperTest extends TestCase {
$this->assertFalse($this->mapper->hasExpiredTokens('user1'));
$this->assertTrue($this->mapper->hasExpiredTokens('user3'));
}
+
+ public function testUpdateTokenActivity() {
+ $token = '6d9a290d239d09f2cc33a03cc54cccd46f7dc71630dcc27d39214824bd3e093f1feb4e2b55eb159d204caa15dee9556c202a5aa0b9d67806c3f4ec2cde11af67';
+ $dbToken = $this->mapper->getToken($token);
+
+ $this->assertEquals($dbToken->getLastActivity(), $this->time - 120);
+ $this->assertEquals($this->time - 60 * 10, $dbToken->getLastCheck());
+
+ $this->mapper->updateActivity($dbToken, $this->time);
+
+ $updatedDbToken = $this->mapper->getToken($token);
+
+ $this->assertEquals($this->time, $updatedDbToken->getLastActivity());
+ $this->assertEquals($this->time - 60 * 10, $dbToken->getLastCheck());
+ $this->assertEquals($this->time, $dbToken->getLastActivity());
+ }
+
+ public function testUpdateTokenActivityDebounce() {
+ $token = '6d9a290d239d09f2cc33a03cc54cccd46f7dc71630dcc27d39214824bd3e093f1feb4e2b55eb159d204caa15dee9556c202a5aa0b9d67806c3f4ec2cde11af67';
+ $dbToken = $this->mapper->getToken($token);
+
+ $this->assertEquals($dbToken->getLastActivity(), $this->time - 120);
+ $this->assertEquals($this->time - 60 * 10, $dbToken->getLastCheck());
+
+ $this->mapper->updateActivity($dbToken, $this->time - 110);
+
+ $updatedDbToken = $this->mapper->getToken($token);
+
+ $this->assertEquals($this->time - 120, $updatedDbToken->getLastActivity());
+ $this->assertEquals($this->time - 60 * 10, $dbToken->getLastCheck());
+ $this->assertEquals($this->time - 110, $dbToken->getLastActivity());
+ }
+
+ public function testUpdateTokenActivityDebounceUpdate() {
+ $token = '6d9a290d239d09f2cc33a03cc54cccd46f7dc71630dcc27d39214824bd3e093f1feb4e2b55eb159d204caa15dee9556c202a5aa0b9d67806c3f4ec2cde11af67';
+ $dbToken = $this->mapper->getToken($token);
+
+ $this->assertEquals($this->time - 120, $dbToken->getLastActivity());
+ $this->assertEquals($this->time - 60 * 10, $dbToken->getLastCheck());
+
+ $dbToken->setLastCheck($this->time - 100);
+ $this->mapper->updateActivity($dbToken, $this->time - 110);
+
+ $updatedDbToken = $this->mapper->getToken($token);
+
+ $this->assertEquals($this->time - 110, $updatedDbToken->getLastActivity());
+ $this->assertEquals($this->time - 100, $dbToken->getLastCheck());
+ $this->assertEquals($this->time - 110, $dbToken->getLastActivity());
+ }
}
diff --git a/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php b/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php
index 3c81eade700..5f0f65e2cc9 100644
--- a/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php
+++ b/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php
@@ -191,8 +191,6 @@ class PublicKeyTokenProviderTest extends TestCase {
]);
$this->tokenProvider->updateTokenActivity($tk);
-
- $this->assertEquals($this->time, $tk->getLastActivity());
}
public function testUpdateTokenDebounce() {
@@ -210,6 +208,22 @@ class PublicKeyTokenProviderTest extends TestCase {
$this->tokenProvider->updateTokenActivity($tk);
}
+ public function testUpdateTokenDebounceWithUpdatedFields() {
+ $tk = new PublicKeyToken();
+ $this->config->method('getSystemValueInt')
+ ->willReturnCallback(function ($value, $default) {
+ return $default;
+ });
+ $tk->setLastActivity($this->time - 30);
+ $tk->setLastCheck($this->time - 30);
+
+ $this->mapper->expects($this->once())
+ ->method('updateActivity')
+ ->with($tk, $this->time);
+
+ $this->tokenProvider->updateTokenActivity($tk);
+ }
+
public function testGetTokenByUser() {
$this->mapper->expects($this->once())
->method('getTokenByUser')