Ejemplo n.º 1
0
    def test_timestamp(self):
        """Test creating a new FrameTimestamp"""

        t = FrameTimestamp(1587495778, 0.5)
        self.assertAlmostEqual(t.unix, 1587495778.5, 6)
        # https://www.epochconverter.com/
        dt = t.datetime
        self.assertEqual(dt.year, 2020)
        self.assertEqual(dt.month, 4)
        self.assertEqual(dt.day, 21)
        self.assertEqual(dt.hour, 19)
        self.assertEqual(dt.minute, 2)
        self.assertEqual(dt.second, 58)
        self.assertEqual(dt.microsecond, 500000)

        t = FrameTimestamp(1587495778.5)
        self.assertAlmostEqual(t.unix, 1587495778.5, 6)
        # https://www.epochconverter.com/
        dt = t.datetime
        self.assertEqual(dt.year, 2020)
        self.assertEqual(dt.month, 4)
        self.assertEqual(dt.day, 21)
        self.assertEqual(dt.hour, 19)
        self.assertEqual(dt.minute, 2)
        self.assertEqual(dt.second, 58)
        self.assertEqual(dt.microsecond, 500000)

        t = FrameTimestamp(1587495777.4, 1.1)
        self.assertAlmostEqual(t.unix, 1587495778.5, 6)
        # https://www.epochconverter.com/
        dt = t.datetime
        self.assertEqual(dt.year, 2020)
        self.assertEqual(dt.month, 4)
        self.assertEqual(dt.day, 21)
        self.assertEqual(dt.hour, 19)
        self.assertEqual(dt.minute, 2)
        self.assertEqual(dt.second, 58)
        self.assertEqual(dt.microsecond, 500000)

        t = FrameTimestamp.from_dp_timetag(1587495778 * 196000000 +
                                           196000000 / 2)
        self.assertAlmostEqual(t.unix, 1587495778.5, 6)
        # https://planetcalc.com/503/
        self.assertAlmostEqual(t.mjd, 58960.7937268517 + 0.5 / 86400.0, 9)
        self.assertEqual(t.pulsar_mjd[0], 58960)
        self.assertAlmostEqual(t.pulsar_mjd[1], 0.7937268517, 9)
        self.assertAlmostEqual(t.pulsar_mjd[2], 0.5, 9)
        self.assertEqual(t.dp_timetag, 1587495778 * 196000000 + 196000000 / 2)

        t = FrameTimestamp.from_mjd_mpm(58962, 60481519)
        # 200423 16:48:01  58962  60481519 T   1099467 1 SHL RPT POWER-OUTAGE|
        dt = t.datetime
        self.assertEqual(dt.year, 2020)
        self.assertEqual(dt.month, 4)
        self.assertEqual(dt.day, 23)
        self.assertEqual(dt.hour, 16)
        self.assertEqual(dt.minute, 48)
        self.assertEqual(dt.second, 1)
        self.assertEqual(dt.microsecond, 519000)
        self.assertTrue(dt.tzinfo is None)

        t = FrameTimestamp.from_mjd_mpm(58962, 60481519)
        # 200423 16:48:01  58962  60481519 T   1099467 1 SHL RPT POWER-OUTAGE|
        dt = t.utc_datetime
        self.assertEqual(dt.year, 2020)
        self.assertEqual(dt.month, 4)
        self.assertEqual(dt.day, 23)
        self.assertEqual(dt.hour, 16)
        self.assertEqual(dt.minute, 48)
        self.assertEqual(dt.second, 1)
        self.assertEqual(dt.microsecond, 519000)
        self.assertFalse(dt.tzinfo is None)
Ejemplo n.º 2
0
    def test_timestamp_string(self):
        """Test string representations of a FrameTimestamp"""

        t = FrameTimestamp.from_mjd_mpm(58962, 60481519)
        str(t)
        repr(t)