diff --git a/tests/basic_datetime_test.py b/tests/basic_datetime_test.py index 7cec911..cb14e3c 100644 --- a/tests/basic_datetime_test.py +++ b/tests/basic_datetime_test.py @@ -16,7 +16,7 @@ class TestBasicDateInit(unittest.TestCase): self.assertEqual(fixed_date.year_quarter, 1) def test_date_init_february_last(self): - fixed_date = FixedDate(date=datetime.date(2022, 2, 25)) + fixed_date = FixedDate(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) @@ -87,3 +87,7 @@ class TestBasicDateInit(unittest.TestCase): def test_init_with_invalid_parameter_combination(self): # day_of_year also requires year parameter self.assertRaises(ValueError, lambda : FixedDate(day_of_year=15)) + + def test_date_init_with_none_arguments(self): + fixed_date = FixedDate(datetime.date(2022, 1, 1), None, None, None, None) + self.assertEqual(fixed_date.date, datetime.date(2022, 1, 1)) diff --git a/tests/basic_day_of_year_test.py b/tests/basic_day_of_year_test.py index a2eb284..d5eb740 100644 --- a/tests/basic_day_of_year_test.py +++ b/tests/basic_day_of_year_test.py @@ -1,4 +1,5 @@ import unittest +import datetime from fixedcal.core.date import FixedDate class TestBasicDayOfYearInit(unittest.TestCase): @@ -33,3 +34,14 @@ class TestBasicDayOfYearInit(unittest.TestCase): self.assertEqual(fixed_date.month, 13) self.assertEqual(fixed_date.day_of_month, 29) self.assertTrue(fixed_date.is_year_day) + + def test_init_day_of_year_with_none_arguments(self): + fixed_date = FixedDate(None, 1, None, None, 2022) + self.assertEqual(fixed_date.date, datetime.date(2022, 1, 1)) + + def test_day_of_year_init_all_days(self): + year_start = datetime.date(2024, 1, 1) # leap year + for day_of_year in range(1, 367): + fixed_date = FixedDate(day_of_year=day_of_year, year=2024) + native_date = year_start + datetime.timedelta(days=day_of_year-1) + self.assertEqual(fixed_date.date, native_date) diff --git a/tests/fixed_date_init_test.py b/tests/fixed_date_init_test.py index 63f1443..e1fe2db 100644 --- a/tests/fixed_date_init_test.py +++ b/tests/fixed_date_init_test.py @@ -52,3 +52,7 @@ class TestInitWithFixedDate(unittest.TestCase): def test_month_too_big_raises(self): self.assertRaises(ValueError, lambda : FixedDate(day=15, month=14, year=2022)) + + def test_day_month_year_init_with_none_arguments(self): + fixed_date = FixedDate(None, None, 1, 1, 2022) + self.assertEqual(fixed_date.date, datetime.date(2022, 1, 1))