mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			45 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import datetime
 | |
| from email import utils
 | |
| import unittest
 | |
| 
 | |
| class DateTimeTests(unittest.TestCase):
 | |
| 
 | |
|     datestring = 'Sun, 23 Sep 2001 20:10:55'
 | |
|     dateargs = (2001, 9, 23, 20, 10, 55)
 | |
|     offsetstring = ' -0700'
 | |
|     utcoffset = datetime.timedelta(hours=-7)
 | |
|     tz = datetime.timezone(utcoffset)
 | |
|     naive_dt = datetime.datetime(*dateargs)
 | |
|     aware_dt = datetime.datetime(*dateargs, tzinfo=tz)
 | |
| 
 | |
|     def test_naive_datetime(self):
 | |
|         self.assertEqual(utils.format_datetime(self.naive_dt),
 | |
|                          self.datestring + ' -0000')
 | |
| 
 | |
|     def test_aware_datetime(self):
 | |
|         self.assertEqual(utils.format_datetime(self.aware_dt),
 | |
|                          self.datestring + self.offsetstring)
 | |
| 
 | |
|     def test_usegmt(self):
 | |
|         utc_dt = datetime.datetime(*self.dateargs,
 | |
|                                    tzinfo=datetime.timezone.utc)
 | |
|         self.assertEqual(utils.format_datetime(utc_dt, usegmt=True),
 | |
|                          self.datestring + ' GMT')
 | |
| 
 | |
|     def test_usegmt_with_naive_datetime_raises(self):
 | |
|         with self.assertRaises(ValueError):
 | |
|             utils.format_datetime(self.naive_dt, usegmt=True)
 | |
| 
 | |
|     def test_usegmt_with_non_utc_datetime_raises(self):
 | |
|         with self.assertRaises(ValueError):
 | |
|             utils.format_datetime(self.aware_dt, usegmt=True)
 | |
| 
 | |
|     def test_parsedate_to_datetime(self):
 | |
|         self.assertEqual(
 | |
|             utils.parsedate_to_datetime(self.datestring + self.offsetstring),
 | |
|             self.aware_dt)
 | |
| 
 | |
|     def test_parsedate_to_datetime_naive(self):
 | |
|         self.assertEqual(
 | |
|             utils.parsedate_to_datetime(self.datestring + ' -0000'),
 | |
|             self.naive_dt)
 | 
