diff options
author | Richard Jones <r1chardj0n3s@gmail.com> | 2015-04-29 12:56:20 +1000 |
---|---|---|
committer | Richard Jones <r1chardj0n3s@gmail.com> | 2015-04-29 13:19:43 +1000 |
commit | bd8b2ae8bf21b9c4f671d9364cdc41fbced9b214 (patch) | |
tree | 34df2ae74cdadb730b5df42cc557a87dbd383cbe | |
parent | 7e0b4021e0d14e451509ca80fe9d1f0c4f8ff9e0 (diff) | |
download | django-pyscss-bd8b2ae8bf21b9c4f671d9364cdc41fbced9b214.tar.gz |
Retain the imported file path
Fixes #34
-rw-r--r-- | django_pyscss/extension/django.py | 2 | ||||
-rw-r--r-- | testproject/testproject/static/css/_baz.scss | 2 | ||||
-rw-r--r-- | testproject/testproject/static/css/sub/_spam.scss | 3 | ||||
-rw-r--r-- | tests/test_scss.py | 5 |
4 files changed, 12 insertions, 0 deletions
diff --git a/django_pyscss/extension/django.py b/django_pyscss/extension/django.py index c127270..c388940 100644 --- a/django_pyscss/extension/django.py +++ b/django_pyscss/extension/django.py @@ -29,6 +29,8 @@ class DjangoExtension(CoreExtension): search_path = original_path.relative_to('/').parent elif rule.source_file.origin: search_path = rule.source_file.origin + if original_path.parent: + search_path = search_path / original_path.parent else: search_path = original_path.parent diff --git a/testproject/testproject/static/css/_baz.scss b/testproject/testproject/static/css/_baz.scss index 552bcaf..9dfa46c 100644 --- a/testproject/testproject/static/css/_baz.scss +++ b/testproject/testproject/static/css/_baz.scss @@ -1,3 +1,5 @@ .baz { color: #123456; } + +@import "sub/spam"; diff --git a/testproject/testproject/static/css/sub/_spam.scss b/testproject/testproject/static/css/sub/_spam.scss new file mode 100644 index 0000000..a391ffe --- /dev/null +++ b/testproject/testproject/static/css/sub/_spam.scss @@ -0,0 +1,3 @@ +small { + font-size: 11px; +} diff --git a/tests/test_scss.py b/tests/test_scss.py index 260c8d7..f76b3e7 100644 --- a/tests/test_scss.py +++ b/tests/test_scss.py @@ -32,6 +32,11 @@ with open(os.path.join(settings.BASE_DIR, 'testproject', 'static', 'css', 'css_f with open(os.path.join(settings.BASE_DIR, 'testproject', 'static', 'css', '_baz.scss')) as f: BAZ_CONTENTS = f.read() +with open(os.path.join(settings.BASE_DIR, 'testproject', 'static', 'css', 'sub', '_spam.scss')) as f: + SPAM_CONTENTS = f.read() + +BAZ_CONTENTS = BAZ_CONTENTS.replace('@import "sub/spam";', SPAM_CONTENTS) + with open(os.path.join(settings.BASE_DIR, 'testproject', 'static', 'css', 'path_conflict.scss')) as f: PATH_CONFLICT_CONTENTS = f.read() |