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('*****@*****.**'))
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('*****@*****.**'))
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('*****@*****.**'))
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))
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))