xonsh/tests/test_tracer.py
Noorhteen Raja NJ c2d25ac251
pre-commit hook for pyupgrade (#4583)
* chore: add pyupgrade

* refactor: upgrade code to py3.7+

ran `pre-commit run pyupgrade -a` while excluding changes to ply

* fix: flake errors
2021-12-06 14:42:26 -05:00

19 lines
660 B
Python

import re
import pytest
from xonsh.procs.specs import cmds_to_specs
from xonsh.tracer import tracermain
def test_tracer_help(capsys, xsh_with_aliases):
"""verify can invoke it, and usage knows about all the options"""
spec = cmds_to_specs([("trace", "-h")], captured="stdout")[0]
with pytest.raises(SystemExit):
tracermain(["-h"], spec=spec)
capout = capsys.readouterr().out
pat = re.compile(r"^usage:\s*trace[^\n]*{([\w,-]+)}", re.MULTILINE)
m = pat.match(capout)
assert m[1]
verbs = {v.strip().lower() for v in m[1].split(",")}
assert verbs == {"rm", "start", "add", "on", "off", "del", "color", "stop", "ls"}