def test_size(self): ftp = sftp_client(HOST, "{0}/folder".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertEqual(ftp.size(), 0) ftp = sftp_client(HOST, "{0}/file".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertEqual(ftp.size(), 0)
def setUp(self): super(TestFTPConnector, self).setUp() ftp = sftp_client(HOST, path="{0}/folder/".format(BASE_DIR), login=USER, password=PASSWORD, hkey_path=HKEY_PATH) self.assertFalse(ftp.exists()) if not ftp.exists(): ftp.create(make_dir=True, create_parents=True) self.assertTrue(ftp.exists()) self.assertTrue(ftp.is_directory()) ftp = sftp_client(HOST, path="{0}/file/".format(BASE_DIR), login=USER, password=PASSWORD, hkey_path=HKEY_PATH) self.assertFalse(ftp.exists()) if not ftp.exists(): ftp.create(make_dir=False, create_parents=True) self.assertTrue(ftp.exists()) self.assertFalse(ftp.is_directory()) ftp = sftp_client(HOST, path="{0}/folder2".format(BASE_DIR), login=USER, password=PASSWORD, hkey_path=HKEY_PATH) self.assertFalse(ftp.exists()) if not ftp.exists(): ftp.create(make_dir=True, create_parents=True) self.assertTrue(ftp.exists()) self.assertTrue(ftp.is_directory()) ftp = sftp_client(HOST, path="{0}/folder/file".format(BASE_DIR), login=USER, password=PASSWORD, hkey_path=HKEY_PATH) self.assertFalse(ftp.exists()) if not ftp.exists(): ftp.create(make_dir=False, create_parents=False) self.assertTrue(ftp.exists()) self.assertFalse(ftp.is_directory())
def test_is_dir(self): ftp = sftp_client(HOST, "{0}/folder".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertTrue(ftp.is_directory()) ftp = sftp_client(HOST, "{0}/file".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertFalse(ftp.is_directory())
def test_upload(self): ftp = sftp_client(HOST, "{0}/folder".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) ftp.upload(local_path=os.path.join(os.path.dirname(__file__), 'resources/ftp/zero')) ftp = sftp_client(HOST, "{0}/folder/zero".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertTrue(ftp.exists()) ftp = sftp_client(HOST, "{0}/file".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) ftp.upload(local_path=os.path.join(os.path.dirname(__file__), 'resources/ftp/zero'), update=True) self.assertTrue(ftp.exists())
def test_is_exists(self): ftp = sftp_client(HOST, "{0}".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertTrue(ftp.exists()) ftp = sftp_client(HOST, "{0}/file/".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertTrue(ftp.exists()) ftp = sftp_client(HOST, "{0}/folder/".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertTrue(ftp.exists()) ftp = sftp_client(HOST, "{0}/{0}".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertFalse(ftp.exists()) ftp = sftp_client(HOST, "{0}/".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertTrue(ftp.exists())
def test_download_dir(self): try: shell.execute_shell_command('mkdir', os.path.join(os.path.dirname(__file__), 'resources/download')) ftp = sftp_client(HOST, "{0}".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertTrue(ftp.exists()) ftp.download_dir(local_path=os.path.join(os.path.dirname(__file__), 'resources/download')) self.assertTrue(os.path.exists(os.path.join(os.path.dirname(__file__), 'resources/download/{0}'.format(BASE_DIR)))) self.assertTrue( os.path.exists(os.path.join(os.path.dirname(__file__), 'resources/download/{0}/file'.format(BASE_DIR)))) self.assertTrue( os.path.exists(os.path.join(os.path.dirname(__file__), 'resources/download/{0}/folder'.format(BASE_DIR)))) self.assertTrue( os.path.exists(os.path.join(os.path.dirname(__file__), 'resources/download/{0}/folder/file'.format(BASE_DIR)))) shutil.rmtree(os.path.join(os.path.dirname(__file__), 'resources/download/{0}'.format(BASE_DIR))) ftp.download_dir(local_path=os.path.join(os.path.dirname(__file__), 'resources/download'), recursive=False) self.assertTrue(os.path.exists(os.path.join(os.path.dirname(__file__), 'resources/download/{0}'.format(BASE_DIR)))) self.assertTrue( os.path.exists(os.path.join(os.path.dirname(__file__), 'resources/download/{0}/file'.format(BASE_DIR)))) self.assertFalse( os.path.exists(os.path.join(os.path.dirname(__file__), 'resources/download/{0}/folder'.format(BASE_DIR)))) self.assertFalse( os.path.exists(os.path.join(os.path.dirname(__file__), 'resources/download/{0}/folder/file'.format(BASE_DIR)))) shutil.rmtree(os.path.join(os.path.dirname(__file__), 'resources/download/{0}'.format(BASE_DIR))) finally: shutil.rmtree(os.path.join(os.path.dirname(__file__), 'resources/download'))
def test_download_dir_with_predicate(self): try: shell.execute_shell_command( 'mkdir', os.path.join(os.path.dirname(__file__), 'resources/download')) ftp = sftp_client(HOST, "{0}".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertTrue(ftp.exists()) ftp.download_dir(local_path=os.path.join(os.path.dirname(__file__), 'resources/download'), predicate=self.predicate_get_description, recursive=True) self.assertTrue( os.path.exists( os.path.join(os.path.dirname(__file__), 'resources/download/{0}'.format(BASE_DIR)))) self.assertTrue( os.path.exists( os.path.join( os.path.dirname(__file__), 'resources/download/{0}/file'.format(BASE_DIR)))) self.assertFalse( os.path.exists( os.path.join( os.path.dirname(__file__), 'resources/download/{0}/folder'.format(BASE_DIR)))) finally: shutil.rmtree( os.path.join(os.path.dirname(__file__), 'resources/download'))
def test_get_description(self): ftp = sftp_client(HOST, "{0}/folder2".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertEqual(ftp.get_description().name, "{0}/folder2".format(BASE_DIR)) self.assertEqual(ftp.get_description().create_date, None) self.assertEqual(ftp.get_description().owner, None) self.assertEqual(ftp.get_description().size, 0)
def test_list_files(self): ls = [] for ftp in sftp_client(HOST, "{0}/".format(BASE_DIR), USER, PASSWORD, HKEY_PATH): ls.append(ftp.get_description().name) self.assertEqual( str(ls), "[u'{0}/file', u'{0}/folder2', u'{0}/folder']".format(BASE_DIR))
def test_download_dir_invalid_path_sftp(self): try: shell.execute_shell_command('mkdir', os.path.join(os.path.dirname(__file__), 'resources/download')) ftp = sftp_client(HOST, "{0}/file".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertTrue(ftp.exists()) ftp.download_dir(local_path=os.path.join(os.path.dirname(__file__), 'resources/download')) finally: shutil.rmtree(os.path.join(os.path.dirname(__file__), 'resources/download'))
def test_download_dir_invalid_path_sftp(self): try: shell.execute_shell_command( 'mkdir', os.path.join(os.path.dirname(__file__), 'resources/download')) ftp = sftp_client(HOST, "{0}/file".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertTrue(ftp.exists()) ftp.download_dir(local_path=os.path.join(os.path.dirname(__file__), 'resources/download')) finally: shutil.rmtree( os.path.join(os.path.dirname(__file__), 'resources/download'))
def test_basedir_root(self): ftp = sftp_client(HOST, "/", USER, PASSWORD, HKEY_PATH) self.assertEqual(str(ftp.base_dir().get_description().name), '/')
def tearDown(self): ftp = sftp_client(HOST, "{0}".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) ftp.delete(recursive=True) self.assertFalse(ftp.exists())
def test_basedir(self): ftp = sftp_client(HOST, "{0}".format(BASE_DIR), USER, PASSWORD, HKEY_PATH) self.assertEqual(str(ftp.base_dir().get_description().name), '/home/user')
def test_list_files(self): ls = [] for ftp in sftp_client(HOST, "{0}/".format(BASE_DIR), USER, PASSWORD, HKEY_PATH): ls.append(ftp.get_description().name) self.assertEqual(str(ls), "[u'{0}/file', u'{0}/folder2', u'{0}/folder']".format(BASE_DIR))