def test_non_absolute_error_base_python_dir(venv, capsys):
    ret = virtualenv_tools.main((
        '--base-python-dir=.',
        venv.before.strpath,
    ))
    out, _ = capsys.readouterr()
    assert ret == 1
    assert out == '--base-python-dir must be absolute: .\n'
示例#2
0
def test_move_with_auto(venv, capsys):
    venv.app_before.move(venv.app_after)
    ret = virtualenv_tools.main(('--update-path=auto', venv.after.strpath))
    out, _ = capsys.readouterr()
    expected = 'Updated: {1} ({0} -> {1})\n'.format(venv.before, venv.after)
    assert ret == 0
    assert out == expected
    assert_virtualenv_state(venv.after)
示例#3
0
def test_not_a_virtualenv_missing_versioned_lib_directory(fake_venv, capsys):
    fake_venv.join('lib/python2.7').remove()
    ret = virtualenv_tools.main(('--update-path=auto', fake_venv.strpath))
    out, _ = capsys.readouterr()
    assert ret == 1
    expected = '{} is not a virtualenv: not a directory: {}\n'.format(
        fake_venv,
        fake_venv.join('lib/python#.#'),
    )
    assert out == expected
示例#4
0
def test_not_a_virtualenv_missing_activate_file(fake_venv, capsys):
    fake_venv.join('bin/activate').remove()
    ret = virtualenv_tools.main(('--update-path=auto', fake_venv.strpath))
    out, _ = capsys.readouterr()
    assert ret == 1
    expected = '{} is not a virtualenv: not a file: {}\n'.format(
        fake_venv,
        fake_venv.join('bin/activate'),
    )
    assert out == expected
def test_not_a_virtualenv_missing_bindir(fake_venv, capsys):
    fake_venv.join('bin').remove()
    ret = virtualenv_tools.main((fake_venv.strpath, ))
    out, _ = capsys.readouterr()
    assert ret == 1
    expected = '{} is not a virtualenv: not a directory: {}\n'.format(
        fake_venv,
        fake_venv.join('bin'),
    )
    assert out == expected
def test_not_a_virtualenv_missing_site_packages(fake_venv, capsys):
    fake_venv.join('lib/python2.7/site-packages').remove()
    ret = virtualenv_tools.main((fake_venv.strpath, ))
    out, _ = capsys.readouterr()
    assert ret == 1
    expected = '{} is not a virtualenv: not a directory: {}\n'.format(
        fake_venv,
        fake_venv.join('lib/python2.7/site-packages'),
    )
    assert out == expected
def test_move_with_venv(venv, capsys):
    assert_virtualenv_state(venv.before)
    os.environ['WORKON_HOME'] = venv.app_after.strpath
    venv.app_before.move(venv.app_after)
    ret = virtualenv_tools.main(('venv', ))
    out, _ = capsys.readouterr()
    expected = 'Updated: {0} ({0} -> {1})\n'.format(venv.before, venv.after)
    assert ret == 0
    assert out == expected
    assert_virtualenv_state(venv.after)
def test_move_with_pyvencfg(venv, capsys):
    assert_virtualenv_state(venv.before)
    venv.app_before.move(venv.app_after)
    ret = virtualenv_tools.main((
        '--base-python-dir=/usr/bin/python',
        venv.after.strpath,
    ))
    pyvenv = venv.after.join('pyvenv.cfg')
    pyvenv_content = pyvenv.readlines()
    expected = 'home = /usr/bin/python\n'
    assert ret == 0
    assert pyvenv_content[0] == expected
    assert_virtualenv_state(venv.after)
示例#9
0
def test_help(capsys, helpargs):
    with pytest.raises(SystemExit):
        virtualenv_tools.main(helpargs)
    out, err = capsys.readouterr()
    assert 'usage: ' in out + err
示例#10
0
def run(before, after, args=()):
    ret = virtualenv_tools.main(
        (before.strpath, '--update-path={}'.format(after.strpath)) + args, )
    assert ret == 0
示例#11
0
def test_non_absolute_error(capsys):
    ret = virtualenv_tools.main(('--update-path', 'notabs'))
    out, _ = capsys.readouterr()
    assert ret == 1
    assert out == '--update-path must be absolute: notabs\n'
def test_main_nux(capsys):
    ret = virtualenv_tools.main(('--main', ))
    out, _ = capsys.readouterr()
    assert ret == 0
    assert out == "On *nux, Python installation is not hardcoded in binaries\n"