Passed
Push — master ( f57ca7...0b60a8 )
by Garion
02:37 queued 10s
created

BackupCodeGeneratorTest::testHash()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 3
nc 1
nop 0
dl 0
loc 5
rs 10
c 0
b 0
f 0
1
<?php declare(strict_types=1);
2
3
namespace SilverStripe\MFA\Service;
4
5
use SilverStripe\Dev\SapphireTest;
6
use SilverStripe\MFA\State\BackupCode;
7
8
class BackupCodeGeneratorTest extends SapphireTest
9
{
10
    protected function setUp()
11
    {
12
        parent::setUp();
13
14
        BackupCodeGenerator::config()
15
            ->set('backup_code_count', 3)
16
            ->set('backup_code_length', 6);
17
    }
18
19
    public function testGenerate()
20
    {
21
        $generator = new BackupCodeGenerator();
22
        /** @var BackupCode[] $result */
23
        $result = $generator->generate();
24
25
        $this->assertCount(3, $result, 'Expected number of codes are generated');
26
        foreach ($result as $backupCode) {
27
            $this->assertSame(
28
                6,
29
                strlen($backupCode->getCode()),
30
                'Generated codes are of configured length'
31
            );
32
        }
33
    }
34
}
35