mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	[1.8.x] Fixed #25079 -- Added warning if both TEMPLATES and TEMPLATE_* settings are defined.
Django ignores the value of the TEMPLATE_* settings if TEMPLATES is also
set, which is confusing for users following older tutorials. This change
adds a system check that warns if any of the TEMPLATE_* settings have
changed from their defaults but the TEMPLATES dict is also non-empty.
Removed the TEMPLATE_DIRS from the test settings file; this was marked
for removal in 1.10 but no tests fail if it is removed now.
Backport of 24620d71f2 from master
			
			
This commit is contained in:
		
				
					committed by
					
						 Tim Graham
						Tim Graham
					
				
			
			
				
	
			
			
			
						parent
						
							269315d81a
						
					
				
				
					commit
					4cc0baa98e
				
			
							
								
								
									
										29
									
								
								tests/check_framework/tests_1_8_compatibility.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								tests/check_framework/tests_1_8_compatibility.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,29 @@ | ||||
| from django.core.checks.compatibility.django_1_8_0 import \ | ||||
|     check_duplicate_template_settings | ||||
| from django.test import SimpleTestCase | ||||
| from django.test.utils import override_settings | ||||
|  | ||||
|  | ||||
| class CheckDuplicateTemplateSettingsTest(SimpleTestCase): | ||||
|  | ||||
|     def test_not_raised_if_no_templates_setting(self): | ||||
|         self.assertEqual(check_duplicate_template_settings(None), []) | ||||
|  | ||||
|     @override_settings( | ||||
|         TEMPLATES=[{'BACKEND': 'django.template.backends.django.DjangoTemplates'}], | ||||
|         TEMPLATE_DIRS=['/path/to/dirs'], | ||||
|     ) | ||||
|     def test_duplicate_setting(self): | ||||
|         result = check_duplicate_template_settings(None) | ||||
|         self.assertEqual(result[0].id, '1_8.W001') | ||||
|  | ||||
|     @override_settings( | ||||
|         TEMPLATES=[{'BACKEND': 'django.template.backends.django.DjangoTemplates'}], | ||||
|         TEMPLATE_DIRS=['/path/to/dirs'], | ||||
|         TEMPLATE_DEBUG=True, | ||||
|     ) | ||||
|     def test_multiple_duplicate_settings(self): | ||||
|         result = check_duplicate_template_settings(None) | ||||
|         self.assertEqual(len(result), 1) | ||||
|         self.assertTrue('TEMPLATE_DIRS' in result[0].msg) | ||||
|         self.assertTrue('TEMPLATE_DEBUG' in result[0].msg) | ||||
		Reference in New Issue
	
	Block a user