def test_insert_user_same_email(self): """ Test insert an invalid user account with an email that already exist in the database. Expect an error message. """ userhelper.insert_new_user("joe", "*****@*****.**", "passwd", "passwd", "-1") user = User.query.filter_by(email="*****@*****.**").first() self.assertIsNotNone(user) errmsg = userhelper.insert_new_user("joseph", "*****@*****.**", "passwd", "passwd", "1") self.assertEqual(errmsg, (["Email has already been used."], None))
def test_insert_user_full_info(self): """ Test insert a normal user account with full info. Expect output to match correct data. """ userhelper.insert_new_user("joe", "*****@*****.**", "passwd", "passwd", "-1") user = User.query.filter_by(email="*****@*****.**").first() self.assertIsNotNone(user) self.assertGreater(user.uid, 0) self.assertEqual(user.name, "joe") self.assertEqual(user.password, "passwd") self.assertEqual(user.type, -1)
def test_insert_user_used_email_wrong_passwd(self): """ Test insert an invalid user with same email input and password is different. Expect an error message. """ userhelper.insert_new_user("joe", "*****@*****.**", "passwd", "passwd", "-1") user = User.query.filter_by(email="*****@*****.**").first() self.assertIsNotNone(user) # to show the insert succeed errmsg = userhelper.insert_new_user("joseph", "*****@*****.**", "passwd", "paswd", "-1") self.assertEqual( errmsg, (["Email has already been used.", "Passwords do not match." ], None))
def test_insert_user_blank(self): """ Test insert an invalid user with all info are blank. Expect an error message. """ errmsg = userhelper.insert_new_user("", "", "", "", "0") self.assertEqual( errmsg, (['An email is required.', 'A password is required.'], None))
def test_insert_user_miss_key_password(self): """ Test insert an invalid user with missing password input. Expect an error message. """ errmsg = userhelper.insert_new_user("joe", "*****@*****.**", "", "", "-1") user = User.query.filter_by(email="*****@*****.**").first() # to show that insert failed self.assertIsNone(user) self.assertEqual(errmsg, (["A password is required."], None))
def test_insert_user_diff_password(self): """ Test insert an invalid user with second password checking differs from the first password input. Expect an error message. """ errmsg = userhelper.insert_new_user("joe", "*****@*****.**", "passwd", "dwssap", "-1") user = User.query.filter_by(email="*****@*****.**").first() # to show that insert failed self.assertIsNone(user) self.assertEqual(errmsg, (["Passwords do not match."], None))
def test_insert_user_miss_email_wrong_password(self): """ Test insert an invalid user with missing email input and password is different. Expect an error message. """ errmsg = userhelper.insert_new_user("joe", "", "passwd", "passsd", "-1") user = User.query.filter_by(email="*****@*****.**").first() # to show that insert failed self.assertIsNone(user) self.assertEqual( errmsg, (["Passwords do not match.", "An email is required."], None))
def test_insert_user_miss_email_password(self): """ Test insert an invalid user with both password and email are missing. Expect an error message. """ # miss email and password errmsg = userhelper.insert_new_user("joe", "", "", "", "-1") user = User.query.filter_by(name="joe").first() # to show that insert failed self.assertIsNone(user) self.assertEqual( errmsg, (["An email is required.", "A password is required."], None))