diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/conftest.py | 34 | ||||
-rw-r--r-- | tests/test_escape.py | 15 |
2 files changed, 37 insertions, 12 deletions
diff --git a/tests/conftest.py b/tests/conftest.py new file mode 100644 index 0000000..06614cc --- /dev/null +++ b/tests/conftest.py @@ -0,0 +1,34 @@ +import pytest + +from markupsafe import _native + +try: + from markupsafe import _speedups +except ImportError: + _speedups = None + + +@pytest.fixture(scope='session', params=( + _native, + pytest.param(_speedups, marks=pytest.mark.skipif( + _speedups is None, + reason='speedups unavailable', + )) +)) +def _mod(request): + return request.param + + +@pytest.fixture(scope='session') +def escape(_mod): + return _mod.escape + + +@pytest.fixture(scope='session') +def escape_silent(_mod): + return _mod.escape_silent + + +@pytest.fixture(scope='session') +def soft_str(_mod): + return _mod.soft_unicode diff --git a/tests/test_escape.py b/tests/test_escape.py index cfadd62..337cd19 100644 --- a/tests/test_escape.py +++ b/tests/test_escape.py @@ -1,12 +1,8 @@ # -*- coding: utf-8 -*- import pytest -from markupsafe import Markup, _native +from markupsafe import Markup -try: - from markupsafe import _speedups -except ImportError: - _speedups = None @pytest.mark.parametrize(('value', 'expect'), ( # empty @@ -25,10 +21,5 @@ except ImportError: (u'&><\'"\U0001F37A xyz', u'&><'"\U0001F37A xyz'), (u'\U0001F363\U0001F362&><\'"', u'\U0001F363\U0001F362&><'"'), )) -@pytest.mark.parametrize('mod', ( - _native, - pytest.param(_speedups, marks=pytest.mark.skipif( - _speedups is None, reason='speedups unavailable')), -)) -def test_escape(mod, value, expect): - assert mod.escape(value) == Markup(expect) +def test_escape(escape, value, expect): + assert escape(value) == Markup(expect) |