diff options
| -rw-r--r-- | pykss/comment.py | 3 | ||||
| -rw-r--r-- | tests/fixtures/comments.txt | 6 | ||||
| -rw-r--r-- | tests/test_comment.py | 5 | 
3 files changed, 13 insertions, 1 deletions
| diff --git a/pykss/comment.py b/pykss/comment.py index e416e4b..20d4e63 100644 --- a/pykss/comment.py +++ b/pykss/comment.py @@ -1,3 +1,4 @@ +import codecs  import re @@ -63,7 +64,7 @@ class CommentParser(object):          inside_single_line_block = False          inside_multi_line_block = False -        with open(self.filename) as fileobj: +        with codecs.open(self.filename, 'r', 'utf-8') as fileobj:              for line in fileobj:                  # Parse single-line style                  if is_single_line_comment(line): diff --git a/tests/fixtures/comments.txt b/tests/fixtures/comments.txt index 885887c..389ff6d 100644 --- a/tests/fixtures/comments.txt +++ b/tests/fixtures/comments.txt @@ -40,3 +40,9 @@ Comment with example:   *     <div></div>   * </div>   */ + + +Comment with non ASCII: + +/* Hello, 世界 + */ diff --git a/tests/test_comment.py b/tests/test_comment.py index e1e94c6..81824eb 100644 --- a/tests/test_comment.py +++ b/tests/test_comment.py @@ -1,3 +1,5 @@ +# -*- coding: utf-8 -*- +  import os  import unittest @@ -73,3 +75,6 @@ This comment has a indented example  </div>          """          self.assertTrue(expected.strip() in self.comments) + +    def test_handles_unicode_in_comments(self): +        self.assertTrue(u'Hello, 世界' in self.comments) | 
