def test_pip_wheel_does_not_build_wheels_if_requirements_are_empty( pip: Pip, wheels_dir: Path, download_dir: Path, current_platform: TargetPlatform ): pip.build_wheels( requirements=RequirementSet(current_platform), target_directory=wheels_dir, source_directories=[download_dir], ) assert not wheels_dir.list_files()
def test_pip_can_install_wheels_previously_downloaded( pip: Pip, project_dir: str, current_platform: TargetPlatform, requirement_parser: RequirementParser, download_dir: Path, wheels_dir: Path, ): requirements = RequirementSet(current_platform) requirements.add(requirement_parser.parse("six")) pip.download_sources(requirements, download_dir) pip.build_wheels( requirements=requirements, source_directories=[download_dir], target_directory=wheels_dir, ) assert wheels_dir.list_files() assert any(map(lambda x: x.endswith(".whl"), wheels_dir.list_files()))
def test_pip_downloads_sources_to_target_directory( pip: Pip, project_dir: str, current_platform: TargetPlatform, requirement_parser: RequirementParser, ): download_path = Path(project_dir) / "download" requirements = RequirementSet(current_platform) requirements.add(requirement_parser.parse("six")) pip.download_sources(requirements=requirements, target_directory=download_path) assert download_path.list_files()
def test_install_to_target_directory_does_not_install_to_default_directory( pip: Pip, project_dir: str, download_dir: Path, current_platform: TargetPlatform, requirement_parser: RequirementParser, ): requirements = RequirementSet(current_platform) requirements.add(requirement_parser.parse("six")) target_directory = Path(project_dir) / "target-directory" target_directory.ensure_directory() pip.download_sources(requirements, download_dir) assert not target_directory.list_files() pip.install( requirements, source_directories=[download_dir], target_directory=target_directory, ) assert target_directory.list_files()
def test_install_does_not_install_anything_with_empty_requirements( pip: Pip, project_dir: str, current_platform: TargetPlatform): target_directory = Path(project_dir) / "target_dir" target_directory.ensure_directory() pip.install(RequirementSet(current_platform), [], target_directory) assert not target_directory.list_files()
def test_pip_downloads_nothing_when_no_requirements_are_given( pip: Pip, download_dir: Path, current_platform: TargetPlatform): pip.download_sources(requirements=RequirementSet(current_platform), target_directory=download_dir) assert not download_dir.list_files()