blob: 2ef12cfb06634ac6e4733fb2f47e5973ba1fd378 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
Getting started
===============
Development dependencies
------------------------
Working on ``cryptography`` requires the installation of a small number of
development dependencies in addition to the dependencies for
:doc:`/installation`. These are handled by the use of ``nox``, which can be
installed with ``pip``.
.. code-block:: console
$ # Create a virtualenv and activate it
$ # Set up your cryptography build environment
$ pip install nox
$ # Specify your Python version here.
$ nox -e tests -p py310
OpenSSL on macOS
~~~~~~~~~~~~~~~~
You must have installed `OpenSSL`_ (via `Homebrew`_ , `MacPorts`_) before
invoking ``nox`` or else pip will fail to compile.
Running tests
-------------
``cryptography`` unit tests are found in the ``tests/`` directory and are
designed to be run using `pytest`_. ``nox`` automatically invokes ``pytest``:
.. code-block:: console
$ nox -e tests -p py310
...
62746 passed in 220.43 seconds
You can also specify a subset of tests to run as positional arguments:
.. code-block:: console
$ # run the whole x509 testsuite, plus the fernet tests
$ nox -e tests -p py310 -- tests/x509/ tests/test_fernet.py
.. _`Homebrew`: https://brew.sh
.. _`MacPorts`: https://www.macports.org
.. _`OpenSSL`: https://www.openssl.org
.. _`pytest`: https://pypi.org/project/pytest/
.. _`nox`: https://pypi.org/project/nox/
.. _`virtualenv`: https://pypi.org/project/virtualenv/
.. _`pip`: https://pypi.org/project/pip/
.. _`as documented here`: https://docs.rs/openssl/latest/openssl/#automatic
|