示例#1
0
def test_case_insensitive_dict_ranked():
    passcheck = PassCheck(
        [pt.CaseInsensitiveDictPattern('', [b'pass', b'passwd'], ranked=True)])
    result = passcheck.get_result('PasS')
    assert result.combinations == 2**len('pass')
    assert ceil(result.entropy) == 4
示例#2
0
def test_dict():
    passcheck = PassCheck([pt.DictPattern('', [b'pass', b'passwd'])])
    result = passcheck.get_result('pass')
    assert result.combinations == 2
    assert ceil(result.entropy) == 1
示例#3
0
def test_title_case_dict():
    passcheck = PassCheck([pt.TitleCaseDictPattern('', [b'pass', b'passwd'])])
    result = passcheck.get_result('Pass')
    assert result.combinations == 4
    assert ceil(result.entropy) == 2
示例#4
0
def test_letters():
    passcheck = PassCheck([pt.MultipleBytesPattern('', letters)])
    result = passcheck.get_result('Abcde')
    assert result.combinations == 387659012
    assert ceil(result.entropy) == 29
示例#5
0
def test_allbytes():
    passcheck = PassCheck([pt.MultipleBytesPattern('', allbytes)])
    result = passcheck.get_result(b'\0\1\2\4\5')
    assert result.combinations == 1103823438080
    assert ceil(result.entropy) == 41
示例#6
0
def test_digits():
    passcheck = PassCheck([pt.MultipleBytesPattern('', digits)])
    result = passcheck.get_result('1234')
    assert result.combinations == 11110
    assert ceil(result.entropy) == 14
示例#7
0
def test_lowercase():
    passcheck = PassCheck([pt.MultipleBytesPattern('', lowercase)])
    result = passcheck.get_result('abcde')
    assert result.combinations == 12356630
    assert ceil(result.entropy) == 24
示例#8
0
def test_case_insensitive_dict_ranked():
    passcheck = PassCheck([pt.CaseInsensitiveDictPattern('', [b'pass', b'passwd'], ranked=True)])
    result = passcheck.get_result('PasS')
    assert result.combinations == 2**len('pass')
    assert ceil(result.entropy) == 4
示例#9
0
def test_same_chars():
    passcheck = PassCheck([pt.SingleBytePattern('', lowercase)])
    result = passcheck.get_result('rrrrr')
    assert result.combinations == 130
    assert ceil(result.entropy) == 8
示例#10
0
def test_dict():
    passcheck = PassCheck([pt.DictPattern('', [b'pass', b'passwd'])])
    result = passcheck.get_result('pass')
    assert result.combinations == 2
    assert ceil(result.entropy) == 1
示例#11
0
def test_title_case_dict():
    passcheck = PassCheck([pt.TitleCaseDictPattern('', [b'pass', b'passwd'])])
    result = passcheck.get_result('Pass')
    assert result.combinations == 4
    assert ceil(result.entropy) == 2
示例#12
0
def test_allbytes():
    passcheck = PassCheck([pt.MultipleBytesPattern('', allbytes)])
    result = passcheck.get_result(b'\0\1\2\4\5')
    assert result.combinations == 1103823438080
    assert ceil(result.entropy) == 41
示例#13
0
def test_letters():
    passcheck = PassCheck([pt.MultipleBytesPattern('', letters)])
    result = passcheck.get_result('Abcde')
    assert result.combinations == 387659012
    assert ceil(result.entropy) == 29
示例#14
0
def test_lowercase():
    passcheck = PassCheck([pt.MultipleBytesPattern('', lowercase)])
    result = passcheck.get_result('abcde')
    assert result.combinations == 12356630
    assert ceil(result.entropy) == 24
示例#15
0
def test_digits():
    passcheck = PassCheck([pt.MultipleBytesPattern('', digits)])
    result = passcheck.get_result('1234')
    assert result.combinations == 11110
    assert ceil(result.entropy) == 14
示例#16
0
def test_same_chars():
    passcheck = PassCheck([pt.SingleBytePattern('', lowercase)])
    result = passcheck.get_result('rrrrr')
    assert result.combinations == 130
    assert ceil(result.entropy) == 8