1
0
mirror of https://github.com/nvbn/thefuck.git synced 2025-01-19 04:21:14 +00:00
thefuck/tests/rules/test_ln_no_hard_link.py

38 lines
1.2 KiB
Python
Raw Normal View History

2016-03-02 23:19:22 +01:00
# -*- coding: utf-8 -*-
2016-03-04 00:20:33 +03:00
import pytest
2016-03-02 17:48:20 +01:00
from thefuck.rules.ln_no_hard_link import match, get_new_command
from tests.utils import Command
2016-03-04 00:20:33 +03:00
error = "hard link not allowed for directory"
@pytest.mark.parametrize('script, stderr', [
("ln barDir barLink", "ln: barDir: {}"),
("sudo ln a b", "ln: a: {}"),
("sudo ln -nbi a b", "ln: a: {}")])
def test_match(script, stderr):
command = Command(script, stderr=stderr.format(error))
assert match(command)
@pytest.mark.parametrize('script, stderr', [
('', ''),
("ln a b", "... hard link"),
("sudo ln a b", "... hard link"),
("a b", error)])
2016-06-28 03:00:00 +03:00
def test_not_match(script, stderr):
2016-03-04 00:20:33 +03:00
command = Command(script, stderr=stderr)
assert not match(command)
@pytest.mark.parametrize('script, result', [
("ln barDir barLink", "ln -s barDir barLink"),
("sudo ln barDir barLink", "sudo ln -s barDir barLink"),
("sudo ln -nbi a b", "sudo ln -s -nbi a b"),
("ln -nbi a b && ls", "ln -s -nbi a b && ls"),
("ln a ln", "ln -s a ln"),
("sudo ln a ln", "sudo ln -s a ln")])
def test_get_new_command(script, result):
command = Command(script)
assert get_new_command(command) == result