def test_make_password_length(self):
        with self.assertRaises(AssertionError):
            make_password(length=1)

        with self.assertRaises(AssertionError):
            make_password(length='a')

        for i in range(4, 100):
            with self.subTest(i=i):
                self.assertTrue(len(make_password(length=i)) == i)
    def test_make_password_no_chars(self):
        regex = re.compile(r'^[^ -\/:-@\[-`{-~]+$')

        for i in range(4, 100):
            with self.subTest(i=i):
                self.assertRegex(make_password(length=i, chars=False), regex)
    def test_make_password_no_lower(self):
        regex = re.compile(r'[^a-z]+$')

        for i in range(4, 100):
            with self.subTest(i=i):
                self.assertRegex(make_password(length=i, lower=False), regex)
    def test_make_password_no_numbers(self):
        regex = re.compile(r'\D+$')

        for i in range(4, 100):
            with self.subTest(i=i):
                self.assertRegex(make_password(length=i, numbers=False), regex)
 def test_make_password_all_params_false(self):
     with self.assertRaises(AssertionError):
         make_password(numbers=False, upper=False, lower=False, chars=False)
    def test_make_password_all_params_true(self):
        regex = re.compile(
            r'^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[ -\/:-@\[-`{-~]).+$')

        self.assertRegex(make_password(), regex)
    def test_make_password_sequece_not_allowed(self):
        regex = re.compile(r'^(?:[ -\/:-@\[-`{-~][a-z][A-Z][0-9])+$')

        for i in range(4, 10):
            with self.subTest(i=i):
                self.assertNotRegex(make_password(length=i), regex)
Exemplo n.º 8
0
    def test_make_password_no_special_chars(self):
        regex = re.compile(r'^[^ -\/:-@\[-`{-~]+$')

        for i in range(4, 100):
            self.assertRegex(make_password(chars=False), regex)
Exemplo n.º 9
0
    def test_make_password_no_numbers(self):
        regex = re.compile(r'^\D+$')

        for i in range(4, 100):
            self.assertRegex(make_password(numbers=False), regex)
Exemplo n.º 10
0
    def test_make_password_no_lower(self):
        regex = re.compile(r'^[^a-z]+$')

        for i in range(4, 100):
            self.assertRegex(make_password(lower=False), regex)