remember-remember-bot/tests/test_util.py

57 lines
1.5 KiB
Python

from remember_remember_bot.util import (
check_new_day,
update_day,
chat_is_active,
get_file_path,
today_lines,
)
import pytest
import datetime
def test_update_day():
current_day = 0
assert check_new_day(current_day)
current_day = update_day()
assert not check_new_day(current_day)
@pytest.mark.parametrize(
("messages", "active"),
[
(["/start"], True),
(["/start", "/stop"], False),
(["/start", "/stop", "Let's get this party started"], False),
(
[
"/start",
"Message deletion timer is set to 1 day by",
"Message deletion timer is disabled by",
"I will stop sending you messages now.",
],
False,
),
(["/start", "/stop", "/start"], True),
],
)
def test_chat_is_active(messages, active, chat):
for msg in messages:
chat.send_text(msg)
assert chat_is_active(chat) == active
def test_today_lines():
day = datetime.datetime.now().day
month = datetime.datetime.now().month
year = datetime.datetime.now().year
lines = [
f"{day}.{month}.{year}\tToday I had a great day!",
f"{day}.{month}.2020\tI didn't go outside all day :) no appointments",
"03.13.2024\tNice how they invented a 13th month extra for the Satanists!",
]
result = today_lines(lines)
print(result)
assert len(result) == 2
assert result[0] == lines[0]
assert result[1] == lines[1]