FTPServerContext
You need a temporary ftp server in your python unittests?
This small library provides you the class called FTPServerContext.
Uses pyftpdlib to run the ftp-server.
Supports:
ftp
ftps (FTP over TLS)
Does not support:
sftp (FTP via SSH)
Usage
Usage:
temp_dir = tempfile.mkdtemp()
with FTPServerContext(temp_dir) as ftp_context:
# now you have these variables for testing your ftp client code:
ftp_context.ip_address
ftp_context.test_user_name
ftp_context.test_user_password
ftp_context.port
Install
Via pip:
pip install ftpservercontext
Internals
With subprocess.Popen() a script called serve_directory_via_ftp gets called.
You provide FTPServerContext a directory and the ftp server serves this directory via ftp running on ‘127.0.0.1’ and a matching open port.
If the python interpreter leaves the with-block, then the subprocess running the ftp-server gets automatically terminated.
You can see a working example in the unittest: https://github.com/tbz-pariv/ftpservercontext/blob/master/ftpservercontext/tests/test_ftpservercontext.py
Feedback
Feedback is welcome. Just open an issue at github, even if you just want to say “thank you”.
Metadata
Release files for ftpservercontext 2018.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| ftpservercontext-2018.3.0.tar.gz | 3.4 kB | Without provenance | Details for ftpservercontext-2018.3.0.tar.gz |
Release files / ftpservercontext-2018.3.0.tar.gz
| Download URL | ftpservercontext-2018.3.0.tar.gz |
|---|---|
| Size | 3.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
24b1fe7db0ccc87fd0ddb79a333407ded6906a6cf56945bf154e10e7617c393d
|
|
BLAKE2b-256 checksum How to use checksums |
b4fbfdc294ca6a1f5b3331f0b914f9577c90e19a7e7cd99f89f2eae69a8dc73a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.9.1 pkginfo/1.4.1 requests/2.20.1 setuptools/22.0.5 requests-toolbelt/0.8.0 tqdm/4.17.1 CPython/2.7.12
|
Security for ftpservercontext 2018.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.