import pytest
from thefuck.rules.systemctl import match, get_new_command
from tests.utils import Command


def test_match():
    assert match(Command('systemctl nginx start', stderr='Unknown operation \'nginx\'.'), None)
    assert match(Command('sudo systemctl nginx start', stderr='Unknown operation \'nginx\'.'), None)
    assert not match(Command('systemctl start nginx'), None)
    assert not match(Command('systemctl start nginx'), None)
    assert not match(Command('sudo systemctl nginx', stderr='Unknown operation \'nginx\'.'), None)
    assert not match(Command('systemctl nginx', stderr='Unknown operation \'nginx\'.'), None)
    assert not match(Command('systemctl start wtf', stderr='Failed to start wtf.service: Unit wtf.service failed to load: No such file or directory.'), None)


def test_get_new_command():
    assert get_new_command(Command('systemctl nginx start'), None) == "systemctl start nginx"
    assert get_new_command(Command('sudo systemctl nginx start'), None) == "sudo systemctl start nginx"