
from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


_UpperCAmelCase      :				Optional[Any]          = {
    "configuration_clap": [
        "CLAP_PRETRAINED_MODEL_ARCHIVE_LIST",
        "ClapAudioConfig",
        "ClapConfig",
        "ClapTextConfig",
    ],
    "processing_clap": ["ClapProcessor"],
}

try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     _UpperCAmelCase      :				Optional[Any]          = [
         "CLAP_PRETRAINED_MODEL_ARCHIVE_LIST",
         "ClapModel",
         "ClapPreTrainedModel",
         "ClapTextModel",
         "ClapTextModelWithProjection",
         "ClapAudioModel",
         "ClapAudioModelWithProjection",
     ]
     _UpperCAmelCase      :				Dict          = ["ClapFeatureExtractor"]

if TYPE_CHECKING:
     from .configuration_clap import (
         CLAP_PRETRAINED_MODEL_ARCHIVE_LIST,
         ClapAudioConfig,
         ClapConfig,
         ClapTextConfig,
     )
     from .processing_clap import ClapProcessor

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .feature_extraction_clap import ClapFeatureExtractor
          from .modeling_clap import (
              CLAP_PRETRAINED_MODEL_ARCHIVE_LIST,
              ClapAudioModel,
              ClapAudioModelWithProjection,
              ClapModel,
              ClapPreTrainedModel,
              ClapTextModel,
              ClapTextModelWithProjection,
          )


else:
     import sys

     _UpperCAmelCase      :				Union[str, Any]          = _LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)


import pytest

import datasets.config
from datasets.utils.info_utils import is_small_dataset


@pytest.mark.parametrize('dataset_size'					, [None, 400 * 2**20, 600 * 2**20]				)
@pytest.mark.parametrize('input_in_memory_max_size'					, ['default', 0, 100 * 2**20, 900 * 2**20]				)
def    A (      lowercase					, lowercase					, lowercase				)     ->						Union[str, Any]:
		'''simple docstring'''

		if input_in_memory_max_size != "default":
				monkeypatch.setattr(datasets.config					, 'IN_MEMORY_MAX_SIZE'					, lowercase				)
		UpperCamelCase						=  datasets.config.IN_MEMORY_MAX_SIZE
		if input_in_memory_max_size == "default":
				assert in_memory_max_size == 0
		else:
				assert in_memory_max_size == input_in_memory_max_size
		if dataset_size and in_memory_max_size:
				UpperCamelCase						=  dataset_size < in_memory_max_size
		else:
				UpperCamelCase						=  False
		UpperCamelCase						=  is_small_dataset(lowercase				)
		assert result == expected
