def test_anonim_cant_edit_page(self): """Check if anonim can't edit page while not authenticated. It must go to /login/. """ request = self.factory.post( path=self.fake_path, HTTP_X_REQUESTED_WITH='XMLHttpRequest', data={} ) request.user = AnonymousUser() response = EditView.as_view()(request) self.assertEqual(response.status_code, 302) redirect_url = "%s?next=%s" % (reverse('login'), self.fake_path) self.assertEqual(redirect_url, response.url)
from django.conf.urls import patterns, include, url from django.contrib.staticfiles.urls import staticfiles_urlpatterns from django.conf.urls.static import static from django.conf import settings from django.contrib import admin from hello.views import ( ContactView, EditView, LogRequestView, LoginView, LogoutView, ) admin.autodiscover() urlpatterns = patterns( '', url(r'^$', ContactView.as_view(), name='contact'), url(r'^edit/(?P<pk>\d+)/$', EditView.as_view(), name='edit'), url(r'^requests/$', LogRequestView.as_view(), name='requests'), url(r'^login/$', LoginView.as_view(), name='login'), url(r'^logout/$', LogoutView.as_view(), name='logout'), url(r'^admin/', include(admin.site.urls)), ) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) urlpatterns += staticfiles_urlpatterns()