mirror of
				https://github.com/django/django.git
				synced 2025-10-26 23:26:08 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import unittest
 | |
| 
 | |
| from forms_tests.widget_tests.base import WidgetTest
 | |
| 
 | |
| from django.db import connection
 | |
| from django.db.backends.signals import connection_created
 | |
| from django.test import TestCase, modify_settings
 | |
| 
 | |
| 
 | |
| def skipUnlessPG94(test):
 | |
|     try:
 | |
|         PG_VERSION = connection.pg_version
 | |
|     except AttributeError:
 | |
|         PG_VERSION = 0
 | |
|     if PG_VERSION < 90400:
 | |
|         return unittest.skip('PostgreSQL ≥ 9.4 required')(test)
 | |
|     return test
 | |
| 
 | |
| 
 | |
| @unittest.skipUnless(connection.vendor == 'postgresql', "PostgreSQL specific tests")
 | |
| class PostgreSQLTestCase(TestCase):
 | |
|     @classmethod
 | |
|     def tearDownClass(cls):
 | |
|         # No need to keep that signal overhead for non PostgreSQL-related tests.
 | |
|         from django.contrib.postgres.signals import register_type_handlers
 | |
| 
 | |
|         connection_created.disconnect(register_type_handlers)
 | |
|         super().tearDownClass()
 | |
| 
 | |
| 
 | |
| @unittest.skipUnless(connection.vendor == 'postgresql', "PostgreSQL specific tests")
 | |
| # To locate the widget's template.
 | |
| @modify_settings(INSTALLED_APPS={'append': 'django.contrib.postgres'})
 | |
| class PostgreSQLWidgetTestCase(WidgetTest, PostgreSQLTestCase):
 | |
|     pass
 |