Completed
Pull Request — master (#63)
by
unknown
04:39
created

BackupCodeGeneratorTest   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 23
Duplicated Lines 0 %

Importance

Changes 3
Bugs 0 Features 0
Metric Value
eloc 12
c 3
b 0
f 0
dl 0
loc 23
rs 10
wmc 3

2 Methods

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