xonsh/tests/test_man.py

42 lines
1,003 B
Python
Raw Normal View History

# -*- coding: utf-8 -*-
2015-06-17 22:58:05 +02:00
import os
2016-06-04 16:07:03 -04:00
import tempfile
2015-06-17 22:58:05 +02:00
import nose
from nose.tools import assert_true
2015-06-19 14:40:11 +03:00
from nose.plugins.skip import SkipTest
2015-06-17 22:58:05 +02:00
2015-06-19 14:40:11 +03:00
from xonsh.tools import ON_WINDOWS
2016-05-28 22:12:21 -04:00
from xonsh.completers.man import complete_from_man
2015-06-17 22:58:05 +02:00
from tools import mock_xonsh_env
2015-08-02 16:14:56 -05:00
2015-06-19 14:40:11 +03:00
_OLD_MANPATH = None
def setup():
global _OLD_MANPATH
_OLD_MANPATH = os.environ.get('MANPATH', None)
os.environ['MANPATH'] = os.path.dirname(os.path.abspath(__file__))
def teardown():
global _OLD_MANPATH
if _OLD_MANPATH is None:
del os.environ['MANPATH']
else:
os.environ['MANPATH'] = _OLD_MANPATH
2015-06-17 22:58:05 +02:00
def test_man_completion():
2015-06-19 14:40:11 +03:00
if ON_WINDOWS:
raise SkipTest
2016-06-04 16:07:03 -04:00
with tempfile.TemporaryDirectory() as tempdir:
with mock_xonsh_env({'XONSH_DATA_DIR': tempdir}):
completions = complete_from_man('--', 'yes --', 4, 6, __xonsh_env__)
assert_true('--version' in completions)
assert_true('--help' in completions)
2015-06-17 22:58:05 +02:00
if __name__ == '__main__':
nose.runmodule()