Skip to content

Commit

Permalink
increased coverage of autotests
Browse files Browse the repository at this point in the history
  • Loading branch information
MothScientist committed Jan 2, 2025
1 parent 7ee954d commit 977bcf1
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 2 deletions.
2 changes: 1 addition & 1 deletion budget_graph/db_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -761,7 +761,7 @@ def delete_user_from_group_by_telegram_id(self, telegram_id: int) -> bool:
""", (telegram_id, telegram_id,))
conn.commit()
logger_database.info(f"Telegram ID {logging_hash(telegram_id)} has been removed from the database")
return True
return True # this is a flag of a successful operation, the user id may not exist in the database

except (DatabaseError, TypeError) as err:
logger_database.error(f"[DB_QUERY] {str(err)}, "
Expand Down
50 changes: 49 additions & 1 deletion tests/test_database_queries_2.py
Original file line number Diff line number Diff line change
Expand Up @@ -418,6 +418,9 @@ def test_006_delete_user_from_group_by_telegram_id_1(self):
self.assertTrue(res[0])
self.assertEqual(res[1], '', f'res = {res}')

res: list = self.test_db.get_group_users_data(1)
self.assertEqual(len(res), 4, f'len(res) = {len(res)}')

# we check that such a user is in the group
group_id: int = self.test_db.get_group_id_by_telegram_id(telegram_id)
self.assertEqual(group_id, 1, f'group_id = {group_id}')
Expand All @@ -429,6 +432,9 @@ def test_006_delete_user_from_group_by_telegram_id_1(self):
del_res: bool = self.test_db.delete_user_from_group_by_telegram_id(telegram_id)
self.assertTrue(del_res)

res: list = self.test_db.get_group_users_data(1)
self.assertEqual(len(res), 3, f'len(res) = {len(res)}')

# check the user group again
group_id: int = self.test_db.get_group_id_by_telegram_id(telegram_id)
self.assertEqual(group_id, 0, f'group_id = {group_id}')
Expand All @@ -438,7 +444,49 @@ def test_006_delete_user_from_group_by_telegram_id_1(self):

def test_006_delete_user_from_group_by_telegram_id_2(self):
""" Removing a non-existent user """
pass
telegram_id: int = randint(1000000, 100000000) * randint(8, 9)

exists_res: bool = self.test_db.check_telegram_id_is_exist(telegram_id)
self.assertFalse(exists_res)

del_res: bool = self.test_db.delete_user_from_group_by_telegram_id(telegram_id)
self.assertTrue(del_res)

exists_res: bool = self.test_db.check_telegram_id_is_exist(telegram_id)
self.assertFalse(exists_res)

def test_006_delete_user_from_group_by_telegram_id_3(self):
""" delete existing user """
group_id: int = TestDbQueries1._data.get_user_data(1, 1, 'group_id')

telegram_id: int = TestDbQueries1._data.get_user_data(
group_id,
3,
'telegram_id'
)

group_id: int = self.test_db.get_group_id_by_telegram_id(telegram_id)
self.assertEqual(group_id, 1, f'group_id = {group_id}')

exists_res: bool = self.test_db.check_telegram_id_is_exist(telegram_id)
self.assertTrue(exists_res)

res: list = self.test_db.get_group_users_data(group_id)
self.assertEqual(len(res), 3, f'len(res) = {len(res)}')

# delete user
del_res: bool = self.test_db.delete_user_from_group_by_telegram_id(telegram_id)
self.assertTrue(del_res)

# check the user group again
group_id: int = self.test_db.get_group_id_by_telegram_id(telegram_id)
self.assertEqual(group_id, 0, f'group_id = {group_id}')

exists_res: bool = self.test_db.check_telegram_id_is_exist(telegram_id)
self.assertFalse(exists_res)

res: list = self.test_db.get_group_users_data(1)
self.assertEqual(len(res), 2, f'len(res) = {len(res)}')


if __name__ == '__main__':
Expand Down

0 comments on commit 977bcf1

Please sign in to comment.