# Path: venv_update.py
# DEFAULT_VIRTUALENV_PATH = 'venv'
# DEFAULT_OPTION_VALUES = {
#     'venv=': (DEFAULT_VIRTUALENV_PATH,),
#     'install=': ('-r', 'requirements.txt',),
#     'pip-command=': ('pip-faster', 'install', '--upgrade', '--prune'),
#     'bootstrap-deps=': ('venv-update==' + __version__,),
# }
# def parseargs(argv):
# def timid_relpath(arg):
# def shellescape(args):
# def colorize(cmd):
# def run(cmd):
# def info(msg):
# def check_output(cmd):
# def samefile(file1, file2):
# def exec_(argv):  # never returns
#     def __init__(self):
# def exec_scratch_virtualenv(args):
# def get_original_path(venv_path):  # TODO-TEST: a unit test
# def get_python_version(interpreter):
# def invalid_virtualenv_reason(venv_path, source_python, destination_python, virtualenv_system_site_packages):
# def ensure_virtualenv(args, return_values):
# def wait_for_all_subprocesses():
# def touch(filename, timestamp):
# def mark_venv_valid(venv_path):
# def mark_venv_invalid(venv_path):
# def dotpy(filename):
# def venv_executable(venv_path, executable):
# def venv_python(venv_path):
# def user_cache_dir():
# def venv_update(
#         venv=DEFAULT_OPTION_VALUES['venv='],
#         install=DEFAULT_OPTION_VALUES['install='],
#         pip_command=DEFAULT_OPTION_VALUES['pip-command='],
#         bootstrap_deps=DEFAULT_OPTION_VALUES['bootstrap-deps='],
# ):
# def execfile_(filename):
# def pip_faster(venv_path, pip_command, install, bootstrap_deps):
# def raise_on_failure(mainfunc, ignore_return=False):
# def main():
# class Scratch(object):
#     class return_values(object):


import re
import sys
import pytest
        import virtualenv
    import virtualenv
from subprocess import CalledProcessError
from py._path.local import LocalPath as Path
from testing import cached_wheels
from testing import enable_coverage
from testing import install_coverage
from testing import OtherPython
from testing import pip_freeze
from testing import requirements
from testing import run
from testing import strip_coverage_warnings
from testing import strip_pip_warnings
from testing import TOP
from testing import uncolor
from testing import venv_update
from venv_update import __version__
    from os import environ
    from subprocess import Popen
    from os import close
    from testing.capture_subprocess import read_all
    from os import openpty
    from testing.capture_subprocess import pty_normalize_newlines
    from os import pipe




@pytest.mark.usefixtures('pypi_server')
def test_trivial(tmpdir):
    tmpdir.chdir()
    requirements('')
    enable_coverage()
    venv_update()
    # Originally suggested by none other than @bukzor in:
    # https://github.com/pypa/virtualenv/issues/118
    # This directory now just causes problems (especially with relocating)
    # since the debian issue has been fixed.
    assert not tmpdir.join('venv', 'local').exists()


@pytest.mark.usefixtures('pypi_server_with_fallback')
def test_install_custom_path_and_requirements(tmpdir):
    """Show that we can install to a custom directory with a custom
    requirements file."""
    tmpdir.chdir()
    requirements(
        'mccabe==0.6.0\n',
        path='requirements2.txt',
    )
    enable_coverage()
    venv_update('venv=', 'venv2', 'install=', '-r', 'requirements2.txt')
    assert pip_freeze('venv2') == '\n'.join((
        'mccabe==0.6.0',

# Path: venv_update.py
# DEFAULT_VIRTUALENV_PATH = 'venv'
# DEFAULT_OPTION_VALUES = {
#     'venv=': (DEFAULT_VIRTUALENV_PATH,),
#     'install=': ('-r', 'requirements.txt',),
#     'pip-command=': ('pip-faster', 'install', '--upgrade', '--prune'),
#     'bootstrap-deps=': ('venv-update==' + __version__,),
# }
# def parseargs(argv):
# def timid_relpath(arg):
# def shellescape(args):
# def colorize(cmd):
# def run(cmd):
# def info(msg):
# def check_output(cmd):
# def samefile(file1, file2):
# def exec_(argv):  # never returns
#     def __init__(self):
# def exec_scratch_virtualenv(args):
# def get_original_path(venv_path):  # TODO-TEST: a unit test
# def get_python_version(interpreter):
# def invalid_virtualenv_reason(venv_path, source_python, destination_python, virtualenv_system_site_packages):
# def ensure_virtualenv(args, return_values):
# def wait_for_all_subprocesses():
# def touch(filename, timestamp):
# def mark_venv_valid(venv_path):
# def mark_venv_invalid(venv_path):
# def dotpy(filename):
# def venv_executable(venv_path, executable):
# def venv_python(venv_path):
# def user_cache_dir():
# def venv_update(
#         venv=DEFAULT_OPTION_VALUES['venv='],
#         install=DEFAULT_OPTION_VALUES['install='],
#         pip_command=DEFAULT_OPTION_VALUES['pip-command='],
#         bootstrap_deps=DEFAULT_OPTION_VALUES['bootstrap-deps='],
# ):
# def execfile_(filename):
# def pip_faster(venv_path, pip_command, install, bootstrap_deps):
# def raise_on_failure(mainfunc, ignore_return=False):
# def main():
# class Scratch(object):
#     class return_values(object):


# Path: tests/functional/simple_test.py
import re
import sys
import pytest
        import virtualenv
    import virtualenv
from subprocess import CalledProcessError
from py._path.local import LocalPath as Path
from testing import cached_wheels
from testing import enable_coverage
from testing import install_coverage
from testing import OtherPython
from testing import pip_freeze
from testing import requirements
from testing import run
from testing import strip_coverage_warnings
from testing import strip_pip_warnings
from testing import TOP
from testing import uncolor
from testing import venv_update
from venv_update import __version__
    from os import environ
    from subprocess import Popen
    from os import close
    from testing.capture_subprocess import read_all
    from os import openpty
    from testing.capture_subprocess import pty_normalize_newlines
    from os import pipe





@pytest.mark.usefixtures('pypi_server')
def test_trivial(tmpdir):
    tmpdir.chdir()
    requirements('')
    enable_coverage()
    venv_update()
    # Originally suggested by none other than @bukzor in:
    # https://github.com/pypa/virtualenv/issues/118
    # This directory now just causes problems (especially with relocating)
    # since the debian issue has been fixed.
    assert not tmpdir.join('venv', 'local').exists()


@pytest.mark.usefixtures('pypi_server_with_fallback')
def test_install_custom_path_and_requirements(tmpdir):
    """Show that we can install to a custom directory with a custom
    requirements file."""
    tmpdir.chdir()
    requirements(
        'mccabe==0.6.0\n',
        path='requirements2.txt',
    )
    enable_coverage()
    venv_update('venv=', 'venv2', 'install=', '-r', 'requirements2.txt')
    assert pip_freeze('venv2') == '\n'.join((
        'mccabe==0.6.0',

        'venv-update==' + __version__,