Skip to main content

py.test fixture for creating a virtual environment

Project description

https://img.shields.io/pypi/v/pytest-venv.svg https://img.shields.io/travis/mmerickel/pytest-venv.svg

pytest-venv is a simple pytest plugin that exposes a venv fixture. The fixture is used to create a new virtual environment which can be used to install packages and run commands inside tests.

Usage

import os

def test_it(venv):
    venv.install('pyramid', upgrade=True)
    subprocess.check_call(
        [os.path.join(venv.bin, 'pserve'), 'development.ini'],
    )

API

The venv fixture is an instance of pytest_venv.VirtualEnvironment(path) which exposes the following API:

path

The path to the virtualenv directory.

bin

The path to the bin / Scripts directory.

python

The path to the python executable in the virtualenv.

create(system_site_packages=False, python=None)

Create a virtualenv. This is called automatically by the venv fixture. If python is None then the virtual environment will be created using the same executable as the active runtime.

install(pkg_name, editable=False, upgrade=False)

Use pip to install a package into the virtualenv. pkg_name may be a path to a package on disk.

get_version(pkg_name)

Returns a pkg_resources.Version object which is sortable and convertable to a string.

0.2 (2016-11-27)

  • Add VirtualEnvironment.get_version for querying versions from installed packages in the virtual environment.

  • Support custom python interpreter paths via VirtualEnvironment.create(python=...).

0.1.1 (2016-11-27)

  • Ensure the virtual environment is started with the same Python executable as the current process.

0.1 (2016-11-27)

  • Initial release.

Project details


Download files

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

Source Distribution

pytest-venv-0.2.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

pytest_venv-0.2-py2.py3-none-any.whl (4.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file pytest-venv-0.2.tar.gz.

File metadata

  • Download URL: pytest-venv-0.2.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pytest-venv-0.2.tar.gz
Algorithm Hash digest
SHA256 4d0f78e0a6b2f6817061fbfbf4fb9c4a289034808946306fc11ee5ad9156e055
MD5 d240e1db17b9116ecfcd82c78c4cad33
BLAKE2b-256 7480364847f0e49fc1617c87ff7d929d2a3f71b0663b73827ccd0c4817f032e6

See more details on using hashes here.

File details

Details for the file pytest_venv-0.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for pytest_venv-0.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ec842cbc60affbea6b1136bf9876ca858d0b77f6c58740e69a6e0ef708f43ea3
MD5 0157c8201a91e8ae9e8ddea9503b59b3
BLAKE2b-256 13f9acf7cfc40fca6eddd0225382d7bd90de619b8fface0543216b291c2ed98d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page