File: test_legacy_slugs.py

package info (click to toggle)
pymdown-extensions 10.13-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 7,104 kB
  • sloc: python: 60,117; javascript: 846; sh: 8; makefile: 5
file content (126 lines) | stat: -rw-r--r-- 3,824 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
"""Test slugs."""
from .. import util
import pytest
from pymdownx import slugs


class TestUslugify(util.MdCase):
    """Test Unicode slugs."""

    extension = ['markdown.extensions.toc']
    extension_configs = {
        'markdown.extensions.toc': {
            "slugify": slugs.uslugify
        }
    }

    def test_slug(self):
        """Test the slug output."""
        with pytest.warns(DeprecationWarning):
            self.check_markdown(
                r'# Testing unicode-slugs_headers ±♠Ωℑ',
                r'<h1 id="testing-unicode-slugs_headers-ωℑ">Testing unicode-slugs_headers ±♠Ωℑ</h1>'
            )


class TestUslugifyEncoded(util.MdCase):
    """Test Unicode encoded slugs."""

    extension = ['markdown.extensions.toc']
    extension_configs = {
        'markdown.extensions.toc': {
            "slugify": slugs.uslugify_encoded
        }
    }

    def test_slug(self):
        """Test the slug output."""

        with pytest.warns(DeprecationWarning):
            self.check_markdown(
                r'# Testing unicode-slugs_headers ±♠Ωℑ with encoding',
                r'<h1 id="testing-unicode-slugs_headers-%CF%89%E2%84%91-with-encoding">'
                'Testing unicode-slugs_headers ±♠Ωℑ with encoding</h1>'
            )


class TestUslugifyCased(util.MdCase):
    """Test Unicode cased slugs."""

    extension = ['markdown.extensions.toc']
    extension_configs = {
        'markdown.extensions.toc': {
            "slugify": slugs.uslugify_cased
        }
    }

    def test_slug(self):
        """Test the slug output."""

        with pytest.warns(DeprecationWarning):
            self.check_markdown(
                r'# Testing cased unicode-slugs_headers ±♠Ωℑ',
                r'<h1 id="Testing-cased-unicode-slugs_headers-Ωℑ">Testing cased unicode-slugs_headers ±♠Ωℑ</h1>'
            )


class TestUslugifyCasedEncoded(util.MdCase):
    """Test Unicode cased, encoded slugs."""

    extension = ['markdown.extensions.toc']
    extension_configs = {
        'markdown.extensions.toc': {
            "slugify": slugs.uslugify_cased_encoded
        }
    }

    def test_slug(self):
        """Test the slug output."""

        with pytest.warns(DeprecationWarning):
            self.check_markdown(
                r'# Testing cased unicode-slugs_headers ±♠Ωℑ with encoding',
                r'<h1 id="Testing-cased-unicode-slugs_headers-%CE%A9%E2%84%91-with-encoding">'
                'Testing cased unicode-slugs_headers ±♠Ωℑ with encoding</h1>'
            )


class TestGFM(util.MdCase):
    """Test GitHub Flavored Markdown style slugs."""

    extension = ['markdown.extensions.toc']
    extension_configs = {
        'markdown.extensions.toc': {
            "slugify": slugs.gfm
        }
    }

    def test_slug(self):
        """Test the slug output."""

        with pytest.warns(DeprecationWarning):
            self.check_markdown(
                r'# Testing GFM unicode-slugs_headers ±♠Ωℑ',
                r'<h1 id="testing-gfm-unicode-slugs_headers-Ωℑ">Testing GFM unicode-slugs_headers ±♠Ωℑ</h1>'
            )


class TestGFMEncoded(util.MdCase):
    """Test encoded GitHub Flavored Markdown style slugs."""

    extension = ['markdown.extensions.toc']
    extension_configs = {
        'markdown.extensions.toc': {
            "slugify": slugs.gfm_encoded
        }
    }

    def test_slug(self):
        """Test the slug output."""

        with pytest.warns(DeprecationWarning):
            self.check_markdown(
                r'# Testing GFM unicode-slugs_headers ±♠Ωℑ with encoding',
                r'<h1 id="testing-gfm-unicode-slugs_headers-%CE%A9%E2%84%91-with-encoding">'
                r'Testing GFM unicode-slugs_headers ±♠Ωℑ with encoding</h1>'
            )