old_contents: #!/usr/bin/env python
  # -*- coding: utf-8 -*-
  from django.conf import settings
  from django.core.urlresolvers import reverse
  from django.test import TestCase
  
  from django.contrib.sites.models import Site
  
  from usersettings.shortcuts import get_usersettings_model
  
  
  class MiddlewareTest(TestCase):
  
      usersettings_model = get_usersettings_model()
  
      usersettings_data = {
          'site_id': settings.SITE_ID,
          'user_id': 1,
          'site_title': 'Site Title',
          'tag_line': 'Friends don\'t let friends use Drupal',
          'street_address': '1600 Amphitheatre Parkway',
          'address_locality': 'Mountain View',
          'address_region': 'CA',
          'postal_code': '94043',
          'telephone': '+1 650-253-0000',
      }
  
      def setUp(self):
          Site.objects.get_or_create(id=settings.SITE_ID, domain='example.com', name='example.com')
          self.usersettings_model.objects.create(**self.usersettings_data)
  
      def test_context_processors(self):
          """ Test the `usersettings` attribute is available as context in templates """
          resp = self.client.get(reverse('current_usersettings'))
          self.assertEqual(200, resp.status_code)
          self.failUnless(isinstance(resp.context['usersettings'], self.usersettings_model))
  
new_contents: #!/usr/bin/env python
  # -*- coding: utf-8 -*-
  from django.conf import settings
  from django.core.urlresolvers import reverse
  from django.test.utils import override_settings
  from django.test import TestCase
  
  from django.contrib.sites.models import Site
  
  from usersettings.shortcuts import get_usersettings_model
  
  
  class MiddlewareTest(TestCase):
  
      usersettings_model = get_usersettings_model()
  
      usersettings_data = {
          'site_id': settings.SITE_ID,
          'user_id': 1,
          'site_title': 'Site Title',
          'tag_line': 'Friends don\'t let friends use Drupal',
          'street_address': '1600 Amphitheatre Parkway',
          'address_locality': 'Mountain View',
          'address_region': 'CA',
          'postal_code': '94043',
          'telephone': '+1 650-253-0000',
      }
  
      def setUp(self):
          Site.objects.get_or_create(id=settings.SITE_ID, domain='example.com', name='example.com')
          self.usersettings_model.objects.create(**self.usersettings_data)
  
      def test_context_processors(self):
          """ Test the `usersettings` attribute is available as context in templates """
          resp = self.client.get(reverse('current_usersettings'))
          self.assertEqual(200, resp.status_code)
          self.failUnless(isinstance(resp.context['usersettings'], self.usersettings_model))
  
      @override_settings(
          MIDDLEWARE_CLASSES=(
              'django.contrib.sessions.middleware.SessionMiddleware',
              'django.contrib.auth.middleware.AuthenticationMiddleware',
              'django.contrib.messages.middleware.MessageMiddleware',)
      )
      def test_context_processors_without_middleware(self):
          """
              Test usersettings context_processors still works without the custom middleware
          """
          resp = self.client.get(reverse('current_usersettings'))
          self.assertEqual(200, resp.status_code)
          self.failUnless(isinstance(resp.context['usersettings'], self.usersettings_model))
  
subject: Add more tests for custom context_processor