Example #1
0
 def test_make_text_list_categories(self):
     add_example_user(session)
     add_example_category_consumption(session)
     expected = f"1. {example_category_consumption['category']}\n"
     self.assertEqual(ConsumptionCategoryManager.make_text_list_categories(session,
                                                                           example_user['telegram_user_id']),
                      expected)
Example #2
0
 def test_get_all_categories_by_text(self):
     add_example_user(session)
     add_example_category_consumption(session)
     expected = [example_category_consumption['category']]
     answer = ConsumptionCategoryManager.get_all_categories_by_text(session,
                                                                    example_user['telegram_user_id'])
     self.assertEqual(answer, expected)
Example #3
0
 def test_not_user_has_earning_or_consumption_today(self):
     add_example_user(session)
     now = datetime.datetime(2020, 1, 1, 10)
     actual = user_has_earning_or_consumption_today(
         user=session.query(User).get(1), now=now)
     expected = False
     self.assertEqual(expected, actual)
 def test_repr(self):
     add_example_user(session)
     user = session.query(User).get(1)
     expected = f"<User ('{example_user['id']}', '{example_user['telegram_username']}', " \
         f"'{example_user['telegram_user_id']}', '{example_user['first_name']}', " \
         f"'{example_user['last_name']}', '{example_user['last_activity']}', '{example_user['date_registration']}')>"
     self.assertEqual(repr(user), expected)
Example #5
0
 def test_make_text_list_categories(self):
     add_example_user(session)
     add_example_category_earning(session)
     expected = f"1. {example_category_earning['category']}\n"
     self.assertEqual(
         EarningCategoryManager.make_text_list_categories(
             session, example_user['telegram_user_id']), expected)
Example #6
0
 def test_add_category_in_db(self):
     add_example_user(session)
     new_category = 'Стипендия'
     expected = CategoryEarning(id=1, category=new_category, user_id=1)
     EarningCategoryManager.add_category_in_db(
         session, new_category, example_user['telegram_user_id'])
     answer = session.query(CategoryEarning).get(1)
     self.assertEqual(answer, expected)
Example #7
0
 def test_get_all_categories(self):
     add_example_user(session)
     add_example_category_consumption(session)
     expected = [CategoryConsumption(id=1,
                                     user_id=example_user['id'],
                                     category=example_category_consumption['category'])]
     answer = session.query(CategoryConsumption).all()
     self.assertEqual(answer, expected)
Example #8
0
 def test_make_text_week_results(self):
     now = datetime.datetime(2020, 1, 12, 12, 30, 00)
     add_example_user(session)
     add_example_consumption(session)
     user = session.query(User).get(1)
     actual = make_text_week_results(session, now, user)
     expected = 'За прошедшую неделю вы потратили <b>{} рублей</b>.'.format(
         example_consumption['amount_money'])
     self.assertEqual(expected, actual)
Example #9
0
 def test_edit_category_in_db(self):
     add_example_user(session)
     add_example_category_consumption(session)
     new_category = 'расход какой то'
     ConsumptionCategoryManager.edit_category_in_db(session, example_user['telegram_user_id'],
                                                    example_category_consumption['category'],
                                                    new_category)
     answer = session.query(CategoryConsumption).get(1)
     self.assertEqual(answer.category, new_category)
Example #10
0
    def test_delete_category_in_db(self):
        add_example_user(session)
        add_example_category_consumption(session)

        ConsumptionCategoryManager.delete_category_in_db(session, example_category_consumption['category'],
                                                         example_user['telegram_user_id'])
        expected = None
        answer = session.query(CategoryConsumption).get(1)
        self.assertEqual(answer, expected)
Example #11
0
 def test_add_category_in_db(self):
     add_example_user(session)
     new_category = 'Бензин'
     expected = CategoryConsumption(id=1,
                                    category=new_category,
                                    user_id=1)
     ConsumptionCategoryManager.add_category_in_db(session, new_category, example_user['telegram_user_id'])
     answer = session.query(CategoryConsumption).get(1)
     self.assertEqual(answer, expected)
Example #12
0
 def test_edit_category_in_db(self):
     add_example_user(session)
     add_example_category_earning(session)
     new_category = 'расход какой то'
     EarningCategoryManager.edit_category_in_db(
         session, example_user['telegram_user_id'],
         example_category_earning['category'], new_category)
     answer = session.query(CategoryEarning).get(1)
     self.assertEqual(answer.category, new_category)
Example #13
0
    def test_delete_category_in_db(self):
        add_example_user(session)
        add_example_category_earning(session)

        EarningCategoryManager.delete_category_in_db(
            session, example_category_earning['category'],
            example_user['telegram_user_id'])
        expected = None
        answer = session.query(CategoryEarning).get(1)
        self.assertEqual(answer, expected)
Example #14
0
 def test_get_all_categories(self):
     add_example_user(session)
     add_example_category_earning(session)
     expected = [
         CategoryEarning(id=1,
                         user_id=example_user['id'],
                         category=example_category_earning['category'])
     ]
     answer = session.query(CategoryEarning).all()
     self.assertEqual(answer, expected)
Example #15
0
    def test_add_consumption_in_db(self):
        amount_money = 120.120
        add_example_user(session)
        add_example_category_consumption(session)

        expected = Consumption(id=1,
                               category_id=example_category_consumption['id'],
                               amount_money=amount_money)
        add_consumption_in_db(session=session,
                              telegram_user_id=example_user['telegram_user_id'],
                              amount_money=amount_money,
                              category_text=example_category_consumption['category'])
        answer = session.query(Consumption).get(1)
        self.assertEqual(answer, expected)
Example #16
0
    def test_add_earning_in_db(self):
        amount_money = 120.120
        add_example_user(session)
        add_example_category_earning(session)

        expected = Earning(id=1,
                           category_id=example_category_earning['id'],
                           amount_money=amount_money)
        add_earning_in_db(session=session,
                          telegram_user_id=example_user['telegram_user_id'],
                          amount_money=amount_money,
                          category_text=example_category_earning['category'])
        answer = session.query(Earning).get(1)
        self.assertEqual(answer, expected)
Example #17
0
 def test_make_list_transactions(self):
     add_example_user(session)
     session.add(Consumption(id=1,
                             user_id=1,
                             time_creation=datetime.datetime(2020, 1, 10, 12, 30, 00)))
     session.add(Consumption(id=2,
                             user_id=1,
                             time_creation=datetime.datetime(2020, 1, 8, 12, 25, 00)))
     session.add(Earning(id=1,
                         user_id=1,
                         time_creation=datetime.datetime(2020, 1, 9, 12, 25, 00)))
     session.add(Consumption(id=3,
                             user_id=1,
                             time_creation=datetime.datetime(2020, 1, 12, 12, 25, 00)))
     session.commit()
     answer = make_list_transactions(session, example_user['telegram_user_id'])
     expected = [Consumption(id=3), Consumption(id=1), Earning(id=1), Consumption(id=2)]
     self.assertEqual(answer, expected)
Example #18
0
 def test_exist_transactions(self):
     now = datetime.datetime(2020, 1, 22, 10, 10)
     add_example_user(session)
     add_example_category_consumption(session)
     add_example_category_earning(session)
     add_example_consumption(session, now)
     add_example_earning(session, now)
     expected =  f"Информация на 22.01.2020 10:10, Среда\n\n" \
                 f"<b>Расходы:</b>\n" \
         f"{example_category_consumption['category']} - {example_consumption['amount_money']} р.\n\n" \
                 f"<b>Доходы:</b>\n" \
         f"{example_category_earning['category']} - {example_earning['amount_money']} р.\n\n" \
                 f"<b>Всего:</b>\n" \
         f"Доход: {example_earning['amount_money']}\n" \
         f"Расход: {example_consumption['amount_money']}\n\n" \
                 f"Хорошего дня!"
     user = session.query(User).get(1)
     actual = make_text_today(session, now, user)
     self.assertEqual(actual, expected)
    def test_exist_transactions(self):
        add_example_user(session)
        add_example_category_earning(session)
        add_example_category_consumption(session)

        session.add(
            Earning(id=1,
                    time_creation=datetime.datetime(2020, 1, 10, 12, 30, 00),
                    category_id=1,
                    user_id=1))
        session.add(
            Consumption(id=1,
                        time_creation=datetime.datetime(
                            2020, 1, 9, 12, 30, 00),
                        category_id=1,
                        user_id=1))
        session.commit()
        list_transactions = make_list_transactions(
            session, example_user['telegram_user_id'])
        expected = f"Доход 0.0 руб. {example_category_earning['category']} 10.01.2020, 12:30 - /del_e1\n" \
            f"Расход 0.0 руб. {example_category_consumption['category']} 09.01.2020, 12:30 - /del_c1\n"
        actual = make_text_list_transactions(session, list_transactions)
        self.assertEqual(actual, expected)
 def test_update_activity(self):
     add_example_user(session)
     now = datetime.datetime(2021, 1, 10, 12, 55, 12)
     user = session.query(User).get(1)
     user.update_activity(session, now)
     self.assertEqual(user.last_activity, now)
Example #21
0
 def test_has_any_categories(self):
     add_example_user(session)
     add_example_category_earning(session)
     self.assertTrue(
         EarningCategoryManager.check_any_categories(
             session, example_user['telegram_user_id']))
Example #22
0
 def setUp(self):
     Base.metadata.create_all(engine)
     add_example_user(session)
     add_example_category_consumption(session)
Example #23
0
 def setUp(self):
     Base.metadata.create_all(engine)
     add_example_user(session)
     add_example_category_earning(session)
Example #24
0
 def test_not_has_any_categories(self):
     add_example_user(session)
     self.assertFalse(ConsumptionCategoryManager.check_any_categories(session,
                                                                      example_user['telegram_user_id']))
 def test_query_user(self):
     add_example_user(session)
     expected = [User(id=1, telegram_username='******', telegram_user_id=123,
                      first_name='boris', last_name='last name')]
     result = session.query(User).all()
     self.assertEqual(result, expected)