def test(self): tz_str = 'Asia/Shanghai' utc_time = tz.parseStr2utc('20110417T155959', tz_str) self.assertEqual(utc_time is not None, True) tz_time = tz.parseutc2tz(utc_time, tz_str) self.assertEqual(tz_time is not None, True) self.assertEqual(tz.get_utcnow() is not None, True) # guess timezone # offset from javascript new Date().getTimezoneOffset() mins = -480 # shanghai self.assertEqual(tz.guess_timezone(mins), 'Asia/Shanghai')
def set_mail_task(self): if 1 == self.remind_type: # book the mail notification timer = self.timer eta = timer.time - timedelta(milliseconds=self.lead_time) if eta - datetime.now() > timedelta(seconds=1): from tz import parseutc2tz time = parseutc2tz(timer.time, str(timer.owner.get_profile().timezone)) if time: time_str = time.strftime('%Y-%m-%d %a %H:%M') mail_subject = 'Reminders: ' + timer.title + ' @ ' + time_str mail_content = timer.title + ' @ ' + time_str + '<br>' + timer.desc timer.owner.email_user(mail_subject, mail_content, eta, self.get_task_id())