def test_invalid_password(): #too short password reset() auth_register("*****@*****.**", "validpassword1", "validname", "validname") auth_passwordreset_request("*****@*****.**") with pytest.raises(ValueError, match=r".*"): auth_passwordreset_reset(validCode, '1234')
def test_invalid_code(): #reset with invalid code reset() auth_register("*****@*****.**", "validpassword", "validname", "validname") auth_passwordreset_request("*****@*****.**") with pytest.raises(ValueError, match=r".*"): auth_passwordreset_reset(invalidCode, '123456')
def test_mult_messages(): reset() token1 = auth_register("*****@*****.**", "password", "First_Name", "Last_Name")['token'] #Create an account and generate token channel_id = channels_create(token1, "Channel_name", True) #Create a new channel therefore am admin message_send(token1, channel_id, "Message") #Send a message to that channel. The message will have message_id 0 as it is the most recent messageID = message_send(token1, channel_id, "Message2") #Send a message to that channel. The message will have message_id 0 as it is the most recent assert message_pin(token1, messageID) == {} #Successful pin
def test_message_not_valid(): reset() token = auth_register("*****@*****.**", "password", "First_Name", "Last_Name")['token'] #Create an account and generate token channels_create(token, "Channel_name", False) #Create a new channel therefore am admin invalidMessageID = -1 with pytest.raises(ValueError, match=r".*"): #Check Value Error Raised message_pin(token, invalidMessageID) #Fails to pin as message doesn't exist
def test_invalid_password2(): #reset with NONE password reset() auth_register("*****@*****.**", "validpassword", "validname", "validname") auth_passwordreset_request("*****@*****.**") with pytest.raises(ValueError, match=r".*"): auth_passwordreset_reset(validCode, None)
def test_invalidToken(): reset() invalidToken = "-1" message_id = 0 #Assume Valid and Exists validReactID = 0 #Assume Message is already reacted with pytest.raises(AccessError, match=r".*"): message_unreact(invalidToken, message_id, validReactID)
def test_invalid_first_name(): #test name too long 100): reset() with pytest.raises(ValueError, match=r".*"): auth_register( "*****@*****.**", "validpassword1", "invalidname111111111111111111111111111111111111111111111", "validname")
def test_standup_inactive(): reset() token = auth_register("*****@*****.**", "password", "First_Name", "Last_Name")['token'] #Create a new profile channel_id = channels_create(token, "Channel_name", False) #Create a new channel assert not standup_active(token, channel_id)['is_active']
def test_message_send_1(): #sending a legal message reset() myToken = auth_register("*****@*****.**", "securepassword", "user", "name")["token"] #generate token for valid user myChannelID = channels_create(myToken, "test", True) #create test channel #channel_join(myToken, str(myChannelID)) #join that channel message_send(myToken, myChannelID, "test") #expected return
def test_successful_standup(): reset() token = auth_register("*****@*****.**", "password", "First_Name", "Last_Name")['token'] #Create a new profile channel_id = channels_create(token, "Channel_name", False) #Create a new channel standup_start(token, str(channel_id), 900) #Successful standup start
def test_invalid_email(): #test registration with duplicate email reset() auth_register("*****@*****.**", "validpassword1", "validname", "validname") with pytest.raises(ValueError, match=r".*"): auth_register("*****@*****.**", "validpassword1", "validname", "validname")
def test_multiple_channels(): reset() user1 = auth_register("*****@*****.**", "validpassword1", "validname", "validname") user2 = auth_register("*****@*****.**", "validpassword1", "validname", "validname") channels_create(user1['token'], "test", True) channelId = channels_create(user1['token'], "test2", True) channel_invite(user1['token'], str(channelId), str(user2['u_id']))
def test_channels_create_1(): #create one public channel reset() myToken = auth_register("*****@*****.**", "securepassword", "user", "name")["token"] #generate token for valid user assert channels_create( myToken, "test", True) == 0 #check channel_id is generated ASSUMING starts from 0
def test_multiple_users(): reset() user1 = auth_register("*****@*****.**", "securepassword", "user", "name") user2 = auth_register("*****@*****.**", "securepassword", "user", "name") myChannelID = str(channels_create(user1['token'], "hello", True)) channel_join(user2['token'], myChannelID) channels_list(user1['token'])
def test_channels_create_5(): #create channel with invalid token reset() invalidToken = "omgHAX" #arbitrary with pytest.raises(AccessError, match=r".*"): channels_create( invalidToken, "hackerz", True) #channel is not created ASSUMING N/A means None returned
def test_channels_create_2(): #create one private channel reset() myToken = auth_register("*****@*****.**", "securepassword", "user", "name")["token"] #generate token for valid user assert channels_create( myToken, "name", False ) == 0 #check channel_id is generated ASSUMING starts from 0 and incremented
def test_multiple_channels(): reset() myToken = auth_register("*****@*****.**", "securepassword", "user", "name")["token"] #generate token for valid user channels_create(myToken, "test", True) #create test channel myChannelID = channels_create(myToken, "test", True) #create test channel message_send(myToken, myChannelID, "hello")
def test_invalid_token(): reset() auth_register("*****@*****.**", "password", "First_Name", "Last_Name") #Register a new profile token = -1 with pytest.raises(AccessError, match=r".*"): #Check Value Error Raised users_all(token) #Fails as user id and token is invalid
def test_channel_join_test_1(): #valid case for owner reset() user = auth_register("*****@*****.**", "securepassword", "user", "name") #generate token for valid user myToken = user["token"] uID = user["u_id"] myChannelID = channels_create(myToken, "test", True) #create test channel channel_leave(myToken, str(myChannelID)) channel_join(myToken, str(myChannelID)) #join that channel assert channel_details(myToken, str(myChannelID))["name"] == "test" #check details assert channel_details(myToken, str(myChannelID))["owner_members"] == [{ "u_id": uID, "name_first": "user", "name_last": "name", "profile_img_url": None }] #check details assert channel_details(myToken, str(myChannelID))["all_members"] == [{ "u_id": uID, "name_first": "user", "name_last": "name", "profile_img_url": None }] #check details
def test_bad_email(): #try to login with bademail reset() auth_register("*****@*****.**", "validpassword1", "validname", "validname") badEmail = "lolz" with pytest.raises(ValueError, match=r".*"): auth_login(badEmail, "validpassword1")
def test_invalid_email(): reset() user = auth_register("*****@*****.**", "password", "First_Name", "Last_Name") #Create a new profile token = user['token'] with pytest.raises(ValueError, match=r".*"): #Check Value Error Raised user_profile_setemail( token, "email.com") #Change email fails as email is invalid
def test_invalid_profile(): reset() user = auth_register("*****@*****.**", "password", "First_Name", "Last_Name") #Register a new profile u_id = -1 #Assume -1 is invalid u_id and token token = user['token'] with pytest.raises(ValueError, match=r".*"): #Check Value Error Raised user_profile(token, u_id) #Fails as user id and token is invalid
def test_channels_create_4(): #create channels with same name reset() myToken = auth_register("*****@*****.**", "securepassword", "user", "name")["token"] #generate token for valid user channelID1 = channels_create(myToken, "same", True) #create channel channelID2 = channels_create(myToken, "same", True) #create same name channel assert channelID1 != channelID2 #check two unique channels created
def test_channel_details_test_2(): #valueError for wrong channelID reset() myToken = auth_register("*****@*****.**", "securepassword", "user", "name")["token"] #generate token for valid user myChannelID = channels_create(myToken, "test", True) #create test channel channel_join(myToken, str(myChannelID)) #join that channel invalidChannelID = 69 with pytest.raises(ValueError, match=r".*"): #check ValueError raised channel_details(myToken, str(invalidChannelID)) #get details for an invalid channel
def test_success(): #valid case which should work reset() user = auth_register("*****@*****.**", "validpassword1", "validname", "validname") u_id = user["u_id"] assert auth_login( "*****@*****.**", "validpassword1" )["u_id"] == u_id #check that uID is the same for the new session
def test_invalid_password(): #test invalid email/pass combination reset() auth_register("*****@*****.**", "invalidpassword", "validname", "validname") auth_register("*****@*****.**", "validpassword1", "validname", "validname") with pytest.raises(ValueError, match=r".*"): auth_login("*****@*****.**", "validpassword1")
def test_multiple_email(): reset() auth_register("*****@*****.**", "validpassword", "validname", "validname") auth_register("*****@*****.**", "validpassword", "validname", "validname") assert auth_passwordreset_request("*****@*****.**") == { } #attempt to reset, cant’t check return value
def test_invalid_email(): reset() auth_register("*****@*****.**", "validpassword", "validname", "validname") with pytest.raises( ValueError, match=r".*"): #assumes this will raise exception NOT IN SPEC auth_passwordreset_request("invalidemail")
def test_channels_list_test_1(): #no channels reset() user = auth_register("*****@*****.**", "securepassword", "user", "name") #generate token for valid user myToken = user['token'] assert channels_list(myToken) == { "channels": [] } #empty list expected cause no channels
def test_success(): #valid case reset() global reset_codes user = auth_register("*****@*****.**", "validpassword", "validname", "validname") reset_codes.append({'u_id': user['u_id'], 'reset_code': 123456}) auth_passwordreset_request("*****@*****.**") assert auth_passwordreset_reset(validCode, '123456') == {}