def context_exists(self, context): # Get view from 'layouts' unit test response = self.client.get(reverse('layouts:default_boxed')) try: return response.context[context] is not None except KeyError: return False
def add_active(context, url_pattern, *args, **kwargs): """ Add class ``active`` to sidebar and header navigation links based on comparison of URL pattern with current URL. Based on django-adminlte2 templatetags https://github.com/adamcharnock/django-adminlte2/tree/master/django_adminlte/templatetags. :param context: Current page context :type context: django.template.context.RequestContext :param url_pattern: URL pattern for ``reverse`` matching or raw URL string :type url_pattern: str :param exact_match: Toggle for exact matching, defaults to False :type exact_match: bool, optional :param not_when: Comma-separated values of string patterns that will render comparison as False, defaults to '' :type not_when: str, optional :param args: Positional arguments for ``reverse`` matching :type args: tuple :params kwargs: Keyword arguments for ``reverse`` matching :type kwargs: dict :return: 'active' if comparison is True, else '' :rtype: str """ exact_match = kwargs.pop('exact_match', False) not_when = kwargs.pop('not_when', '').split(',') not_when = [nw.strip() for nw in not_when if nw.strip()] try: path = reverse(url_pattern, args=args, kwargs=kwargs) except NoReverseMatch: path = url_pattern class_attribute = '' current_path = context.request.path if not_when and any(nw in current_path for nw in not_when): pass elif not exact_match and current_path.startswith(path) or exact_match and current_path == path: class_attribute = ' active ' return class_attribute
def get_response_invalid_adjacent_pages(self): return self.client.get(reverse( self.URL_PATTERN_INVALID_ADJACENT_PAGES))
def get_response_child(self): return self.client.get(reverse(self.URL_PATTERN_CHILD))
def get_response_override_page_name(self): return self.client.get(reverse(self.URL_PATTERN_OVERRIDE))
def get_response_invalid_rating(self): return self.client.get(reverse(self.URL_PATTERN_INVALID_RATING))
def get_response_invalid_default(self): return self.client.get(reverse(self.URL_PATTERN_INVALID_DEFAULT))
def get_response_with_auth(self): self.client.login(username=self.USER_USERNAME, password=self.USER_PASSWORD) return self.client.get(reverse(self.URL_PATTERN_INDEX))
def test_default_fixed(self): self.assertTemplateUsed( self.client.get(reverse('layouts:default_fixed')), const.LAYOUT_DEFAULT_FIXED)
def test_default_collapsed(self): self.assertTemplateUsed( self.client.get(reverse('layouts:default_collapsed')), const.LAYOUT_DEFAULT_COLLAPSED)
def test_no_footer_top_nav(self): self.assertTemplateUsed( self.client.get(reverse('layouts:no_footer_top_nav')), const.LAYOUT_NO_FOOTER_TOP_NAV)
def test_no_footer_fixed(self): self.assertTemplateUsed( self.client.get(reverse('layouts:no_footer_fixed')), const.LAYOUT_NO_FOOTER_FIXED)
def test_no_content_header_top_nav(self): self.assertTemplateUsed( self.client.get(reverse('layouts:no_content_header_top_nav')), const.LAYOUT_NO_CONTENT_HEADER_TOP_NAV)
def test_no_content_header_fixed(self): self.assertTemplateUsed( self.client.get(reverse('layouts:no_content_header_fixed')), const.LAYOUT_NO_CONTENT_HEADER_FIXED)
def get_response_invalid_align(self): return self.client.get(reverse(self.URL_PATTERN_INVALID_ALIGN))
def test_no_breadcrumbs_top_nav(self): self.assertTemplateUsed( self.client.get(reverse('layouts:no_breadcrumbs_top_nav')), const.LAYOUT_NO_BREADCRUMBS_TOP_NAV)
def test_no_breadcrumbs_footer_collapsed(self): self.assertTemplateUsed( self.client.get( reverse('layouts:no_breadcrumbs_footer_collapsed')), const.LAYOUT_NO_BREADCRUMBS_FOOTER_COLLAPSED)
def test_default_login(self): self.assertTemplateUsed( self.client.get(reverse('layouts:default_login')), const.LAYOUT_DEFAULT_LOGIN)
def get_response_without_auth(self): return self.client.get(reverse(self.URL_PATTERN_INDEX))
def test_default_register(self): self.assertTemplateUsed( self.client.get(reverse('layouts:default_register')), const.LAYOUT_DEFAULT_REGISTER)
def get_response_invalid_size_min(self): return self.client.get(reverse(self.URL_PATTERN_INVALID_SIZE_MIN))
def test_default_top_nav(self): self.assertTemplateUsed( self.client.get(reverse('layouts:default_top_nav')), const.LAYOUT_DEFAULT_TOP_NAV)
def get_response_list(self, page): return self.client.get( reverse(self.URL_PATTERN_LIST) + '?page=' + str(page))
def test_barebones_collapsed(self): self.assertTemplateUsed( self.client.get(reverse('layouts:barebones_collapsed')), const.LAYOUT_BAREBONES_COLLAPSED)
def test_barebones_fixed(self): self.assertTemplateUsed( self.client.get(reverse('layouts:barebones_fixed')), const.LAYOUT_BAREBONES_FIXED)
def test_barebones_top_nav(self): self.assertTemplateUsed( self.client.get(reverse('layouts:barebones_top_nav')), const.LAYOUT_BAREBONES_TOP_NAV)
def get_response_pk(self, pk): return self.client.get(reverse(self.URL_PATTERN_PK, args=(pk,)))
def test_no_breadcrumbs_fixed(self): self.assertTemplateUsed( self.client.get(reverse('layouts:no_breadcrumbs_fixed')), const.LAYOUT_NO_BREADCRUMBS_FIXED)
def get_response_index(self): return self.client.get(reverse(self.URL_PATTERN_INDEX))
def get_response_page(self, page): return self.client.get( reverse(self.URL_PATTERN_INDEX) + '?page=' + str(page))