def test_timestamp(self):
     f = AlternativeFormatter()
     d = Pendulum(1970, 1, 1)
     self.assertEqual('0', f.format(d, 'X'))
     self.assertEqual('86400', f.format(d.add(days=1), 'X'))
 def test_minute(self):
     f = AlternativeFormatter()
     d = Pendulum(2016, 8, 28, 7, 3)
     self.assertEqual('3', f.format(d, 'm'))
     self.assertEqual('03', f.format(d, 'mm'))
 def test_second(self):
     f = AlternativeFormatter()
     d = Pendulum(2016, 8, 28, 7, 3, 6)
     self.assertEqual('6', f.format(d, 's'))
     self.assertEqual('06', f.format(d, 'ss'))
 def test_am_pm(self):
     f = AlternativeFormatter()
     d = Pendulum(2016, 8, 28, 23)
     self.assertEqual('PM', f.format(d, 'A'))
     self.assertEqual('AM', f.format(d.hour_(11), 'A'))
    def test_week_of_year(self):
        f = AlternativeFormatter()
        d = Pendulum(2016, 8, 28)

        self.assertEqual('34th', f.format(d, 'wo'))
    def test_unknown_token(self):
        f = AlternativeFormatter()
        d = Pendulum(2016, 8, 28, 7, 3, 6, 123456)

        self.assertEqual('J', f.format(d, 'J'))
 def test_escape(self):
     f = AlternativeFormatter()
     d = Pendulum(2016, 8, 28)
     self.assertEqual('YYYY 2016 [2016]', f.format(d,
                                                   '[YYYY] YYYY \[YYYY\]'))
     self.assertEqual('D 28 \\28', f.format(d, '\D D \\\D'))
 def test_year_tokens(self):
     d = Pendulum(2009, 1, 14, 15, 25, 50, 123456)
     f = AlternativeFormatter()
     self.assertEqual('2009', f.format(d, 'YYYY'))
     self.assertEqual('09', f.format(d, 'YY'))
     self.assertEqual('2009', f.format(d, 'Y'))