Пример #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)
Пример #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)
Пример #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)
Пример #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)
Пример #5
0
 def test_DATE_year_must_have_less_than_10000(self):
     self.assertIsInstance(date.DATE(10000, 1, 1), xlerrors.NumExcelError)
Пример #6
0
 def test_DATE_result_must_be_positive(self):
     self.assertIsInstance(date.DATE(1900, 1, -1), xlerrors.NumExcelError)
Пример #7
0
 def test_DATE_day_must_be_integer(self):
     self.assertIsInstance(date.DATE(2000, 1, 'bad'),
                           xlerrors.ValueExcelError)
Пример #8
0
 def test_DATE_year_must_be_positive(self):
     self.assertIsInstance(date.DATE(-1, 1, 1), xlerrors.NumExcelError)
Пример #9
0
 def test_DATE_year_must_be_number(self):
     self.assertIsInstance(date.DATE('bad', 1, 1), xlerrors.ValueExcelError)
Пример #10
0
 def test_DATE_month_must_be_number(self):
     self.assertIsInstance(date.DATE(2000, 'bad', 1),
                           xlerrors.ValueExcelError)
Пример #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)))
Пример #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)
Пример #13
0
 def test_DATE_not_stricly_positive_month_substracts(self):
     self.assertEqual(date.DATE(2009, -1, 1), dt(2008, 11, 1))
Пример #14
0
 def test_DATE_month_superior_to_12_change_year(self):
     self.assertEqual(date.DATE(2009, 14, 1), dt(2010, 2, 1))
Пример #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)
Пример #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)
Пример #17
0
 def test_DATE_year_must_be_integer(self):
     self.assertIsInstance(date.DATE('bad', 1, 1), xl.IntegerExcelError)
Пример #18
0
 def test_DATE_year_for_29_feb(self):
     self.assertEqual(date.DATE(2008, 2, 29), 39507)
Пример #19
0
 def test_DATE_month_must_be_integer(self):
     self.assertIsInstance(date.DATE(2000, 'bad', 1), xl.IntegerExcelError)
Пример #20
0
 def test_DATE_not_stricly_positive_day_substracts(self):
     self.assertEqual(date.DATE(2009, 1, -1), dt(2008, 12, 30))
Пример #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))
Пример #22
0
 def test_DATE_day_superior_to_365_change_year(self):
     self.assertEqual(date.DATE(2009, 1, 400), dt(2010, 2, 4))
Пример #23
0
 def test_DATE_with_short_year(self):
     self.assertEqual(date.DATE(99, 1, 1), dt(1999, 1, 1))
Пример #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)
Пример #25
0
 def test_DATE_with_string_components(self):
     self.assertEqual(date.DATE('2026', '1', '1'), dt(2026, 1, 1))