Beispiel #1
0
def parse_packages(packages, pre, clear, system, requirements_dir=None):
    from pipenv.vendor.requirementslib.models.requirements import Requirement
    from pipenv.vendor.vistir.contextmanagers import cd, temp_path
    from pipenv.utils import parse_indexes
    parsed_packages = []
    for package in packages:
        indexes, trusted_hosts, line = parse_indexes(package)
        line = " ".join(line)
        pf = dict()
        req = Requirement.from_line(line)
        if not req.name:
            with temp_path(), cd(req.req.setup_info.base_dir):
                sys.path.insert(0, req.req.setup_info.base_dir)
                req.req._setup_info.get_info()
                req.update_name_from_path(req.req.setup_info.base_dir)
        try:
            name, entry = req.pipfile_entry
        except Exception:
            continue
        else:
            if name is not None and entry is not None:
                pf[name] = entry
                parsed_packages.append(pf)
    print("RESULTS:")
    if parsed_packages:
        print(json.dumps(parsed_packages))
    else:
        print(json.dumps([]))
Beispiel #2
0
def test_install():
    from pipenv.vendor.vistir.contextmanagers import cd
    from pipenv.vendor.click.testing import CliRunner
    runner = CliRunner()
    with cd("/tmp/test"):
        from pipenv.core import do_lock
        locked = do_lock(system=False,
                         clear=False,
                         pre=False,
                         keep_outdated=False,
                         write=True,
                         pypi_mirror=None)
        # result = runner.invoke(cli, ["lock", "--verbose"])
        # print(result.output)
        # print(result.exit_code)
        print(locked)