summaryrefslogtreecommitdiffstats
path: root/_test/test_a_dedent.py
blob: 23729f06b7dd10e04864c64f8882281e604e920f (plain)
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
# coding: utf-8

from .roundtrip import dedent


class TestDedent:
    def test_start_newline(self):
        # fmt: off
        x = dedent("""
        123
          456
        """)
        # fmt: on
        assert x == '123\n  456\n'

    def test_start_space_newline(self):
        # special construct to prevent stripping of following whitespace
        # fmt: off
        x = dedent("   " """
        123
        """)
        # fmt: on
        assert x == '123\n'

    def test_start_no_newline(self):
        # special construct to prevent stripping of following whitespac
        x = dedent(
            """\
        123
          456
        """
        )
        assert x == '123\n  456\n'

    def test_preserve_no_newline_at_end(self):
        x = dedent(
            """
        123"""
        )
        assert x == '123'

    def test_preserve_no_newline_at_all(self):
        x = dedent(
            """\
        123"""
        )
        assert x == '123'

    def test_multiple_dedent(self):
        x = dedent(
            dedent(
                """
        123
        """
            )
        )
        assert x == '123\n'