Passed
Pull Request — master (#53)
by
unknown
04:07
created

PasswordStrengthTest   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 27
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 12
dl 0
loc 27
rs 10
c 0
b 0
f 0
wmc 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A testMinTestScore() 0 4 1
A testHistoricCheckCount() 0 4 1
A testPasswordMinLength() 0 4 1
A testTestNamesInclude() 0 7 1
1
<?php
2
3
namespace CWP\Core\Tests;
4
5
use SilverStripe\Dev\SapphireTest;
6
use SilverStripe\Security\Member;
7
8
class PasswordStrengthTest extends SapphireTest
9
{
10
    public function testPasswordMinLength()
11
    {
12
        $passwordValidator = Member::password_validator();
13
        $this->assertGreaterThanOrEqual(10, $passwordValidator->getMinLength());
14
    }
15
16
    public function testMinTestScore()
17
    {
18
        $passwordValidator = Member::password_validator();
19
        $this->assertGreaterThanOrEqual(3, $passwordValidator->getMinTestScore());
20
    }
21
22
    public function testHistoricCheckCount()
23
    {
24
        $passwordValidator = Member::password_validator();
25
        $this->assertGreaterThanOrEqual(6, $passwordValidator->getHistoricCount());
26
    }
27
28
    public function testTestNamesInclude()
29
    {
30
        $passwordValidator = Member::password_validator();
31
        $this->assertContains('lowercase', $passwordValidator->getTestNames());
32
        $this->assertContains('uppercase', $passwordValidator->getTestNames());
33
        $this->assertContains('digits', $passwordValidator->getTestNames());
34
        $this->assertContains('punctuation', $passwordValidator->getTestNames());
35
    }
36
}
37