code: def test_artifact_logging_chunks_upload_list(
      databricks_artifact_repo, tmp_path
  ):
      """
      Verifies that write credentials are fetched in chunks rather than all at once.
      """
      src_dir = tmp_path.joinpath("src")
      src_dir.mkdir()
      for i in range(10):
          src_dir.joinpath(f"file_{i}.txt").write_text(f"file{i}")
      dst_dir = tmp_path.joinpath("dst")
      dst_dir.mkdir()
  
      with mock.patch(
          f"{DATABRICKS_ARTIFACT_REPOSITORY}._get_write_credential_infos",
          return_value=[
              ArtifactCredentialInfo(
                  signed_uri=MOCK_AZURE_SIGNED_URI,
                  type=ArtifactCredentialType.AZURE_SAS_URI,
              ),
              ArtifactCredentialInfo(
                  signed_uri=MOCK_AZURE_SIGNED_URI,
                  type=ArtifactCredentialType.AZURE_SAS_URI,
              ),
          ],
      ) as mock_get_write_creds, mock.patch(
          f"{DATABRICKS_ARTIFACT_REPOSITORY}._upload_to_cloud"
      ), mock.patch(
          f"{CLOUD_ARTIFACT_REPOSITORY_PACKAGE}._ARTIFACT_UPLOAD_BATCH_SIZE",
          2,
      ):
          databricks_artifact_repo.log_artifacts(
              src_dir, "dir_artifact"
          )
  
          assert mock_get_write_creds.call_count == 5
          assert all(
              len(call[1]["remote_file_paths"]) == 2
              for call in mock_get_write_creds.call_args_list
          )
  
imports: import json
  import os
  import posixpath
  import re
  import shutil
  import time
  from unittest import mock
  from unittest.mock import ANY
  import pytest
  from requests.models import Response
  from mlflow.entities.file_info import FileInfo
  from mlflow.exceptions import MlflowException
  from mlflow.protos.databricks_artifacts_pb2 import ArtifactCredentialInfo, ArtifactCredentialType, CompleteMultipartUpload, CreateMultipartUpload, GetCredentialsForRead, GetCredentialsForWrite, GetPresignedUploadPartUrl
  from mlflow.protos.service_pb2 import FileInfo, ListArtifacts
  from mlflow.store.artifact.artifact_repository_registry import get_artifact_repository
  from mlflow.store.artifact.databricks_artifact_repo import _MAX_CREDENTIALS_REQUEST_SIZE, DatabricksArtifactRepository
label_desc: Use image node_id 34 for calling a global function with example usage: test_artifact_logging_chunks_upload_list(databricks_artifact_repo, tmp_path) without return types