FTP servers return full path from listNames() whereas SFTP returns just the filename. mget logic assumed SFTP behavior. Add a test to see if the filename already starts with the remote directory and remove it before calling get() (which assumes just the filename). Includes an @Ignored test for FTP and SFTP that runs an mget against a server.