def test_change_contact_info(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) a.command("login testUsername testPassword") result1 = a.command("change_contact testUsername name SAUCE") result2 = a.command("change_contact testUsername username *") result3 = a.command("change_contact testUsername address newaddress") # Error cases self.assertEqual("Illegal changed field", result1) # Tried to change an illegal field self.assertEqual( "Invalid parameter for this command", result2) # Updated field was illegal, contact field valid. # Success self.assertEqual("Contact information changed", result3)
def test_delete_user(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) a.command("login brokenUsername brokenPassword") result1 = a.command("delete_user delUsername") a.command("logout") a.command("login testUsername testPassword") result2 = a.command("delete_user BadUsername") result4 = a.command("delete_user delUsername") # Error cases self.assertEqual("Illegal permissions to do this action", result1) self.assertEqual("User unsuccessfully deleted", result2) # Success self.assertEqual("User successfully deleted", result4) a.command("logout")
def test_login_to_database(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) # assume username is in the directory/database result1 = a.command("login BadUser testPassword") result2 = a.command("login testUsername BadPass") result3 = a.command("login testUsername testPassword") # Error cases self.assertEqual("User does not exist", result1) # Username will trip this failure first. self.assertEqual( "Incorrect username/password", result2) # Result will contain an existing user with a bad pass # Success self.assertEqual( "User logged in", result3) # Username and password exist in the database.
def test_view__all_classes(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) result = a.command("LoggedInUser") # Error cases self.assertEqual("Not enrolled in any classes", result) # Success self.assertEqual("List of classes: ", result)
def test_ViewDatabase(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) result = a.command("LoggedInUser") # Error cases self.assertEqual("Illegal permissions to do this activity", result) self.assertEqual("Error while connecting to the database", result) # Success self.assertEqual("Data gathered", result)
def test_send__TA_email(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) result = a.command("From To Subject Body TA UpdatedUser") # Error cases self.assertEqual("Illegal permissions to do this activity", result) self.assertEqual("TA(s) do not exist", result) self.assertEqual("Illegal email subject", result) self.assertEqual("Illegal email body", result) # Success self.assertEqual("Email sent to TA(s) successfully", result)
def send_email(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) result = a.command("From To Subject Body User UpdatedUser") # Error cases self.assertEqual("From user does not exist", result) self.assertEqual("To user does not exist", result) self.assertEqual("Illegal email subject", result) self.assertEqual("Illegal email body", result) # Success self.assertEqual("Email successfully sent", result)
def test_create_course(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) a.command("login brokenUsername brokenPassword") result1 = a.command( "create_course testUsername testCourse 10:00 10:50") a.command("logout") a.command("login testUsername testPassword") result2 = a.command( "create_course testUsername testCourse 10:00 10:50") result3 = a.command("create_course testUsername badTime 10:50") result4 = a.command("create_course testUsername 10:00 badTime") result5 = a.command( "create_course testUsername testcourse 10:00 10:50") result6 = a.command( "create_course testUsername testCourse 10:00 10:50") # Error cases self.assertEqual("Illegal permissions to do this action", result1) # self.assertEqual("Illegal start time entered", result3) # self.assertEqual("Illegal end time entered", result4) # Success self.assertEqual("Course successfully added", result6) a.command("logout")
def test_assign_TA(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) a.command("login brokenUsername brokenPassword") result1 = a.command("add_TA_to_course testCourse TAUsername") a.command("logout") a.command("login testUsername testPassword") result2 = a.command("add_TA_to_course testCourse badTA") result3 = a.command("add_TA_to_course badCourse TAUsername") result4 = a.command("add_TA_to_course testcourse 101 badLab") result5 = a.command("add_TA_to_course testCourse TAUsername") # Error cases self.assertEqual("Illegal permissions to do this action", result1) self.assertEqual("TA does not exist", result2) self.assertEqual("Failed to add TA to course.", result3) # self.assertEqual("Lab section Does not exist", result4) # Success self.assertEqual("TA successfully added to course", result5) a.command("logout")
def test_edit_user_success(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) a.command("login testUsername testPassword") result = a.command("edit_user testUsername username newname") self.assertEqual("User successfully updated", result) # Tried to change an illegal field
def test_edit_user_illegal(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) a.command("login testUsername testPassword") result = a.command("edit_user userdne namedne field") self.assertEqual("Tried to change illegal field", result) # Tried to change an illegal field
def test_edit_user_does_not_exist(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) a.command("login testUsername testPassword") result = a.command("edit_user userdne username field") # Error cases self.assertEqual("Failed to update user", result)
def test_edit_user_no_permissions(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) a.command("login brokenUsername brokenPassword") result = a.command("edit_user username field update") # Error cases self.assertEqual("Illegal permissions to do this action", result)
def test_add_user(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) a.command("login brokenUsername brokenPassword") result1 = a.command( "add_user newUsername newPassword 0000 address phonenum email") a.command("logout") a.command("login testUsername testPassword") result2 = a.command( "add_user ***** newPassword 0000 address phonenum email") result3 = a.command("add_user username * 0000 address phonenum email") result4 = a.command( "add_user newUsername newPassword 0000 address phonenum email") # Error cases self.assertEqual("Illegal permissions to do this action", result1) self.assertEqual("Failed to add user. Improper parameters", result2) self.assertEqual("Failed to add user. Improper parameters", result3) # Success self.assertEqual("User successfully added", result4) a.command("logout")
def test_logout_failed_not_loggedin(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) result = a.command("logout") self.assertEqual("User is not logged in", result) self.assertNotEqual("User logged out", result)
def test_logout_success_(self): a = App(Login(DjangoInterface()), UserEdits(), CourseEdit()) user = a.command("login testUsername testPassword") result = a.command("logout") self.assertEqual("User logged out", result)