diff options
-rw-r--r-- | markupsafe/__init__.py | 6 | ||||
-rw-r--r-- | markupsafe/tests.py | 14 |
2 files changed, 17 insertions, 3 deletions
diff --git a/markupsafe/__init__.py b/markupsafe/__init__.py index ea67117..a6e744a 100644 --- a/markupsafe/__init__.py +++ b/markupsafe/__init__.py @@ -108,15 +108,15 @@ class Markup(text_type): join.__doc__ = text_type.join.__doc__ def split(self, *args, **kwargs): - return map(self.__class__, text_type.split(self, *args, **kwargs)) + return list(map(self.__class__, text_type.split(self, *args, **kwargs))) split.__doc__ = text_type.split.__doc__ def rsplit(self, *args, **kwargs): - return map(self.__class__, text_type.rsplit(self, *args, **kwargs)) + return list(map(self.__class__, text_type.rsplit(self, *args, **kwargs))) rsplit.__doc__ = text_type.rsplit.__doc__ def splitlines(self, *args, **kwargs): - return map(self.__class__, text_type.splitlines(self, *args, **kwargs)) + return list(map(self.__class__, text_type.splitlines(self, *args, **kwargs))) splitlines.__doc__ = text_type.splitlines.__doc__ def unescape(self): diff --git a/markupsafe/tests.py b/markupsafe/tests.py index 8effae0..703cfa6 100644 --- a/markupsafe/tests.py +++ b/markupsafe/tests.py @@ -75,6 +75,20 @@ class MarkupTestCase(unittest.TestCase): assert escape(None) == Markup(None) assert escape_silent('<foo>') == Markup(u'<foo>') + def test_splitting(self): + self.assertEqual(Markup('a b').split(), [ + Markup('a'), + Markup('b') + ]) + self.assertEqual(Markup('a b').rsplit(), [ + Markup('a'), + Markup('b') + ]) + self.assertEqual(Markup('a\nb').splitlines(), [ + Markup('a'), + Markup('b') + ]) + class MarkupLeakTestCase(unittest.TestCase): |