mirror of
				https://github.com/searxng/searxng.git
				synced 2025-10-31 10:37:06 -04:00 
			
		
		
		
	Make suspended_time changeable in settings.yml Allow different values to be set for different exceptions. Co-authored-by: Alexandre Flament <alex@al-f.net>
		
			
				
	
	
		
			42 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # SPDX-License-Identifier: AGPL-3.0-or-later
 | |
| 
 | |
| from tests import SearxTestCase
 | |
| import searx.exceptions
 | |
| from searx import get_setting
 | |
| 
 | |
| 
 | |
| class TestExceptions(SearxTestCase):
 | |
|     def test_default_suspend_time(self):
 | |
|         with self.assertRaises(searx.exceptions.SearxEngineAccessDeniedException) as e:
 | |
|             raise searx.exceptions.SearxEngineAccessDeniedException()
 | |
|         self.assertEqual(
 | |
|             e.exception.suspended_time,
 | |
|             get_setting(searx.exceptions.SearxEngineAccessDeniedException.SUSPEND_TIME_SETTING),
 | |
|         )
 | |
| 
 | |
|         with self.assertRaises(searx.exceptions.SearxEngineCaptchaException) as e:
 | |
|             raise searx.exceptions.SearxEngineCaptchaException()
 | |
|         self.assertEqual(
 | |
|             e.exception.suspended_time, get_setting(searx.exceptions.SearxEngineCaptchaException.SUSPEND_TIME_SETTING)
 | |
|         )
 | |
| 
 | |
|         with self.assertRaises(searx.exceptions.SearxEngineTooManyRequestsException) as e:
 | |
|             raise searx.exceptions.SearxEngineTooManyRequestsException()
 | |
|         self.assertEqual(
 | |
|             e.exception.suspended_time,
 | |
|             get_setting(searx.exceptions.SearxEngineTooManyRequestsException.SUSPEND_TIME_SETTING),
 | |
|         )
 | |
| 
 | |
|     def test_custom_suspend_time(self):
 | |
|         with self.assertRaises(searx.exceptions.SearxEngineAccessDeniedException) as e:
 | |
|             raise searx.exceptions.SearxEngineAccessDeniedException(suspended_time=1337)
 | |
|         self.assertEqual(e.exception.suspended_time, 1337)
 | |
| 
 | |
|         with self.assertRaises(searx.exceptions.SearxEngineCaptchaException) as e:
 | |
|             raise searx.exceptions.SearxEngineCaptchaException(suspended_time=1409)
 | |
|         self.assertEqual(e.exception.suspended_time, 1409)
 | |
| 
 | |
|         with self.assertRaises(searx.exceptions.SearxEngineTooManyRequestsException) as e:
 | |
|             raise searx.exceptions.SearxEngineTooManyRequestsException(suspended_time=1543)
 | |
|         self.assertEqual(e.exception.suspended_time, 1543)
 |