Author: aaugustin
Date: 2012-03-31 06:01:59 -0700 (Sat, 31 Mar 2012)
New Revision: 17845

Modified:
   django/trunk/django/conf/__init__.py
   django/trunk/tests/regressiontests/settings_tests/tests.py
Log:
Required that the MEDIA_URL and STATIC_URL settings end with a slash, per the 
deprecation timeline.


Modified: django/trunk/django/conf/__init__.py
===================================================================
--- django/trunk/django/conf/__init__.py        2012-03-31 12:57:06 UTC (rev 
17844)
+++ django/trunk/django/conf/__init__.py        2012-03-31 13:01:59 UTC (rev 
17845)
@@ -69,8 +69,7 @@
     """
     def __setattr__(self, name, value):
         if name in ("MEDIA_URL", "STATIC_URL") and value and not 
value.endswith('/'):
-            warnings.warn("If set, %s must end with a slash" % name,
-                          DeprecationWarning)
+            raise ImproperlyConfigured("If set, %s must end with a slash" % 
name)
         elif name == "ADMIN_MEDIA_PREFIX":
             warnings.warn("The ADMIN_MEDIA_PREFIX setting has been removed; "
                           "use STATIC_URL instead.", DeprecationWarning)

Modified: django/trunk/tests/regressiontests/settings_tests/tests.py
===================================================================
--- django/trunk/tests/regressiontests/settings_tests/tests.py  2012-03-31 
12:57:06 UTC (rev 17844)
+++ django/trunk/tests/regressiontests/settings_tests/tests.py  2012-03-31 
13:01:59 UTC (rev 17845)
@@ -1,6 +1,7 @@
 import os
 
 from django.conf import settings, global_settings
+from django.core.exceptions import ImproperlyConfigured
 from django.http import HttpRequest
 from django.test import TransactionTestCase, TestCase, signals
 from django.test.utils import override_settings
@@ -185,22 +186,26 @@
 
     def test_no_end_slash(self):
         """
-        MEDIA_URL raises an DeprecationWarning error if it doesn't end in a
-        slash.
+        MEDIA_URL and STATIC_URL raise an ImproperlyConfigured exception
+        if they doesn't end in a slash.
         """
-        import warnings
-        warnings.filterwarnings('error', 'If set, MEDIA_URL must end with a 
slash', DeprecationWarning)
-
         def setattr_settings(settings_module, attr, value):
             setattr(settings_module, attr, value)
 
-        self.assertRaises(DeprecationWarning, setattr_settings,
+        self.assertRaises(ImproperlyConfigured, setattr_settings,
                           self.settings_module, 'MEDIA_URL', '/foo')
 
-        self.assertRaises(DeprecationWarning, setattr_settings,
+        self.assertRaises(ImproperlyConfigured, setattr_settings,
                           self.settings_module, 'MEDIA_URL',
                           'http://media.foo.com')
 
+        self.assertRaises(ImproperlyConfigured, setattr_settings,
+                          self.settings_module, 'STATIC_URL', '/foo')
+
+        self.assertRaises(ImproperlyConfigured, setattr_settings,
+                          self.settings_module, 'STATIC_URL',
+                          'http://static.foo.com')
+
     def test_double_slash(self):
         """
         If a MEDIA_URL ends in more than one slash, presume they know what

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/django-updates?hl=en.

Reply via email to