pytest-localftpserver 1.3.2

Creator: railscoder56

Last updated:

Add to Cart

Description:

pytestlocalftpserver 1.3.2

A PyTest plugin which provides an FTP fixture for your tests

Free software: MIT license
Documentation: https://pytest-localftpserver.readthedocs.io/en/latest/index.html


Attention!
As of version 1.0.0 the support for python 2.7 and 3.4 was dropped.
If you need to support those versions you should pin the version to 0.6.0,
i.e. add the following lines to your “requirements_dev.txt”:
# pytest_localftpserver==0.6.0
https://github.com/oz123/pytest-localftpserver/archive/v0.6.0.zip


Usage Quickstart:
This Plugin provides the fixtures ftpserver and ftpserver_TLS,
which are threaded instances of a FTP server, with which you can upload files and test FTP
functionality. It can be configured using the following environment variables:


Environment variable
Usage



FTP_USER
Username of the registered user.

FTP_PASS
Password of the registered user.

FTP_PORT
Port for the normal ftp server to run on.

FTP_HOME
Home folder (host system) of the registered user.

FTP_FIXTURE_SCOPE
Scope/lifetime of the fixture.

FTP_PORT_TLS
Port for the TLS ftp server to run on.

FTP_HOME_TLS
Home folder (host system) of the registered user, used by the TLS ftp server.

FTP_CERTFILE
Certificate (host system) to be used by the TLS ftp server.



See the tests directory
or the
documentation
for examples.
You can either set environment variables on a system level or use tools such as
pytest-env or
tox, to change the default settings of this plugin.
Sample config for pytest-cov:
$ cat pytest.ini
[pytest]
env =
FTP_USER=benz
FTP_PASS=erni1
FTP_HOME = /home/ftp_test
FTP_PORT=31175
FTP_FIXTURE_SCOPE=function
# only affects ftpserver_TLS
FTP_PORT_TLS = 31176
FTP_HOME_TLS = /home/ftp_test_TLS
FTP_CERTFILE = ./tests/test_keycert.pem
Sample config for Tox:
$ cat tox.ini
[tox]
envlist = py{36,37,38,39,310}

[testenv]
setenv =
FTP_USER=benz
FTP_PASS=erni1
FTP_HOME = {envtmpdir}
FTP_PORT=31175
FTP_FIXTURE_SCOPE=function
# only affects ftpserver_TLS
FTP_PORT_TLS = 31176
FTP_HOME_TLS = /home/ftp_test_TLS
FTP_CERTFILE = {toxinidir}/tests/test_keycert.pem
commands =
pytest tests


Credits
This package was inspired by, https://pypi.org/project/pytest-localserver/
made by Sebastian Rahlf, which lacks an FTP server.
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.