예제 #1
0
    def test_password_user_attrs(self):
        policy = PasswordUserAttrs()

        self.user.username = '******'
        self.user.email = '*****@*****.**'
        self.user.first_name = 'Rudolph'
        # Try names with accents:
        self.user.last_name = u'Frögér'
        self.user.save()

        passwds = [
            ('AbcDef#12Rudolph', False),
            ('1234rf#examplE', False),
            ('Rudolph#12345', False),
            # Should match froger with accents:
            (u'Froger#12345', False),
            # Short pieces are allowed, like 'rf':
            ('rf54321#AbCd', True),
        ]
        for passwd, valid in passwds:
            form = StrictSetPasswordForm(self.user, data={
                'new_password1': passwd,
                'new_password2': passwd})
            self.assertEqual(form.is_valid(), valid)
            if not valid:
                self.assertEqual(form.errors['new_password1'],
                                 [unicode(policy.text)])
예제 #2
0
    def test_password_user_attrs(self):
        policy = PasswordUserAttrs()

        self.user.username = '******'
        self.user.email = '*****@*****.**'
        self.user.first_name = 'Rudolph'
        # Try names with accents:
        self.user.last_name = u'Frögér'
        self.user.save()

        passwds = [
            ('AbcDef#12Rudolph', False),
            ('1234rf#examplE', False),
            ('Rudolph#12345', False),
            # Should match froger with accents:
            (u'Froger#12345', False),
            # Short pieces are allowed, like 'rf':
            ('rf54321#AbCd', True),
        ]
        for passwd, valid in passwds:
            form = StrictSetPasswordForm(self.user,
                                         data={
                                             'new_password1': passwd,
                                             'new_password2': passwd
                                         })
            self.assertEqual(form.is_valid(), valid)
            if not valid:
                self.assertEqual(form.errors['new_password1'],
                                 [unicode(policy.text)])
예제 #3
0
    def test_password_disallowed_terms(self):
        policy = PasswordDisallowedTerms(terms=['Testsite'])

        passwds = [
            ('123TestSite###', False),
            ('123Site###Test', True),
        ]
        for passwd, valid in passwds:
            form = StrictSetPasswordForm(self.user, data={
                'new_password1': passwd,
                'new_password2': passwd})
            self.assertEqual(form.is_valid(), valid)
            if not valid:
                errs = [unicode(policy.policy_text)]
                self.assertEqual(form.errors['new_password1'], errs)
예제 #4
0
    def test_password_disallowed_terms(self):
        policy = PasswordDisallowedTerms(terms=['Testsite'])

        passwds = [
            ('123TestSite###', False),
            ('123Site###Test', True),
        ]
        for passwd, valid in passwds:
            form = StrictSetPasswordForm(self.user, data={
                'new_password1': passwd,
                'new_password2': passwd})
            self.assertEqual(form.is_valid(), valid)
            if not valid:
                errs = [str(policy.policy_text)]
                self.assertEqual(form.errors['new_password1'], errs)
예제 #5
0
    def test_password_limit_reuse(self):
        policy = PasswordLimitReuse()

        passwds = [
            ('123Site###Test', True),
            ('1234Site###Test', True),
            ('12345Site###Test', True),
            ('123456Site###Test', True),
            ('123456Site###Test', False),
            ('12345Site###Test', False),
            ('1234Site###Test', False),
            ('123ite###Test', True),
            ('1234567Site###Test', True),
        ]
        for passwd, valid in passwds:
            form = StrictSetPasswordForm(self.user, data={
                'new_password1': passwd,
                'new_password2': passwd})
            self.assertEqual(form.is_valid(), valid)
            if not valid:
                self.assertEqual(form.errors['new_password1'],
                                 [unicode(policy.policy_text)])
예제 #6
0
    def test_password_limit_reuse(self):
        policy = PasswordLimitReuse()

        passwds = [
            ('123Site###Test', True),
            ('1234Site###Test', True),
            ('12345Site###Test', True),
            ('123456Site###Test', True),
            ('123456Site###Test', False),
            ('12345Site###Test', False),
            ('1234Site###Test', False),
            ('123ite###Test', True),
            ('1234567Site###Test', True),
        ]
        for passwd, valid in passwds:
            form = StrictSetPasswordForm(self.user, data={
                'new_password1': passwd,
                'new_password2': passwd})
            self.assertEqual(form.is_valid(), valid)
            if not valid:
                self.assertEqual(form.errors['new_password1'],
                                 [str(policy.policy_text)])