]> git.mxchange.org Git - friendica.git/blob - tests/src/Security/TwoFactor/Model/TrustedBrowserTest.php
Add trusted browser classes
[friendica.git] / tests / src / Security / TwoFactor / Model / TrustedBrowserTest.php
1 <?php
2
3 namespace Friendica\Test\src\Security\TwoFactor\Model;
4
5 use Friendica\Security\TwoFactor\Model\TrustedBrowser;
6 use Friendica\Util\DateTimeFormat;
7 use Friendica\Util\Strings;
8
9 class TrustedBrowserTest extends \PHPUnit_Framework_TestCase
10 {
11         public function test__construct()
12         {
13                 $hash = Strings::getRandomHex();
14
15                 $trustedBrowser = new TrustedBrowser(
16                         $hash,
17                         42,
18                         'PHPUnit',
19                         DateTimeFormat::utcNow()
20                 );
21
22                 $this->assertEquals($hash, $trustedBrowser->cookie_hash);
23                 $this->assertEquals(42, $trustedBrowser->uid);
24                 $this->assertEquals('PHPUnit', $trustedBrowser->user_agent);
25                 $this->assertNotEmpty($trustedBrowser->created);
26         }
27
28         public function testRecordUse()
29         {
30                 $hash = Strings::getRandomHex();
31                 $past = DateTimeFormat::utc('now - 5 minutes');
32
33                 $trustedBrowser = new TrustedBrowser(
34                         $hash,
35                         42,
36                         'PHPUnit',
37                         $past,
38                         $past
39                 );
40
41                 $trustedBrowser->recordUse();
42
43                 $this->assertEquals($past, $trustedBrowser->created);
44                 $this->assertGreaterThan($past, $trustedBrowser->last_used);
45         }
46 }