Django

Code

Changeset 7824

Show
Ignore:
Timestamp:
07/02/08 03:32:14 (5 months ago)
Author:
simon
Message:

newforms-admin: Fixed failing test by changing never_cache header to handle views that don't return a response object. The test traceback was:

======================================================================
ERROR: Test add view restricts access and actually adds items.


Traceback (most recent call last):

File ".../tests/regressiontests/admin_views/tests.py", line 178, in testAddView

post = self.client.post('/test_admin/admin/admin_views/article/add/', self.super_login)

File ".../django/test/client.py", line 265, in post

return self.request(**r)

File ".../django/core/handlers/base.py", line 82, in get_response

response = callback(request, *callback_args, **callback_kwargs)

File ".../django/contrib/admin/sites.py", line 113, in root

response = self.login(request)

File ".../django/views/decorators/cache.py", line 45, in _wrapped_view_func

add_never_cache_headers(response)

File ".../django/utils/cache.py", line 118, in add_never_cache_headers

patch_response_headers(response, cache_timeout=-1)

File ".../django/utils/cache.py", line 106, in patch_response_headers

if not response.has_header('ETag'):

AttributeError?: 'NoneType?' object has no attribute 'has_header'

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/branches/newforms-admin/django/views/decorators/cache.py

    r7233 r7824  
    4343    def _wrapped_view_func(request, *args, **kwargs): 
    4444        response = view_func(request, *args, **kwargs) 
    45         add_never_cache_headers(response) 
     45        # Although rare, it is possible for a view to return None (e.g. the 
     46        # django.contrib.admin.sites.AdminSite.login view in one corner-case) 
     47        if response: 
     48            add_never_cache_headers(response) 
    4649        return response 
    4750    return wraps(view_func)(_wrapped_view_func)