code: def test_file_transfer_with_intermediate_dir_put(
      self, mock_create_dir, mock_put
  ):
      ftps_op = FTPSFileTransmitOperator(
          task_id="test_ftps_put_imm_dirs",
          ftp_conn_id=DEFAULT_CONN_ID,
          local_filepath=self.test_local_filepath,
          remote_filepath=self.test_remote_filepath_int_dir,
          operation=FTPOperation.PUT,
          create_intermediate_dirs=True,
      )
      ftps_op.execute(None)
      mock_create_dir.assert_called_with(self.test_remote_dir_int)
      mock_put.assert_called_once_with(
          self.test_remote_filepath_int_dir, self.test_local_filepath
      )
  
imports: from __future__ import annotations
  import socket
  from unittest import mock
  import pytest
  from openlineage.client.run import Dataset
  from airflow.models import DAG, Connection
  from airflow.providers.ftp.operators.ftp import FTPFileTransmitOperator, FTPOperation, FTPSFileTransmitOperator
  from airflow.utils import timezone
  from airflow.utils.timezone import datetime
label_desc: Use image node_id 3 for calling the TestFTPSFileTransmitOperator obj's underlying member method code with example usage: obj.test_file_transfer_with_intermediate_dir_put(mock_create_dir, mock_put) without return types