space genocide
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
hogweed1
2025-05-12 21:52:47 +10:00
parent 7e52c86067
commit 2830335b12
13 changed files with 88 additions and 148 deletions

View File

@@ -2,9 +2,7 @@ import unittest
import datetime
def rolltime(check_datetime , curr_time=datetime.datetime.now()):
last_time = datetime.datetime.strptime(check_datetime, '%Y-%m-%d %H:%M:%S')
time_to_grow = curr_time.replace(hour=10, minute=0, second=0, microsecond=0) #+ datetime.timedelta(days=0)
@@ -16,34 +14,30 @@ def rolltime(check_datetime , curr_time=datetime.datetime.now()):
# print(f'\tcurr_time : {curr_time.strftime("%Y-%m-%d %H:%M:%S")}')
# print(f'\t\tsecs diff : {timediff}')
if timediff > 86400 or (curr_time > time_to_grow and last_time < time_to_grow):
return True
else:
return False
class TestPipisa(unittest.TestCase):
def test_very_long_ago(self):
def test_very_long_ago(self):
self.assertEqual(rolltime('2021-10-11 23:44:00'), True, "Пиписа прокручена очень давно. Очевидный прокрут")
def test_just_after(self):
def test_just_after(self):
self.assertEqual(rolltime(
datetime.datetime.now().replace(hour=10, minute=1, second=0, microsecond=0).strftime('%Y-%m-%d %H:%M:%S')
), False, "Попытка крутить когда старый прокрут был через 1 минуту после сегодняшнего обновления роллов. Фейл.")
def test_yesterdayroll(self):
def test_yesterdayroll(self):
self.assertEqual(
rolltime(
(
datetime.datetime.now().replace(hour=10, minute=1, second=0, microsecond=0) - datetime.timedelta(days=1)
datetime.datetime.now().replace(hour=10, minute=1, second=0, microsecond=0) - datetime.timedelta(days=1)
).strftime('%Y-%m-%d %H:%M:%S'),
datetime.datetime.now().replace(hour=10, minute=1, second=0, microsecond=0)
), True, "Крутилась вчера через минуту после обновления роллов. Должно пропускать ")
def test_hour_before_roll(self):
def test_hour_before_roll(self):
self.assertEqual(
rolltime(
(
@@ -55,33 +49,29 @@ class TestPipisa(unittest.TestCase):
def test_after_midnight(self):
self.assertEqual(
rolltime(
(
datetime.datetime.now().replace(hour=10, minute=1, second=0, microsecond=0) - datetime.timedelta(hours=14)
(
datetime.datetime.now().replace(hour=10, minute=1, second=0, microsecond=0) - datetime.timedelta(hours=14)
).strftime('%Y-%m-%d %H:%M:%S'),
datetime.datetime.now().replace(hour=0, minute=11, second=8, microsecond=0)
), False, "Где-то ночью прокручивается повторно. Фейл.")
def test_before_midnight(self):
def test_before_midnight(self):
self.assertEqual(
rolltime(
(
datetime.datetime.now().replace(hour=10, minute=1, second=0, microsecond=0) - datetime.timedelta(hours=15)
(
datetime.datetime.now().replace(hour=10, minute=1, second=0, microsecond=0) - datetime.timedelta(hours=15)
).strftime('%Y-%m-%d %H:%M:%S'),
datetime.datetime.now().replace(hour=0, minute=11, second=8, microsecond=0) - datetime.timedelta(hours=15)
datetime.datetime.now().replace(hour=0, minute=11, second=8, microsecond=0) - datetime.timedelta(hours=15)
), False, "Где-то ночью прокручивается повторно. Фейл.")
def test_somewhere_after(self):
def test_somewhere_after(self):
self.assertEqual(
rolltime(
(
datetime.datetime.now().replace(hour=10, minute=18, second=0, microsecond=0)
(
datetime.datetime.now().replace(hour=10, minute=18, second=0, microsecond=0)
).strftime('%Y-%m-%d %H:%M:%S'),
datetime.datetime.now().replace(hour=10, minute=19, second=0, microsecond=0)
), False, "Сегодня уже открутили а хотят ещё. Фейл.")
if __name__ == "__main__":
unittest.main(verbosity=2)
unittest.main(verbosity=2)