{"id":24432,"library":"pytest-localftpserver","title":"pytest-localftpserver","description":"A PyTest plugin that provides an FTP fixture (localftpserver) for your tests, enabling you to spin up a real FTP server during testing. Version 1.5.0 is the latest release; the project is in maintenance mode with infrequent updates.","status":"maintenance","version":"1.5.0","language":"python","source_language":"en","source_url":"https://github.com/cesarcoatl/pytest-localftpserver","tags":["pytest","ftp","testing","plugin"],"install":[{"cmd":"pip install pytest-localftpserver","lang":"bash","label":"Install via pip"}],"dependencies":[],"imports":[{"note":"The fixture is automatically registered by the plugin; just add 'localftpserver' as a parameter to your test function.","symbol":"localftpserver","correct":"no import needed; use fixture name in test function argument"}],"quickstart":{"code":"def test_ftp(localftpserver):\n    with localftpserver.session() as ftp:\n        ftp.login('user', 'pass')\n        ftp.cwd('/')\n        assert ftp.pwd() == '/'\n        ftp.storbinary('STOR testfile', b'data')\n        ftp.retrbinary('RETR testfile', lambda x: None)","lang":"python","description":"A minimal test using the localftpserver fixture. The fixture starts an FTP server on a random port; the session() context manager gives you a connected FTP client."},"warnings":[{"fix":"Use the default configuration or set the port via pytest options.","message":"The fixture starts a real FTP server on a random port; ensure you don't have conflicting services or firewall restrictions.","severity":"gotcha","affected_versions":"all"},{"fix":"Consider using alternative solutions like pyftpdlib directly or pytest-docker for FTP testing.","message":"The project has not been updated in years and may have compatibility issues with newer Python versions or pytest 7+.","severity":"deprecated","affected_versions":">=1.5.0"},{"fix":"Always use the session() context manager or manually close the FTP client.","message":"The fixture does not clean up the server after each test by default; ensure you close sessions properly to avoid hanging processes.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'1.5.0':28 'enabl':16 'fixtur':11 'ftp':10,23,43 'infrequ':40 'latest':31 'localftpserv':3,12 'mainten':37 'mode':38 'plugin':6,45 'project':34 'provid':8 'pytest':2,5,42 'pytest-localftpserv':1 'real':22 'releas':32 'server':24 'spin':19 'test':15,26,44 'updat':41 'version':27","created_at":"2026-05-01T08:13:03.258672+00:00","updated_at":"2026-05-01T08:13:03.258672+00:00","problems":{"verify_error":"no import statement found"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"1.5.0","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/oz123/pytest-localftpserver","docs":null,"changelog":null,"pypi":"https://pypi.org/project/pytest-localftpserver/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["testing","http-networking"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"skip","verified_at":"2026-06-29","last_verified":"2026-06-29","next_check":"2026-07-06","install_tag":null}}