mirror of
https://github.com/nvbn/thefuck.git
synced 2024-10-06 10:51:11 +01:00
8bd6c5da67
`man` without a section searches all sections, so having `foo --help` suggested first makes more sense than adding a specific section. See https://github.com/nvbn/thefuck/pull/562#issuecomment-251142710 However, in cases where multiple sections have man pages for `foo`, running `man foo` could bring up the "wrong" section of man pages. `man read` is an example of this, but that should probably be handled in a way that still suggests `foo --help` first when there are *no* man pages for `foo` in any section. Closes https://github.com/nvbn/thefuck/issues/546
35 lines
1.0 KiB
Python
35 lines
1.0 KiB
Python
import pytest
|
|
from thefuck.rules.man import match, get_new_command
|
|
from tests.utils import Command
|
|
|
|
|
|
@pytest.mark.parametrize('command', [
|
|
Command('man read'),
|
|
Command('man 2 read'),
|
|
Command('man 3 read'),
|
|
Command('man -s2 read'),
|
|
Command('man -s3 read'),
|
|
Command('man -s 2 read'),
|
|
Command('man -s 3 read')])
|
|
def test_match(command):
|
|
assert match(command)
|
|
|
|
|
|
@pytest.mark.parametrize('command', [
|
|
Command('man'),
|
|
Command('man ')])
|
|
def test_not_match(command):
|
|
assert not match(command)
|
|
|
|
|
|
@pytest.mark.parametrize('command, new_command', [
|
|
(Command('man read'), ['read --help', 'man 3 read', 'man 2 read']),
|
|
(Command('man 2 read'), 'man 3 read'),
|
|
(Command('man 3 read'), 'man 2 read'),
|
|
(Command('man -s2 read'), 'man -s3 read'),
|
|
(Command('man -s3 read'), 'man -s2 read'),
|
|
(Command('man -s 2 read'), 'man -s 3 read'),
|
|
(Command('man -s 3 read'), 'man -s 2 read')])
|
|
def test_get_new_command(command, new_command):
|
|
assert get_new_command(command) == new_command
|