1
1
Fork 0
mirror of https://github.com/pypa/pip synced 2023-12-13 21:30:23 +01:00
pip/tests/test_requirements.py
Dave Abrahams 9ad75fe6ba Rationalized and cleaned up use of relative/absolute paths in TestPipEnvironment
In test_freeze.py:test_freeze_bazaar_clone, invoke python without qualification

Removed flotsam and jetsam
2010-05-02 14:11:45 -04:00

40 lines
1.5 KiB
Python

import os
import textwrap
from test_pip import reset_env, run_pip, write_file, pyversion
def test_requirements_file():
"""
Test installing from a requirements file.
"""
env = reset_env()
write_file('initools-req.txt', textwrap.dedent("""\
INITools==0.2
# and something else to test out:
simplejson<=1.7.4
"""))
result = run_pip('install', '-r', env.scratch_path / 'initools-req.txt')
assert env.site_packages/'INITools-0.2-py%s.egg-info' % pyversion in result.files_created
assert env.site_packages/'initools' in result.files_created
assert result.files_created[env.site_packages/'simplejson'].dir
assert result.files_created[env.site_packages/'simplejson-1.7.4-py%s.egg-info' % pyversion].dir
def test_multiple_requirements_files():
"""
Test installing from multiple nested requirements files.
"""
env = reset_env()
write_file('initools-req.txt', textwrap.dedent("""\
-e svn+http://svn.colorstudy.com/INITools/trunk@3139#egg=INITools-dev
-r simplejson-req.txt"""))
write_file('simplejson-req.txt', textwrap.dedent("""\
simplejson<=1.7.4
"""))
result = run_pip('install', '-r', env.scratch_path / 'initools-req.txt')
assert result.files_created[env.site_packages/'simplejson'].dir
assert result.files_created[env.site_packages/'simplejson-1.7.4-py%s.egg-info' % pyversion].dir
assert env.venv/'src'/'initools' in result.files_created