class TestCredentials(unittest.TestCase): """ Test case defines test cases for the credentials class behaviours. Args: unittest.TestCase: TestCase class that helps in creating test cases """ def setUp(self): """ set up method to run before each test cases. """ self.new_credential = Credentials("Facebook","social media account","space\11") def tearDown(self): """ clean/refreshes after each test case runs """ Credentials.credential_list = [] def test_init(self): """ this tests if the object is initialized properly """ self.assertEqual(self.new_credential.account_name,"Facebook") self.assertEqual(self.new_credential.description,"social media account") self.assertEqual(self.new_credential.password,"space\11") def test_save_credential(self): """ this test method test to see whether we can save a new credential account """ self.new_credential.save_credential() #save the credential self.assertEqual(len(Credentials.credential_list),1) def test_save_many_credentials(self): """ test method to check if we can save multiple credentials """ self.new_credential.save_credential() test_credential = Credentials("Twitter","instant messenger","2222") test_credential.save_credential() self.assertEqual(len(Credentials.credential_list),2) def test_delete_credential(self): """ method that deletes user credentials account from a list """ self.new_credential.save_credential() test_credential = Credentials("Twitter","instant messenger","2222") test_credential.save_credential() self.new_credential.delete_credential() #deletes a credenial self.assertEqual(len(Credentials.credential_list),1) def test_find_credential(self): """ method to test whether we can find the specific credential in our credential list """ self.new_credential.save_credential() test_credential = Credentials("Twitter","instant messenger","2222") test_credential.save_credential() find_credential = Credentials.find_by_name("Twitter") self.assertEqual(find_credential.description,test_credential.description) def test_credential_exists(self): """ test to see if a credential is in the credentials list """ self.new_credential.save_credential() test_credential = Credentials("Twitter","instant messenger","2222") test_credential.save_credential() credential_exist = Credentials.credential_check("Twitter") self.assertTrue(credential_exist) def test_show_credentials(self): """ method will show a list of the credentials """ self.assertEqual(Credentials.show_credentials(),Credentials.credential_list) #def test_copy_password(self): #""" #test to see if I can copy my credentials to the clipboard #""" #self.new_credential.save_credential() #Credentials.copy_password("Twitter") #self.assertEqual(self.new_credential.password,pyperclip.paste()) def test_generate_random_password(self): ''' test to see if method can auto generate passwords ''' generate_random_password = self.new_credential.generate_random_password() self.assertEqual(len(generate_random_password),8)
def generate_password(account): """ generates random password """ new_password = Credentials.generate_random_password() return new_password