def test_err(capsys): get_facade() cmd = RenameCommand('rename NOTHING "a" "b"') assert cmd.command_tokens == ["rename", "NOTHING", '"a"', '"b"'] cmd.execute() captured = capsys.readouterr() assert "[ERROR]\tUnknown unit type: 'NOTHING'." in captured.out cmd = RenameCommand("a") cmd.execute() captured = capsys.readouterr() assert "[ERROR]\tMissing some arguments\n\tUsage: " + \ 'rename <unit-type> "<old-name>" "<new-name>"' in captured.out cmd = RenameCommand('rename alias "a" "b"') cmd.execute() captured = capsys.readouterr() assert "[ERROR]\tCouldn't find a unit named 'a'." in captured.out cmd = RenameCommand('rename alias "can you" ""') cmd.execute() captured = capsys.readouterr() assert "[ERROR]\tAn empty name is not a valid alias name." in captured.out cmd = RenameCommand('rename alias "can you" "tell me"') cmd.execute() captured = capsys.readouterr() assert "[ERROR]\tAlias 'tell me' is already in use." in captured.out
def test_variations(capsys): cmd = ExistCommand('exist alias "var#one"') assert cmd.command_tokens == ["exist", "alias", '"var#one"'] facade = get_facade() cmd.execute() captured = capsys.readouterr() assert "alias 'var'\nNo modifiers\n2 variation(s):" in captured.out assert "\t- one\n" in captured.out assert "\t- two with space\n" in captured.out assert "Variation 'one' is defined for this alias." in captured.out cmd = ExistCommand('exist ~ "var#two with space"') assert cmd.command_tokens == ["exist", "~", '"var#two with space"'] facade = get_facade() cmd.execute() captured = capsys.readouterr() assert "alias 'var'\nNo modifiers\n2 variation(s):" in captured.out assert "\t- two with space\n" in captured.out assert "\t- one\n" in captured.out assert "Variation 'two with space' is defined for this alias." in captured.out cmd = ExistCommand('exist alias "var#no var"') assert cmd.command_tokens == ["exist", "alias", '"var#no var"'] facade = get_facade() cmd.execute() captured = capsys.readouterr() assert "alias 'var'\nNo modifiers\n2 variation(s):" in captured.out assert "Variation 'no var' is not defined for this alias." in captured.out
def test_variation(capsys): cmd = ShowCommand('show alias "var#one"') assert cmd.command_tokens == ["show", "alias", '"var#one"'] facade = get_facade() cmd.execute(facade) captured = capsys.readouterr() assert "alias: 'var'\nmodifiers:\n\tNone\n2 variations:\n" in captured.out assert "\t- one\n" in captured.out assert "\t- two with space\n" in captured.out assert "Rules for variation 'one':\n\tone" in captured.out cmd = ShowCommand('show alias "var#two with space"') assert cmd.command_tokens == ["show", "alias", '"var#two with space"'] facade = get_facade() cmd.execute(facade) captured = capsys.readouterr() assert "alias: 'var'\nmodifiers:\n\tNone\n2 variations:\n" in captured.out assert "\t- two with space\n" in captured.out assert "\t- one\n" in captured.out assert "Rules for variation 'two with space':\n\ttwo\n\t2" in captured.out cmd = ShowCommand('show alias "var#no var"') assert cmd.command_tokens == ["show", "alias", '"var#no var"'] facade = get_facade() cmd.execute(facade) captured = capsys.readouterr() assert "alias: 'var'\nmodifiers:\n\tNone\n2 variations:\n" in captured.out assert "[ERROR]\tVariation 'no var' is not defined in alias var." in captured.out
def test_err(capsys): cmd = ExistCommand("nothing") assert cmd.command_tokens == ["nothing"] cmd.execute(get_facade()) captured = capsys.readouterr() assert "[ERROR]\tMissing some arguments\n\tUsage: " + \ 'exist <unit-type> "<unit-name>"' in captured.out
def test_execute(capsys): cmd = ShowCommand('show alias "sorry"') assert cmd.command_tokens == ["show", "alias", '"sorry"'] facade = get_facade() cmd.execute(facade) captured = capsys.readouterr() assert "alias: 'sorry'\nmodifiers:\n\tNone\n0 variations" in captured.out cmd = ShowCommand('show ~ /o/g') assert cmd.command_tokens == ["show", "~", "/o/g"] cmd.execute(facade) captured = capsys.readouterr() assert "alias: 'can you'\nmodifiers:\n\tNone\n0 variations" in captured.out assert "alias: 'sorry'\nmodifiers:\n\tNone\n0 variations" in captured.out assert "Rules:" in captured.out cmd = ShowCommand('show slot "INEXISTANT"') assert cmd.command_tokens == ["show", "slot", '"INEXISTANT"'] cmd.execute(facade) captured = capsys.readouterr() assert "Slot 'INEXISTANT' is not defined." in captured.out cmd = ShowCommand('show ~ "lots of rules"') assert cmd.command_tokens == ["show", "~", '"lots of rules"'] cmd.execute(facade) captured = capsys.readouterr() assert "alias: 'lots of rules'\nmodifiers:\n\tNone\n0 variations" in captured.out assert "rule 0" in captured.out assert "rule 11" in captured.out assert "rule 12" not in captured.out
def test_execute(capsys): cmd = StatsCommand('stats') assert cmd.command_tokens == ["stats"] facade = get_facade() cmd.execute(facade) captured = capsys.readouterr() assert "Statistics:\n\t1 files parsed\n\t9 declarations: " + \ "1 intents, 2 slots and 6 aliases\n\t25 rules" in captured.out
def test_execute(capsys): cmd = ExistCommand('exist alias "sorry"') assert cmd.command_tokens == ["exist", "alias", '"sorry"'] get_facade() cmd.execute() captured = capsys.readouterr() assert "alias 'sorry'\nNo modifiers\n0 variation(s)" in captured.out cmd = ExistCommand('exist ~ /o/g') assert cmd.command_tokens == ["exist", "~", "/o/g"] cmd.execute() captured = capsys.readouterr() assert "alias 'can you'\nNo modifiers\n0 variation(s)" in captured.out assert "alias 'sorry'\nNo modifiers\n0 variation(s)" in captured.out cmd = ExistCommand('exist slot "INEXISTANT"') assert cmd.command_tokens == ["exist", "slot", '"INEXISTANT"'] cmd.execute() captured = capsys.readouterr() assert "Slot 'INEXISTANT' is not defined." in captured.out