mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	Fixed #23497 -- Made admin system checks run for custom AdminSites.
This commit is contained in:
		
				
					committed by
					
						 Tim Graham
						Tim Graham
					
				
			
			
				
	
			
			
			
						parent
						
							c7786550c4
						
					
				
				
					commit
					b7219c7ba5
				
			| @@ -35,18 +35,20 @@ class ValidFormFieldsets(admin.ModelAdmin): | ||||
|     ) | ||||
|  | ||||
|  | ||||
| class MyAdmin(admin.ModelAdmin): | ||||
|     @classmethod | ||||
|     def check(cls, model, **kwargs): | ||||
|         return ['error!'] | ||||
|  | ||||
|  | ||||
| @override_settings( | ||||
|     SILENCED_SYSTEM_CHECKS=['fields.W342'],  # ForeignKey(unique=True) | ||||
|     INSTALLED_APPS=['django.contrib.auth', 'django.contrib.contenttypes', 'admin_checks'] | ||||
| ) | ||||
| class SystemChecksTestCase(TestCase): | ||||
|  | ||||
|     @override_settings(DEBUG=True) | ||||
|     def test_checks_are_performed(self): | ||||
|         class MyAdmin(admin.ModelAdmin): | ||||
|             @classmethod | ||||
|             def check(self, model, **kwargs): | ||||
|                 return ['error!'] | ||||
|  | ||||
|         admin.site.register(Song, MyAdmin) | ||||
|         try: | ||||
|             errors = checks.run_checks() | ||||
| @@ -54,6 +56,22 @@ class SystemChecksTestCase(TestCase): | ||||
|             self.assertEqual(errors, expected) | ||||
|         finally: | ||||
|             admin.site.unregister(Song) | ||||
|             admin.sites.system_check_errors = [] | ||||
|  | ||||
|     @override_settings(DEBUG=True) | ||||
|     def test_custom_adminsite(self): | ||||
|         class CustomAdminSite(admin.AdminSite): | ||||
|             pass | ||||
|  | ||||
|         custom_site = CustomAdminSite() | ||||
|         custom_site.register(Song, MyAdmin) | ||||
|         try: | ||||
|             errors = checks.run_checks() | ||||
|             expected = ['error!'] | ||||
|             self.assertEqual(errors, expected) | ||||
|         finally: | ||||
|             custom_site.unregister(Song) | ||||
|             admin.sites.system_check_errors = [] | ||||
|  | ||||
|     def test_readonly_and_editable(self): | ||||
|         class SongAdmin(admin.ModelAdmin): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user