Skip to main content

Check if requirement files are frozen

Project description

pytest freeze reqs

Pytest plugin that tests if requirements are frozen.
**/req*.txt and **/req*.pip are the patterns of path to match.

ok and not ok lines in requirements.txt

Django<2.2  # ok
Django>=1.0  # not ok
requests  # not ok
requests>1.0,<2.3  # ok
-e git://github.com/org/pkg.git#egg=pkg  # not ok
-e git://github.com/org/pkg.git@{revision}#egg=elasticutils  # ok
-e /local/file  # ok

example error

================================== FAILURES ===================================
_________________ requirement: Django is not frozen properly. _________________
requirement freeze test failed
   improperly frozen requirement: 'Django': [('>', '1.0')]
   try adding pkg==version, or git@revision
________________ requirement: requests is not frozen properly. ________________
requirement freeze test failed
   improperly frozen requirement: 'requests': []
   try adding pkg==version, or git@revision
______________ requirement: elasticutils is not frozen properly. ______________
requirement freeze test failed
   improperly frozen requirement: 'elasticutils': '[no revision]'
   try adding pkg==version, or git@revision

usage

# just add --freeze_reqs arg to pytest
pytest --freeze_reqs

# if you want to run only freeze_reqs tests
pytest -m freeze_reqs --freeze_reqs

pytest.ini configuration

# here you can configure paths/files to ignore
# these are checked with contain.
freeze-reqs-ignore-paths=requirement_local.txt
                         requirements/req_dev.txt

# here you can configure paths/files to include
# these are checked with contain.
freeze-reqs-include-paths=requirements/base.txt
                          requirements/development.txt

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pytest-freeze-reqs, version 0.1.8
Filename, size File type Python version Upload date Hashes
Filename, size pytest-freeze-reqs-0.1.8.tar.gz (3.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page