From c90af5b4df887160aa7f4b64f2b6f9239d0268fa Mon Sep 17 00:00:00 2001 From: admin Date: Thu, 8 Oct 2026 23:13:05 +0200 Subject: [PATCH] feat: show user id in subscription message --- VERSION | 2 +- bot.py | 7 ++++++- tests/test_payments.py | 4 +++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/VERSION b/VERSION index 74c7f9c..a3b3889 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.1.0+36 +0.1.0+37 diff --git a/bot.py b/bot.py index d9974e9..99570e9 100644 --- a/bot.py +++ b/bot.py @@ -408,7 +408,12 @@ async def _send_subscription_invoice(message: Message, user_id: int) -> None: "или напиши поддержке." ) return - await message.answer(f"Счёт на {SUBSCRIPTION_PRICE_STARS} звёзд на 30 дней выше.") + await message.answer( + f"🧾 Счёт на подписку\n" + f"Сумма: {SUBSCRIPTION_PRICE_STARS} ⭐ · Срок: 30 дней\n" + f"ID пользователя: {user_id}", + parse_mode="HTML", + ) if is_development_environment(): await message.answer( "🧪 Dev-режим: для продолжения разработки нажми кнопку ниже. " diff --git a/tests/test_payments.py b/tests/test_payments.py index ccb5df2..d15d115 100644 --- a/tests/test_payments.py +++ b/tests/test_payments.py @@ -214,7 +214,8 @@ class SubscribeCommandTests(unittest.IsolatedAsyncioTestCase): ): await bot.subscribe_command(message, _StubState()) invoice.assert_awaited_once_with(message.bot, 555, None) - self.assertIn("Счёт", message.answers[0]) + self.assertIn("Счёт на подписку", message.answers[0]) + self.assertIn("ID пользователя: 42", message.answers[0]) self.assertEqual(len(message.answers), 2) self.assertNotIn("dev", " ".join(message.answers).lower()) self.assertNotIn("reply_markup", message.answer_kwargs[-1]) @@ -232,6 +233,7 @@ class SubscribeCommandTests(unittest.IsolatedAsyncioTestCase): self.assertIn("Счёт", message.answers[0]) markup = message.answer_kwargs[-1]["reply_markup"] self.assertEqual(markup.inline_keyboard[0][0].text, "🧪 Оплатил (dev)") + self.assertIn("ID пользователя: 42", message.answers[0]) async def test_dev_confirmation_activates_only_for_invoice_user(self): callback = AsyncMock()