File: test_utils_fix_filename.py

package info (click to toggle)
python-pylatex 1.4.2%2Bds-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,044 kB
  • sloc: python: 3,810; sh: 209; makefile: 169; xml: 12
file content (59 lines) | stat: -rw-r--r-- 1,370 bytes parent folder | download
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
#!/usr/bin/env python

import os

from pylatex.utils import fix_filename


def test_no_dots():
    fname = "aaa"
    assert fix_filename(fname) == fname


def test_one_dot():
    fname = "aa.a"
    assert fix_filename(fname) == fname


def test_two_dots():
    fname = "aa.a.a"
    original_os_name = os.name
    try:
        os.name = "posix"
        assert fix_filename(fname) == "{aa.a}.a"
        os.name = "nt"
        assert fix_filename(fname) == "aa.a.a"
    finally:
        os.name = original_os_name


def test_three_dots():
    fname = "abc.def.fgh.ijk"
    assert fix_filename(fname) == "{abc.def.fgh}.ijk"


def test_path_and_three_dots():
    fname = "/auu/bcd/abc.def.fgh.ijk"
    assert fix_filename(fname) == "/auu/bcd/{abc.def.fgh}.ijk"


def test_dots_in_path_none_in_filename():
    fname = "/au.u/b.c.d/abc"
    assert fix_filename(fname) == "/au.u/b.c.d/abc"


def test_dots_in_path_one_in_filename():
    fname = "/au.u/b.c.d/abc.def"
    assert fix_filename(fname) == "/au.u/b.c.d/abc.def"


def test_dots_in_path_and_multiple_in_filename():
    fname = "/au.u/b.c.d/abc.def.fgh.ijk"
    assert fix_filename(fname) == "/au.u/b.c.d/{abc.def.fgh}.ijk"


def test_tilde_in_filename():
    fname = "/etc/local/foo.bar.baz/foo~1/document.pdf"
    assert (
        fix_filename(fname) == "\detokenize{/etc/local/foo.bar.baz/foo~1/document.pdf}"
    )