1234567891011121314151617181920212223242526272829 |
- import pytest
- from markupsafe import Markup
- @pytest.mark.parametrize(
- ("value", "expect"),
- (
- # empty
- ("", ""),
- # ascii
- ("abcd&><'\"efgh", "abcd&><'"efgh"),
- ("&><'\"efgh", "&><'"efgh"),
- ("abcd&><'\"", "abcd&><'""),
- # 2 byte
- ("こんにちは&><'\"こんばんは", "こんにちは&><'"こんばんは"),
- ("&><'\"こんばんは", "&><'"こんばんは"),
- ("こんにちは&><'\"", "こんにちは&><'""),
- # 4 byte
- (
- "\U0001F363\U0001F362&><'\"\U0001F37A xyz",
- "\U0001F363\U0001F362&><'"\U0001F37A xyz",
- ),
- ("&><'\"\U0001F37A xyz", "&><'"\U0001F37A xyz"),
- ("\U0001F363\U0001F362&><'\"", "\U0001F363\U0001F362&><'""),
- ),
- )
- def test_escape(escape, value, expect):
- assert escape(value) == Markup(expect)
|