aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pykss/contrib/django/views.py8
-rw-r--r--tests/test_contrib/test_django/test_views.py18
2 files changed, 22 insertions, 4 deletions
diff --git a/pykss/contrib/django/views.py b/pykss/contrib/django/views.py
index 853bfc2..00695f4 100644
--- a/pykss/contrib/django/views.py
+++ b/pykss/contrib/django/views.py
@@ -1,17 +1,17 @@
from django.conf import settings
-from django.views.generic.base import TemplateView
+from django.views.generic.base import ContextMixin, TemplateView
import pykss
-class StyleGuideMixin(object):
+class StyleGuideMixin(ContextMixin):
- def get_styleguid(self):
+ def get_styleguide(self):
dirs = getattr(settings, 'PYKSS_DIRS', [])
return pykss.Parser(*dirs)
def get_context_data(self, **kwargs):
- context = {'styleguide': self.get_styleguid()}
+ context = {'styleguide': self.get_styleguide()}
context.update(kwargs)
return super(StyleGuideMixin, self).get_context_data(**context)
diff --git a/tests/test_contrib/test_django/test_views.py b/tests/test_contrib/test_django/test_views.py
new file mode 100644
index 0000000..b47ce20
--- /dev/null
+++ b/tests/test_contrib/test_django/test_views.py
@@ -0,0 +1,18 @@
+import os
+
+from django.conf import settings
+from django.test import TestCase
+
+from pykss.contrib.django.views import StyleGuideMixin
+
+
+class StyleGuideMixinTestCase(TestCase):
+
+ def test_get_styleguide_get_dirs_from_settings(self):
+ css = os.path.join(settings.PROJECT_ROOT, 'tests', 'fixtures', 'css')
+ with self.settings(PYKSS_DIRS=[css]):
+ styleguide = StyleGuideMixin().get_styleguide()
+ self.assertEqual(styleguide.section('2.1.1').description, 'Your standard form button.')
+
+ def test_get_context_data_adds_sytleguide_to_context(self):
+ self.assertIn('styleguide', StyleGuideMixin().get_context_data())