def __init__(self): View.__init__(self) service_categories = ServiceCategory.objects.all().order_by("-id") self.context = { "service_categories": service_categories, } Price.cat_size(self, service_categories)
def test_export_include(mock_urlconf_module, mock_included_module): # Setup urls to include mock_included_module.urlpatterns = [ url(r"^red/$", View.as_view(), name="red"), url(r"^blue/$", View.as_view(), name="blue"), ] mock_urlconf_module.urlpatterns = [ url(r"^colors/", include("mock_included_module")) ] assert export_urlconf.as_json("mock_urlconf_module") == [{ "regex": "^colors/", "namespace": None, "app_name": None, "includes": [{ "regex": "^red/$", "name": "red" }, { "regex": "^blue/$", "name": "blue" }], }]
def test_export_regex(mock_urlconf_module): mock_urlconf_module.urlpatterns = [ # 'url' is just an alias for 're_path' url(r"^login/$", View.as_view(), name="login"), re_path(r"^logout/$", View.as_view(), name="logout"), ] assert export_urlconf.as_json("mock_urlconf_module") == [ { "regex": "^login/$", "name": "login" }, { "regex": "^logout/$", "name": "logout" }, ]
def test_export_route(mock_urlconf_module): mock_urlconf_module.urlpatterns = [ path("login/", View.as_view(), name="login") ] assert export_urlconf.as_json("mock_urlconf_module") == [{ "route": "login/", "name": "login" }]
def test_whitelist_and_blacklist(whitelist, blacklist, expected_url_names, mock_urlconf_module, mock_included_module): mock_included_module.app_name = "admin" mock_included_module.urlpatterns = [ url(r"^secret-1/$", View.as_view(), name="secret-1"), url(r"^secret-2/$", View.as_view(), name="secret-2"), url(r"^db-edit/$", View.as_view(), name="db-edit"), ] mock_urlconf_module.urlpatterns = [ url(r"^public-a/$", View.as_view(), name="public-a"), url(r"^public-b/$", View.as_view(), name="public-b"), url(r"^admin/$", include("mock_included_module", namespace="admin")), ] assert (export_urlconf.get_all_allowed_url_names( "mock_urlconf_module", whitelist=whitelist, blacklist=blacklist) == expected_url_names)
def test_export_include_with_namespace( mock_urlconf_module, mock_included_module, app_name, namespace, expected_app_name, expected_namespace, ): # Maybe set app_name on included urls module if app_name: mock_included_module.app_name = app_name # Setup urls to include mock_included_module.urlpatterns = [ url(r"^red/$", View.as_view(), name="red"), url(r"^blue/$", View.as_view(), name="blue"), ] # Maybe set a namespace for the included urls if namespace: mock_urlconf_module.urlpatterns = [ url(r"^colors/", include("mock_included_module", namespace=namespace)) ] else: mock_urlconf_module.urlpatterns = [ url(r"^colors/", include("mock_included_module")) ] assert export_urlconf.as_json("mock_urlconf_module") == [{ "regex": "^colors/", "namespace": expected_namespace, "app_name": expected_app_name, "includes": [{ "regex": "^red/$", "name": "red" }, { "regex": "^blue/$", "name": "blue" }], }]
def __init__(self): View.__init__(self) portfolio = Portfolio.objects.all() reviews = Review.objects.all().order_by("-id") service_categories = ServiceCategory.objects.all().order_by("-id") services = Service.objects.all() self.context = { "portfolio": portfolio, "reviews": reviews[:3], "reviews_num": reviews.count(), "service_categories": service_categories, "services": services, } if service_categories.count() > 0: col_size = 12 // service_categories.count() self.context["col_size"] = "s%s" % col_size self.num_photo = 3
def test_set_django_http_response(self): audit_log = DjangoAuditLogger() request = self.request_factory.get('/') response = View.as_view()(request) audit_log.set_django_http_response(response) self.assertEqual(audit_log.http_response['status_code'], 405) self.assertEqual(audit_log.http_response['reason'], 'Method Not Allowed') self.assertTrue('Allow' in audit_log.http_response['headers']) self.assertTrue('Content-Type' in audit_log.http_response['headers'])
def test_export_locale_prefix_pattern(mock_urlconf_module): mock_urlconf_module.urlpatterns = i18n_patterns( url(r"^$", View.as_view(), name="index")) assert export_urlconf.as_json("mock_urlconf_module") == [{ "isLocalePrefix": True, "classPath": "django.urls.resolvers.LocalePrefixPattern", "includes": [{ "regex": "^$", "name": "index" }], }]
def test_export_multi_language_without_country(mock_urlconf_module): mock_urlconf_module.urlpatterns = [ url(lazy(_get_color_url_pattern, str)(), View.as_view(), name="color") ] assert export_urlconf.as_json("mock_urlconf_module", language_without_country=True) == [{ "regex": { "en": "^color/$", "fr": "^couleur/$" }, "name": "color" }]
def test_export_custom_locale_prefix_pattern_class(mock_urlconf_module): mock_urlconf_module.urlpatterns = [ URLResolver(CustomLocalePrefixPattern(), [url(r"^$", View.as_view(), name="index")]) ] assert export_urlconf.as_json("mock_urlconf_module") == [{ "isLocalePrefix": True, "classPath": "tests.django_urlconf_export.test_export_urlconf.CustomLocalePrefixPattern", "includes": [{ "regex": "^$", "name": "index" }], }]
def test_process_response(self, mocked_audit_log): """ Assert that the response has been added to the audit log and that the log has been fired. """ # prepare request request = self.request_factory.get('/') self.middleware.process_request(request) # prepare response response = View.as_view()(request) self.middleware.process_response(request, response) mocked_instance = mocked_audit_log.return_value mocked_instance.set_django_http_response.assert_called_with(response) mocked_instance.send_log.assert_called()
def test_process_response_without_audit_log(self, mocked_audit_log): """ Assert that when the audit log does not exist, we do not try to call any methods on it """ # prepare request (but don't pass through middleware, so that hasattr(request, 'audit_log') is False request = self.request_factory.get('/') self.assertFalse(hasattr(request, 'audit_log'), "Audit log should not have been attached to request") # prepare response response = View.as_view()(request) self.middleware.process_response(request, response) mocked_instance = mocked_audit_log.return_value mocked_instance.set_http_response.assert_not_called() mocked_instance.send_log.assert_not_called()
def dispatch(self, request, *args, **kwargs): try: self.catalog = Catalog.objects.get(url_name=kwargs['catalog_name']) except Catalog.DoesNotExist: raise ProblemDetailException(request, _("Catalog not found"), status=HTTPStatus.NOT_FOUND) except KeyError as e: raise ProblemDetailException(request, _("Internal server error"), status=HTTPStatus.NOT_FOUND, previous=e) if request.method not in self.UNSECURED_METHODS and not self.catalog.is_public: self._authenticate(request) return View.dispatch(self, request, *args, **kwargs)
def dispatch(self, request, *args, **kwargs): self.related_fields = self.related_fields or [] self.context_rel = {} getparams = [] self.getparams = '' for related in self.related_fields: if self.request.GET.get(related, False) is not False: Classrelated = utils.get_related_class_field( self.model, related) self.context_rel[related] = get_object_or_404( Classrelated, pk=self.request.GET.get(related, '0')) getparams.append("%s=%s" % ( related, str(self.context_rel[related].pk))) if getparams: self.getparams = "?" + "&".join(getparams) for perm in self.perms: if not request.user.has_perm(perm): return HttpResponseForbidden() return View.dispatch(self, request, *args, **kwargs)
def dispatch(self, request, *args, **kwargs): self.related_fields = self.related_fields or [] self.context_rel = {} getparams = [] self.getparams = '' for related in self.related_fields: pk = self.request.GET.get(related, '') if pk: Classrelated = utils.get_related_class_field( self.model, related) self.context_rel[related] = get_object_or_404( Classrelated, pk=pk) getparams.append("%s=%s" % ( related, str(self.context_rel[related].pk))) if getparams: self.getparams = "&".join(getparams) for perm in self.perms: if not request.user.has_perm(perm): template = loader.get_template('403.html') return HttpResponseForbidden(template.render(request=request)) return View.dispatch(self, request, *args, **kwargs)
def dispatch(self, request, *args, **kwargs): self.related_fields = self.related_fields or [] self.context_rel = {} getparams = [] self.getparams = '' for related in self.related_fields: pk = self.request.GET.get(related, '') if pk: Classrelated = utils.get_related_class_field( self.model, related) self.context_rel[related] = get_object_or_404(Classrelated, pk=pk) getparams.append("%s=%s" % (related, str(self.context_rel[related].pk))) if getparams: self.getparams = "&".join(getparams) for perm in self.perms: if not self.validate_user_perms(request.user, perm, self.view_type): return HttpResponseForbidden() return View.dispatch(self, request, *args, **kwargs)
def test_type_check(self): """Assert that TemplateLastModified raises an error if not used with a TemplateView""" with pytest.raises(ValueError): TemplateLastModified()(View())
def test_type_check(self): """Assert that RenderedContentEtag raises an error if not used with a TemplateView""" with pytest.raises(ValueError): RenderedContentEtag()(View())
def dispatch(self, request, *args, **kwargs): return View.dispatch(self, request, *args, **kwargs)
def dispatch_to(self, step: View): """Dispatch to a view expected by this pipeline. A subclass may override this if its views take other parameters. """ return step.dispatch(request=self.request, pipeline=self)
def __init__(self, *args, **kwargs): View.__init__(self, *args, **kwargs)
def dispatch_to(self, step: View): return step.dispatch(request=self.request, helper=self)
def __init__(self): """ """ View.__init__(self) self.http_method_names = ['get', 'put', 'delete', 'post']
from django.conf.urls import include, url from django.views import View from django.views.generic.base import RedirectView import directory_components.views admin_urls = [ url(r"^thing/$", RedirectView.as_view(url='/login/'), name='thing'), ] urlpatterns = [ url( r'^$', View.as_view(), name='index', ), url(r'^admin/', include(admin_urls, namespace='admin', app_name='admin')), url(r"^robots\.txt$", directory_components.views.RobotsView.as_view(), name='robots'), url(r"^sitemap\.txt$", View.as_view(), name='sitemap'), url(r"^some/path/$", View.as_view(), name='some-path'), url(r'^i18n/', include('django.conf.urls.i18n')), ]
from django.shortcuts import render from django.views import View class {{ camel_case_project_name }}View(View): template_name = '{{ project_name }}/{{ project_name }}.html' page_title = '{{ camel_case_project_name }}' def get(self, request): context = { 'project_name': '{{ project_name }}', 'page_title': self.page_title, } return render(request, self.template_name, context=context)
from django.contrib import admin from django.http import HttpResponse from django.urls import path from django.views import View class DockerApp1View(View): http_method_names = ['get'] def get(self, request): """ This is DockerApp1's example View Khai, 25.06.2019 """ print("LOL?") return HttpResponse("DockerApp1 Greets You") urlpatterns = [ path('admin/', admin.site.urls), path('dockerapp1/views/test/', View.as_view()) ]
import great_components.views import demo.views admin_urls = [ url( r"^thing/$", RedirectView.as_view(url='/login/'), name='thing' ), ] urlpatterns = [ url( r'^$', View.as_view(), name='index', ), url(r'^admin/', include(admin_urls)), url( r"^robots\.txt$", great_components.views.RobotsView.as_view(), name='robots' ), url( r'^404/$', demo.views.Trigger404View.as_view(), name='404', ), url( r'^500/$',
from django.conf.urls import url from django.views import View urlpatterns = [ url(r'^$', View.as_view(), name="indexpage"), ]
1. Import the include() function: from django.urls import include, path 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.contrib import admin from django.urls import path, include from django.views import View from rest_framework_simplejwt.views import TokenRefreshView api_auth_urlpatterns = [ path("social/", include("social.urls", namespace="social")), path("", include("rest_auth.urls")), path("token/refresh/", TokenRefreshView.as_view(), name="token-refresh"), ] api_urlpatterns = [ path("auth/", include((api_auth_urlpatterns, "backend"), namespace="auth")), ] urlpatterns = [ path("admin/", admin.site.urls), # API urls path("", include((api_urlpatterns, "backend-auth"), namespace="api")), path("connection_error/", View.as_view(), name="socialaccount_connections"), path("", include("django_prometheus.urls")), ]