Напоминалки: кнопка смены часового пояса в разделе

Раньше сменить уже заданный пояс можно было только скрытой командой
'часовой пояс <±N>', нигде не упомянутой в интерфейсе. Добавлена кнопка
«🌐 Часовой пояс» — открывает тот же выбор (кнопки городов + ручной ввод)
заново, показывая текущее значение.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Kenik
2026-09-05 15:22:57 +03:00
parent e41db35f13
commit 6ecbd7aa94
3 changed files with 31 additions and 1 deletions
+17
View File
@@ -537,3 +537,20 @@ def test_timezone_change_command(app, monkeypatch):
app.handle_message(admin, "часовой пояс много")
assert bot.db.get_admin_tz_offset(admin) == -5 # невалидный ввод не поменял значение
def test_timezone_change_via_button(app, monkeypatch):
"""Кнопка «🌐 Часовой пояс» открывает выбор заново, даже если пояс уже задан."""
admin = 80011
monkeypatch.setattr(bot.config, "ADMIN_IDS", [admin])
bot.db.set_admin_tz_offset(admin, 3)
app.handle_message(admin, "⏰ Напоминалки")
assert _state(admin) == "FREE_CHAT" # пояс уже есть — гейт не срабатывает
app.handle_message(admin, "🌐 Часовой пояс")
assert _state(admin) == "ADMIN_REMINDER_TZ_SETUP"
app.handle_message(admin, "Владивосток, UTC+10")
assert _state(admin) == "FREE_CHAT"
assert bot.db.get_admin_tz_offset(admin) == 10