def scripts(self, venv: VEnv,
                packages: Iterable[str]) -> Iterable[Tuple[str, str]]:
        if venv.create(update=True):
            if venv.requirements:
                venv.install(*venv.requirements)
        venv.install(*packages)

        try:
            import pkg_resources
        except ImportError:
            echo("Unable to import pkg_resources to register %s into %s" %
                 (sorted(packages), venv))
            return []

        if platform == 'win32':
            libpath = venv.abs_path / 'lib' / 'site-packages'
        else:
            ver_path = 'python%d.%d' % version_info[:2]
            libpath = venv.abs_path / 'lib' / ver_path

        pkg_env = pkg_resources.Environment(
            search_path=[str(libpath / 'site-packages')])

        def pkg_scripts(p: str) -> Iterable[str]:
            scripts = {}  # type: Dict
            dist = pkg_env[p]
            if len(dist):
                scripts = dist[0].get_entry_map().get('console_scripts') or {}
            return scripts.keys()

        return ((s, p) for p in packages for s in pkg_scripts(p))
Example #2
0
def init(pyver='2.7', dir='.', upgrade=False, clientonly=False):
    """Create a virtualenv and setup entry points
    """
    virtualenv = venv.init(pyver=pyver, dir=dir, upgrade=upgrade, apy=True)

    # extra required packages
    extra = ['pytest']
    for p in extra:
        venv.install(p, dir)
Example #3
0
def init(pyver='2.7', dir='.', upgrade=False, clientonly=False):
    """Create a virtualenv and setup entry points
    """
    virtualenv = venv.init(
        pyver=pyver,
        dir=dir,
        upgrade=upgrade,
        apy=True
    )
    
    # extra required packages
    extra = ['pytest']
    for p in extra:
        venv.install(p, dir)
Example #4
0
def test(k=None):
    """Run tests"""
    venv.install('pytest')
    py_test = venv.get_script('py.test')
    test_script = P.join('applib', 'test', 'all.py')
    if not P.exists('tmp'):
        os.mkdir('tmp')
    if k is not None:
        args = " -k " + k
    else:
        args = ""
    local('{0} -x -v {1} {2} --junitxml=tmp/testreport.xml'.format(
        py_test, test_script, args),
          capture=False)
Example #5
0
def test(k=None):
    """Run tests"""
    venv.install('pytest')
    py_test = venv.get_script('py.test')
    test_script = P.join('applib', 'test', 'all.py')
    if not P.exists('tmp'):
        os.mkdir('tmp')
    if k is not None:
        args = " -k " + k
    else:
        args = ""
    local(
        '{0} -x -v {1} {2} --junitxml=tmp/testreport.xml'.format(py_test, test_script, args),
        capture=False)