Пример #1
0
 def verify(t, t_norm):
     jd = tpm.JD(**t)
     jd.normalize()
     self.assertAlmostEqual(jd.dd, t_norm['dd'])
     self.assertAlmostEqual(jd.hh, t_norm['hh'])
     self.assertAlmostEqual(jd.mm, t_norm['mm'])
     self.assertAlmostEqual(jd.ss, t_norm['ss'], 4)
Пример #2
0
 def testGetFields(self):
     """JD.x => retrieve values of fields."""
     jd = tpm.JD()
     self.assertEqual(jd.dd, 0.0)
     self.assertEqual(jd.hh, 0.0)
     self.assertEqual(jd.mm, 0.0)
     self.assertEqual(jd.ss, 0.0)
Пример #3
0
 def verify(t, t_norm):
     jd = tpm.JD(**t)
     ymd = jd.to_ymd()
     self.assertAlmostEqual(ymd.y, t_norm['y'])
     self.assertAlmostEqual(ymd.m, t_norm['m'])
     self.assertAlmostEqual(ymd.dd, t_norm['dd'])
     self.assertAlmostEqual(ymd.mm, t_norm['mm'])
     self.assertAlmostEqual(ymd.ss, t_norm['ss'])
Пример #4
0
    def testSubtractNonJD(self):
        """JD - x => Exception if subtraction involves non JD value."""
        jd = tpm.JD()  # All zeros.

        def sub_jd(jd, x):
            return jd - x

        self.assertRaises(TypeError, sub_jd, jd, 1)
Пример #5
0
    def testAddNonJD(self):
        """JD + x => Exception if addition involves non JD value."""
        jd = tpm.JD()  # All zeros.

        def add_jd(jd, x):
            return jd - x

        self.assertRaises(TypeError, add_jd, jd, 1)
Пример #6
0
 def testRepr(self):
     """JD__repr__ => dictionary as a string."""
     j = dict(dd=2451445.0, hh=12.0, mm=0.0, ss=0.0)
     jd = tpm.JD()
     jd.dd = j['dd']
     jd.hh = j['hh']
     jd.mm = j['mm']
     jd.ss = j['ss']
     self.assertEqual(j, eval(repr(jd)))
Пример #7
0
 def testSubtraction(self):
     """JD.__sub__ => JD - JD."""
     j1 = dict(dd=2451445.0, hh=12.0, mm=0.0, ss=0.0)
     j2 = dict(dd=1.0, hh=2.3, mm=23.4, ss=2.0)
     jd1 = tpm.JD()
     jd1.dd = j1['dd']
     jd1.hh = j1['hh']
     jd1.mm = j1['mm']
     jd1.ss = j1['ss']
     jd2 = tpm.JD()
     jd2.dd = j2['dd']
     jd2.hh = j2['hh']
     jd2.mm = j2['mm']
     jd2.ss = j2['ss']
     jd = jd1 - jd2
     self.assertEqual(jd.dd, jd1.dd - jd2.dd)
     self.assertEqual(jd.hh, jd1.hh - jd2.hh)
     self.assertEqual(jd.mm, jd1.mm - jd2.mm)
     self.assertEqual(jd.ss, jd1.ss - jd2.ss)
Пример #8
0
 def testAddition(self):
     """JD.__add__ => JD + JD."""
     j1 = dict(dd=2451445.0, hh=12.0, mm=0.0, ss=0.0)
     j2 = dict(dd=1.0, hh=2.3, mm=23.4, ss=2.0)
     jd1 = tpm.JD()
     jd1.dd = j1['dd']
     jd1.hh = j1['hh']
     jd1.mm = j1['mm']
     jd1.ss = j1['ss']
     jd2 = tpm.JD()
     jd2.dd = j2['dd']
     jd2.hh = j2['hh']
     jd2.mm = j2['mm']
     jd2.ss = j2['ss']
     jd = jd1 + jd2
     self.assertEqual(jd.dd, jd1.dd + jd2.dd)
     self.assertEqual(jd.hh, jd1.hh + jd2.hh)
     self.assertEqual(jd.mm, jd1.mm + jd2.mm)
     self.assertEqual(jd.ss, jd1.ss + jd2.ss)
Пример #9
0
    def testUnicodeAndStr(self):
        """JD.__str__ => string representations."""
        # Output strings used as checks are from the file pytpm/tests
        # /c_tests/fmt_jd_test.c.
        s1 = " 2451545  12H 00M 00.000S"
        s2 = " 2456745  15H 06M 50.515S"
        j1 = dict(dd=2451545.0, hh=12.0, mm=0.0, ss=0.0)
        j2 = dict(dd=2456745.2456, hh=9.0, mm=12.3446, ss=49.99999)
        jd1 = tpm.JD()
        jd2 = tpm.JD()
        jd1.dd = j1['dd']
        jd1.hh = j1['hh']
        jd1.mm = j1['mm']
        jd1.ss = j1['ss']
        jd2.dd = j2['dd']
        jd2.hh = j2['hh']
        jd2.mm = j2['mm']
        jd2.ss = j2['ss']

        self.assertEqual(str(jd1), s1)
        self.assertEqual(str(jd2), s2)
Пример #10
0
 def testSetFieldValues(self):
     """JD.x = val => Set fields of a JD object."""
     j = dict(dd=2451445.0, hh=12.0, mm=0.0, ss=0.0)
     jd = tpm.JD()
     jd.dd = j['dd']
     jd.hh = j['hh']
     jd.mm = j['mm']
     jd.ss = j['ss']
     self.assertEqual(jd.dd, j['dd'])
     self.assertEqual(jd.hh, j['hh'])
     self.assertEqual(jd.mm, j['mm'])
     self.assertEqual(jd.ss, j['ss'])
Пример #11
0
 def verify(t, t_norm):
     jd = tpm.JD(**t)
     self.assertAlmostEqual(jd.to_j(), t_norm)
Пример #12
0
 def testInvalidKeywordAtInit(self):
     """JD(key=value) => raise TypeError if key is invalid."""
     self.assertRaises(TypeError, lambda: tpm.JD(h=12.0))
     self.assertRaises(TypeError, lambda: tpm.JD(hours=12.0))
Пример #13
0
 def verify(t, t_norm):
     jd = tpm.JD(**t)
     self.assertEqual(jd.dd, t_norm['dd'])
     self.assertEqual(jd.hh, t_norm['hh'])
     self.assertEqual(jd.mm, t_norm['mm'])
     self.assertEqual(jd.ss, t_norm['ss'])
Пример #14
0
 def testCreate(self):
     """JD() => create a JD object."""
     jd = tpm.JD()
     self.assertEqual(type(jd), tpm.JD)