fixedcal/tests/basic_datetime_test.py
2022-12-12 19:47:01 +02:00

83 lines
3.8 KiB
Python

import unittest
import datetime
from fixedcal.core.date import FixedDate
class TestBasicDateInit(unittest.TestCase):
def test_date_init_january_first(self):
fixed_date = FixedDate(date=datetime.date(2022, 1, 1))
self.assertEqual(fixed_date.date, datetime.date(2022, 1, 1))
self.assertEqual(fixed_date.year, 2022)
self.assertEqual(fixed_date.month, 1)
self.assertEqual(fixed_date.day_of_month, 1)
self.assertEqual(fixed_date.day_of_year, 1)
self.assertEqual(fixed_date.week_of_month, 1)
self.assertEqual(fixed_date.weekday, 1)
self.assertEqual(fixed_date.week_of_year, 1)
self.assertEqual(fixed_date.year_quarter, 1)
def test_date_init_february_last(self):
fixed_date = FixedDate(date=datetime.date(2022, 2, 25))
self.assertEqual(fixed_date.date, datetime.date(2022, 2, 25))
self.assertEqual(fixed_date.year, 2022)
self.assertEqual(fixed_date.month, 2)
self.assertEqual(fixed_date.day_of_month, 28)
self.assertEqual(fixed_date.day_of_year, 56)
self.assertEqual(fixed_date.week_of_month, 4)
self.assertEqual(fixed_date.weekday, 7)
self.assertEqual(fixed_date.week_of_year, 8)
self.assertEqual(fixed_date.year_quarter, 1)
def test_date_init_sol_month(self):
fixed_date = FixedDate(date=datetime.date(2022, 6, 20))
self.assertEqual(fixed_date.date, datetime.date(2022, 6, 20))
self.assertEqual(fixed_date.year, 2022)
self.assertEqual(fixed_date.month, 7)
self.assertEqual(fixed_date.day_of_month, 3)
self.assertEqual(fixed_date.day_of_year, 171)
self.assertEqual(fixed_date.week_of_month, 1)
self.assertEqual(fixed_date.weekday, 3)
self.assertEqual(fixed_date.week_of_year, 25)
self.assertEqual(fixed_date.year_quarter, 2)
def test_date_init_middle_of_september(self):
fixed_date = FixedDate(date=datetime.date(2022, 9, 15))
self.assertEqual(fixed_date.date, datetime.date(2022, 9, 15))
self.assertEqual(fixed_date.year, 2022)
self.assertEqual(fixed_date.month, 10)
self.assertEqual(fixed_date.day_of_month, 6)
self.assertEqual(fixed_date.day_of_year, 258)
self.assertEqual(fixed_date.week_of_month, 1)
self.assertEqual(fixed_date.weekday, 6)
self.assertEqual(fixed_date.week_of_year, 37)
self.assertEqual(fixed_date.year_quarter, 3)
def test_date_init_december_last(self):
fixed_date = FixedDate(date=datetime.date(2022, 12, 30))
self.assertEqual(fixed_date.date, datetime.date(2022, 12, 30))
self.assertEqual(fixed_date.year, 2022)
self.assertEqual(fixed_date.month, 13)
self.assertEqual(fixed_date.day_of_month, 28)
self.assertFalse(fixed_date.is_year_day)
self.assertEqual(fixed_date.day_of_year, 364)
self.assertEqual(fixed_date.week_of_month, 4)
self.assertEqual(fixed_date.weekday, 7)
self.assertEqual(fixed_date.week_of_year, 52)
self.assertEqual(fixed_date.year_quarter, 4)
def test_date_init_year_day(self):
fixed_date = FixedDate(date=datetime.date(2022, 12, 31))
self.assertEqual(fixed_date.date, datetime.date(2022, 12, 31))
self.assertEqual(fixed_date.year, 2022)
self.assertEqual(fixed_date.month, 13)
self.assertEqual(fixed_date.day_of_month, 29)
self.assertTrue(fixed_date.is_year_day)
self.assertEqual(fixed_date.day_of_year, 365)
self.assertEqual(fixed_date.week_of_month, 4)
self.assertIsNone(fixed_date.weekday)
self.assertEqual(fixed_date.week_of_year, 52)
self.assertEqual(fixed_date.year_quarter, 4)
def test_today(self):
fixed_date_datetime = FixedDate.today().date
self.assertEqual(fixed_date_datetime, datetime.date.today())