This commit is contained in:
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user