Example #1
0
 def test_YEARFRAC_yearfrac_basis_2(self):
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2008, 1, 1), date.DATE(2015, 4, 20), 2),
         7.405555556)
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2024, 1, 1), date.DATE(2025, 1, 1), 2),
         1.01666666666667)
Example #2
0
 def test_XNPV(self):
     range_00 = xl.RangeData([[-10000, 2750, 4250, 3250, 2750]])
     range_01 = xl.RangeData([[
         date.DATE(2008, 1, 1),
         date.DATE(2008, 3, 1),
         date.DATE(2008, 10, 30),
         date.DATE(2009, 2, 15),
         date.DATE(2009, 4, 1)
     ]])
     self.assertAlmostEqual(financial.XNPV(0.09, range_00, range_01),
                            2086.65, 2)
Example #3
0
 def test_YEARFRAC_yearfrac_basis_0(self):
     # From Excel docs.
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2012, 1, 1), date.DATE(2012, 7, 30), 0),
         0.58055556)
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2008, 1, 1), date.DATE(2015, 4, 20)),
         7.30277777777778)
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2008, 1, 1), date.DATE(2015, 4, 20), 0),
         7.30277777777778)
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2024, 1, 1), date.DATE(2025, 1, 1), 0), 1)
Example #4
0
 def test_YEARFRAC_yearfrac_basis_3(self):
     # From Excel docs.
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2012, 1, 1), date.DATE(2012, 7, 30), 3),
         0.57808219)
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2008, 1, 1), date.DATE(2015, 4, 20), 3),
         7.304109589)
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2024, 1, 1), date.DATE(2025, 1, 1), 3),
         1.0027397260274)
Example #5
0
 def test_DATE_year_must_have_less_than_10000(self):
     self.assertIsInstance(date.DATE(10000, 1, 1), xlerrors.NumExcelError)
Example #6
0
 def test_DATE_result_must_be_positive(self):
     self.assertIsInstance(date.DATE(1900, 1, -1), xlerrors.NumExcelError)
Example #7
0
 def test_DATE_day_must_be_integer(self):
     self.assertIsInstance(date.DATE(2000, 1, 'bad'),
                           xlerrors.ValueExcelError)
Example #8
0
 def test_DATE_year_must_be_positive(self):
     self.assertIsInstance(date.DATE(-1, 1, 1), xlerrors.NumExcelError)
Example #9
0
 def test_DATE_year_must_be_number(self):
     self.assertIsInstance(date.DATE('bad', 1, 1), xlerrors.ValueExcelError)
Example #10
0
 def test_DATE_month_must_be_number(self):
     self.assertIsInstance(date.DATE(2000, 'bad', 1),
                           xlerrors.ValueExcelError)
Example #11
0
 def test_YEARFRAC_yearfrac_inverted(self):
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2015, 4, 20), date.DATE(2008, 1, 1)),
         date.YEARFRAC(date.DATE(2008, 1, 1), date.DATE(2015, 4, 20)))
Example #12
0
 def test_YEARFRAC_yearfrac_basis_4(self):
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2008, 1, 1), date.DATE(2015, 4, 20), 4),
         7.302777778)
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2024, 1, 1), date.DATE(2025, 1, 1), 4), 1)
Example #13
0
 def test_DATE_not_stricly_positive_month_substracts(self):
     self.assertEqual(date.DATE(2009, -1, 1), dt(2008, 11, 1))
Example #14
0
 def test_DATE_month_superior_to_12_change_year(self):
     self.assertEqual(date.DATE(2009, 14, 1), dt(2010, 2, 1))
Example #15
0
 def test_YEARFRAC_yearfrac_basis_1(self):
     # From Excel docs.
     self.assertAlmostEqual(
         date.YEARFRAC(date.DATE(2012, 1, 1), date.DATE(2012, 7, 30), 1),
         0.57650273)
Example #16
0
 def test_DATE(self):
     self.assertEqual(date.DATE(2000, 1, 1), 36526)
     self.assertEqual(date.DATE(2008, 11, 3), 39755)
     self.assertEqual(date.DATE(2024, 1, 1), 45292)
     self.assertEqual(date.DATE(2025, 1, 1), 45658)
     self.assertEqual(date.DATE(2026, 1, 1), 46023)
Example #17
0
 def test_DATE_year_must_be_integer(self):
     self.assertIsInstance(date.DATE('bad', 1, 1), xl.IntegerExcelError)
Example #18
0
 def test_DATE_year_for_29_feb(self):
     self.assertEqual(date.DATE(2008, 2, 29), 39507)
Example #19
0
 def test_DATE_month_must_be_integer(self):
     self.assertIsInstance(date.DATE(2000, 'bad', 1), xl.IntegerExcelError)
Example #20
0
 def test_DATE_not_stricly_positive_day_substracts(self):
     self.assertEqual(date.DATE(2009, 1, -1), dt(2008, 12, 30))
Example #21
0
 def test_DATE(self):
     self.assertEqual(date.DATE(2000, 1, 1), dt(2000, 1, 1))
     self.assertEqual(date.DATE(2008, 11, 3), dt(2008, 11, 3))
     self.assertEqual(date.DATE(2024, 1, 1), dt(2024, 1, 1))
     self.assertEqual(date.DATE(2025, 1, 1), dt(2025, 1, 1))
     self.assertEqual(date.DATE(2026, 1, 1), dt(2026, 1, 1))
Example #22
0
 def test_DATE_day_superior_to_365_change_year(self):
     self.assertEqual(date.DATE(2009, 1, 400), dt(2010, 2, 4))
Example #23
0
 def test_DATE_with_short_year(self):
     self.assertEqual(date.DATE(99, 1, 1), dt(1999, 1, 1))
Example #24
0
 def test_XNPV_length_mismatch(self):
     range_00 = [-10000, 2750, 4250]
     range_01 = [date.DATE(2008, 1, 1), date.DATE(2008, 3, 1)]
     self.assertIsInstance(financial.XNPV(0.09, range_00, range_01),
                           xl.NumExcelError)
Example #25
0
 def test_DATE_with_string_components(self):
     self.assertEqual(date.DATE('2026', '1', '1'), dt(2026, 1, 1))