test_time_utils.py 723 B

1234567891011121314151617181920
  1. import unittest
  2. from app.core.time_utils import get_beijing_time
  3. from datetime import datetime, timezone, timedelta
  4. class TestTimeUtils(unittest.TestCase):
  5. def test_get_beijing_time(self):
  6. bj_time = get_beijing_time()
  7. # Verify timezone offset is +8
  8. self.assertEqual(bj_time.tzinfo, timezone(timedelta(hours=8)))
  9. # Verify it's close to current UTC time + 8 hours
  10. utc_now = datetime.now(timezone.utc)
  11. expected_bj = utc_now.astimezone(timezone(timedelta(hours=8)))
  12. # Allow small delta for execution time
  13. diff = abs((bj_time - expected_bj).total_seconds())
  14. self.assertLess(diff, 1.0)
  15. if __name__ == '__main__':
  16. unittest.main()