File: check_symlinks_test.py

package info (click to toggle)
pre-commit-hooks 5.0.0%2Bdfsg-5
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 540 kB
  • sloc: python: 3,873; xml: 4; makefile: 2
file content (25 lines) | stat: -rw-r--r-- 627 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
from __future__ import annotations

import os

import pytest

from pre_commit_hooks.check_symlinks import main


xfail_symlink = pytest.mark.xfail(os.name == 'nt', reason='No symlink support')


@xfail_symlink
@pytest.mark.parametrize(
    ('dest', 'expected'), (('exists', 0), ('does-not-exist', 1)),
)
def test_main(tmpdir, dest, expected):  # pragma: no cover (symlinks)
    tmpdir.join('exists').ensure()
    symlink = tmpdir.join('symlink')
    symlink.mksymlinkto(tmpdir.join(dest))
    assert main((str(symlink),)) == expected


def test_main_normal_file(tmpdir):
    assert main((str(tmpdir.join('f').ensure()),)) == 0