Dev 6 #9

Merged
KerradKerridi merged 13 commits from dev-6 into master 2025-08-30 11:58:45 +00:00
2 changed files with 39 additions and 10 deletions
Showing only changes of commit 748670816f - Show all commits

View File

@@ -18,11 +18,11 @@ def get_reply_keyboard_for_post():
def get_reply_keyboard(BotDB, user_id): def get_reply_keyboard(BotDB, user_id):
builder = ReplyKeyboardBuilder() builder = ReplyKeyboardBuilder()
builder.add(types.KeyboardButton(text="📢Предложить свой пост")) builder.row(types.KeyboardButton(text="📢Предложить свой пост"))
builder.add(types.KeyboardButton(text="📩Связаться с админами")) builder.row(types.KeyboardButton(text="📩Связаться с админами"))
builder.add(types.KeyboardButton(text="👋🏼Сказать пока!")) builder.row(types.KeyboardButton(text="👋🏼Сказать пока!"))
if not BotDB.get_info_about_stickers(user_id=user_id): if not BotDB.get_info_about_stickers(user_id=user_id):
builder.add(types.KeyboardButton(text="🤪Хочу стикеры")) builder.row(types.KeyboardButton(text="🤪Хочу стикеры"))
markup = builder.as_markup(resize_keyboard=True, one_time_keyboard=True) markup = builder.as_markup(resize_keyboard=True, one_time_keyboard=True)
return markup return markup
@@ -36,12 +36,15 @@ def get_reply_keyboard_leave_chat():
def get_reply_keyboard_admin(): def get_reply_keyboard_admin():
builder = ReplyKeyboardBuilder() builder = ReplyKeyboardBuilder()
builder.add(types.KeyboardButton(text="Бан (Список)")) builder.row(
builder.add(types.KeyboardButton(text="Бан по нику")) types.KeyboardButton(text="Бан (Список)"),
builder.add(types.KeyboardButton(text="Бан по ID")) types.KeyboardButton(text="Бан по нику"),
builder.row() types.KeyboardButton(text="Бан по ID")
builder.add(types.KeyboardButton(text="Разбан (список)")) )
builder.add(types.KeyboardButton(text="Вернуться в бота")) builder.row(
types.KeyboardButton(text="Разбан (список)"),
types.KeyboardButton(text="Вернуться в бота")
)
markup = builder.as_markup(resize_keyboard=True, one_time_keyboard=True) markup = builder.as_markup(resize_keyboard=True, one_time_keyboard=True)
return markup return markup

View File

@@ -4,6 +4,7 @@ from aiogram.types import ReplyKeyboardMarkup, KeyboardButton, InlineKeyboardMar
from helper_bot.keyboards.keyboards import ( from helper_bot.keyboards.keyboards import (
get_reply_keyboard, get_reply_keyboard,
get_reply_keyboard_admin,
get_reply_keyboard_for_post, get_reply_keyboard_for_post,
get_reply_keyboard_leave_chat, get_reply_keyboard_leave_chat,
create_keyboard_with_pagination create_keyboard_with_pagination
@@ -36,6 +37,10 @@ class TestKeyboards:
assert keyboard.keyboard is not None assert keyboard.keyboard is not None
assert len(keyboard.keyboard) > 0 assert len(keyboard.keyboard) > 0
# Проверяем, что каждая кнопка в отдельной строке
for row in keyboard.keyboard:
assert len(row) == 1 # Каждая строка содержит только одну кнопку
# Проверяем наличие основных кнопок # Проверяем наличие основных кнопок
all_buttons = [] all_buttons = []
for row in keyboard.keyboard: for row in keyboard.keyboard:
@@ -97,6 +102,27 @@ class TestKeyboards:
assert '👋🏼Сказать пока!' in all_buttons assert '👋🏼Сказать пока!' in all_buttons
assert '📩Связаться с админами' in all_buttons assert '📩Связаться с админами' in all_buttons
def test_get_reply_keyboard_admin_keyboard(self):
"""Тест админской клавиатуры"""
keyboard = get_reply_keyboard_admin()
assert isinstance(keyboard, ReplyKeyboardMarkup)
assert keyboard.keyboard is not None
assert len(keyboard.keyboard) == 2 # Две строки
# Проверяем первую строку (3 кнопки)
first_row = keyboard.keyboard[0]
assert len(first_row) == 3
assert first_row[0].text == "Бан (Список)"
assert first_row[1].text == "Бан по нику"
assert first_row[2].text == "Бан по ID"
# Проверяем вторую строку (2 кнопки)
second_row = keyboard.keyboard[1]
assert len(second_row) == 2
assert second_row[0].text == "Разбан (список)"
assert second_row[1].text == "Вернуться в бота"
def test_get_reply_keyboard_for_post(self): def test_get_reply_keyboard_for_post(self):
"""Тест клавиатуры для постов""" """Тест клавиатуры для постов"""
keyboard = get_reply_keyboard_for_post() keyboard = get_reply_keyboard_for_post()