예제 #1
0
    def test_delete_account_basic(self):
        """Does the basic data go when a user delete their account?

        ..note: Just checks the auth part.

        """
        user1 = create_account('user1', '*****@*****.**', 'Password')
        self.assertIsNotNone(user1)

        delete_account(user1)

        self.assertIsNone(get_user(user1))
        self.assertIsNone(get_uid_username('user1'))
        self.assertIsNone(get_uid_email('*****@*****.**'))

        self.assertFalse(authenticate('user1', 'Password'))
        self.assertIsNone(get_uid_username('user1'))
        self.assertIsNone(get_uid_email('*****@*****.**'))
예제 #2
0
    def test_delete_account_basic(self):
        """Does the basic data go when a user delete their account?

        ..note: Just checks the auth part.

        """
        user1 = create_account('user1', '*****@*****.**', 'Password')
        self.assertIsNotNone(user1)

        delete_account(user1)

        self.assertIsNone(get_user(user1))
        self.assertIsNone(get_uid_username('user1'))
        self.assertIsNone(get_uid_email('*****@*****.**'))

        self.assertFalse(authenticate('user1', 'Password'))
        self.assertIsNone(get_uid_username('user1'))
        self.assertIsNone(get_uid_email('*****@*****.**'))
예제 #3
0
    def test_change_email(self):
        """Can a user change their e-mail?

        """
        user1 = create_account('user1', '*****@*****.**', 'Password')

        # Test email lookup key
        self.assertEqual(get_uid_email('*****@*****.**'), user1)
        # Check correct email
        self.assertEqual(get_user(user1).get('email'), '*****@*****.**')

        # Change e-mail
        self.assertIsNotNone(change_email(user1, '*****@*****.**'))

        # Check new lookup key
        self.assertEqual(get_uid_email('*****@*****.**'), user1)
        # Check old lookup key has been nulled
        self.assertIsNone(get_uid_email('*****@*****.**'))
예제 #4
0
    def test_change_email(self):
        """Can a user change their e-mail?

        """
        user1 = create_account('user1', '*****@*****.**', 'Password')

        # Test email lookup key
        self.assertEqual(get_uid_email('*****@*****.**'), None)

        activate(user1)
        self.assertEqual(get_uid_email('*****@*****.**'), user1)
        # Check correct email
        self.assertEqual(get_user(user1).get('email'), '*****@*****.**')

        # Change e-mail
        self.assertIsNotNone(change_email(user1, '*****@*****.**'))

        # Check new lookup key
        self.assertEqual(get_uid_email('*****@*****.**'), user1)
        # Check old lookup key has been nulled
        self.assertIsNone(get_uid_email('*****@*****.**'))
예제 #5
0
    def test_create_user(self):
        """Check basic user creation stuffs.

        This also in turn tests check_username(), check_username_pattern(),
        check_email(), check_email_pattern(), get_username() and get_email().

        """
        user1 = create_account('user1', '*****@*****.**', 'Password')
        self.assertIsNotNone(user1)

        # Duplicate username
        self.assertIsNone(create_account('user1', '*****@*****.**',
                                         'Password'))

        # Duplicate email
        self.assertIsNone(create_account('userX', '*****@*****.**',
                                         'Password'))

        # Invalid username
        self.assertIsNone(create_account('u', '*****@*****.**', 'Password'))

        # Invalid email
        self.assertIsNone(create_account('userX', 'userX', 'Password'))

        # Reserved username
        self.assertIsNone(create_account('help', '*****@*****.**', 'Password'))

        # You can't get a UID for a non-activated user
        self.assertEqual(get_uid('user1'), None)

        activate(user1)
        self.assertEqual(get_uid('user1'), user1)
        self.assertEqual(get_uid('*****@*****.**'), user1)

        # Shouldn't work wiht invali users
        self.assertIsNone(get_user(K.NIL_VALUE))

        # Ensure if works with a valid user
        self.assertIsNotNone(get_user(user1))
        self.assertIsNotNone(type(get_user(user1)))
        self.assertEqual(type(get_user(user1)), dict)
        self.assertEqual(get_user(user1).get('username'), 'user1')
        self.assertEqual(get_user(user1).get('email'), '*****@*****.**')

        # Check get_uid_* with invalid entries
        self.assertIsNone(get_uid_username('testymctest'))
        self.assertIsNone(get_uid_email('*****@*****.**'))

        # With valid
        self.assertEqual(get_uid_username('user1'), user1)
        self.assertEqual(get_uid_email('*****@*****.**'), user1)

        # Create a new user to check the defaults
        user2 = create_account('user2', '*****@*****.**', 'Password')

        # Are values set as expected?
        user = get_user(user2)

        self.assertIsNotNone(user)
        self.assertEqual(user.get('_id'), user2)
        self.assertEqual(user.get('username'), 'user2')
        self.assertEqual(user.get('email'), '*****@*****.**')
        self.assertEqual(user.get('last_login'), -1)
        self.assertFalse(user.get('active'))
        self.assertFalse(user.get('banned'))
        self.assertFalse(user.get('op'))
        self.assertFalse(user.get('muted'))
        self.assertEqual(user.get('about'), '')
        self.assertEqual(user.get('score'), 0)
        self.assertEqual(user.get('alerts_last_checked'), -1)
        self.assertIsNotNone(user.get('ttl'))

        # Generated values, we don't know what they SHOULD be
        self.assertIsNotNone(user.get('password'))
        self.assertIsNotNone(user.get('created'))

        # Check user_exists works
        self.assertTrue(user_exists(user1))
        # Check it fails when invalid value
        self.assertFalse(user_exists(K.NIL_VALUE))
예제 #6
0
    def test_create_user(self):
        """Check basic user creation stuffs.

        This also in turn tests check_username(), check_username_pattern(),
        check_email(), check_email_pattern(), get_username() and get_email().

        """
        user1 = create_account('user1', '*****@*****.**', 'Password')
        self.assertIsNotNone(user1)

        # Duplicate username
        self.assertIsNone(
            create_account('user1', '*****@*****.**', 'Password'))

        # Duplicate email
        self.assertIsNone(
            create_account('userX', '*****@*****.**', 'Password'))

        # Invalid username
        self.assertIsNone(
            create_account('u', '*****@*****.**', 'Password'))

        # Invalid email
        self.assertIsNone(
            create_account('userX', 'userX', 'Password'))

        # Reserved username
        self.assertIsNone(
            create_account('help', '*****@*****.**', 'Password'))

        # You can't get a UID for a non-activated user
        self.assertEqual(get_uid('user1'), None)

        activate(user1)
        self.assertEqual(get_uid('user1'), user1)
        self.assertEqual(get_uid('*****@*****.**'), user1)

        # Shouldn't work wiht invali users
        self.assertIsNone(get_user(K.NIL_VALUE))

        # Ensure if works with a valid user
        self.assertIsNotNone(get_user(user1))
        self.assertIsNotNone(type(get_user(user1)))
        self.assertEqual(type(get_user(user1)), dict)
        self.assertEqual(get_user(user1).get('username'), 'user1')
        self.assertEqual(get_user(user1).get('email'), '*****@*****.**')

        # Check get_uid_* with invalid entries
        self.assertIsNone(get_uid_username('testymctest'))
        self.assertIsNone(get_uid_email('*****@*****.**'))

        # With valid
        self.assertEqual(get_uid_username('user1'), user1)
        self.assertEqual(get_uid_email('*****@*****.**'), user1)

        # Create a new user to check the defaults
        user2 = create_account('user2', '*****@*****.**', 'Password')

        # Are values set as expected?
        user = get_user(user2)

        self.assertIsNotNone(user)
        self.assertEqual(user.get('_id'), user2)
        self.assertEqual(user.get('username'), 'user2')
        self.assertEqual(user.get('email'), '*****@*****.**')
        self.assertEqual(user.get('last_login'), -1)
        self.assertFalse(user.get('active'))
        self.assertFalse(user.get('banned'))
        self.assertFalse(user.get('op'))
        self.assertFalse(user.get('muted'))
        self.assertEqual(user.get('about'), '')
        self.assertEqual(user.get('score'), 0)
        self.assertEqual(user.get('alerts_last_checked'), -1)
        self.assertIsNotNone(user.get('ttl'))

        # Generated values, we don't know what they SHOULD be
        self.assertIsNotNone(user.get('password'))
        self.assertIsNotNone(user.get('created'))

        # Check user_exists works
        self.assertTrue(user_exists(user1))
        # Check it fails when invalid value
        self.assertFalse(user_exists(K.NIL_VALUE))