30 lines
		
	
	
		
			905 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			905 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| import unittest
 | |
| from web.common.util.time import format_duration
 | |
| from datetime import timedelta
 | |
| 
 | |
| 
 | |
| class FormatDurationTest(unittest.TestCase):
 | |
|     def setUp(self) -> None:
 | |
| 
 | |
|         return super().setUp()
 | |
| 
 | |
|     def test_only_hours(self):
 | |
|         delta = timedelta(hours=1)
 | |
|         result = format_duration(delta, "%H hours")
 | |
|         self.assertEqual(result, "1 hours")
 | |
| 
 | |
|     def test_only_minutes(self):
 | |
|         delta = timedelta(minutes=34)
 | |
|         result = format_duration(delta, "%m minutes")
 | |
|         self.assertEqual(result, "34 minutes")
 | |
| 
 | |
|     def test_only_overflow_seconds(self):
 | |
|         delta = timedelta(seconds=61)
 | |
|         result = format_duration(delta, "%s seconds")
 | |
|         self.assertEqual(result, "1 seconds")
 | |
| 
 | |
|     def test_only_less_than_minute_seconds(self):
 | |
|         delta = timedelta(seconds=59)
 | |
|         result = format_duration(delta)
 | |
|         self.assertEqual(result, "less than a minute")
 |