




from unittest.mock import Mock, patch

from file_transfer.send_file import send_file

@patch('socket.socket'	)
@patch('builtins.open'	)
def      _SCREAMING_SNAKE_CASE     (				lowercase      :			Optional[Any]      ,				lowercase      :			Optional[int]	):


      '''simple docstring'''



      lowerCamelCase_							=       Mock()
      lowerCamelCase_							=       conn, Mock()
      lowerCamelCase_							=       iter([1, None]	)
      lowerCamelCase_							=       lambda lowercase	: next(lowercase	)

      # ===== invoke =====
      send_file(filename='mytext.txt'      ,				testing=lowercase	)

      # ===== ensurance =====
      sock.assert_called_once()
      sock.return_value.bind.assert_called_once()
      sock.return_value.listen.assert_called_once()
      sock.return_value.accept.assert_called_once()
      conn.recv.assert_called_once()

      file.return_value.__enter__.assert_called_once()
      file.return_value.__enter__.return_value.read.assert_called()

      conn.send.assert_called_once()
      conn.close.assert_called_once()
      sock.return_value.shutdown.assert_called_once()
      sock.return_value.close.assert_called_once()







"""simple docstring"""



from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_tokenizers_available,
    is_torch_available,
    is_vision_available,
)


lowercase_							=							{
    'configuration_layoutlmv2': ['LAYOUTLMV2_PRETRAINED_CONFIG_ARCHIVE_MAP', 'LayoutLMv2Config'],
    'processing_layoutlmv2': ['LayoutLMv2Processor'],
    'tokenization_layoutlmv2': ['LayoutLMv2Tokenizer'],
}

try:
		if not is_tokenizers_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase_							=							['LayoutLMv2TokenizerFast']

try:
		if not is_vision_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase_							=							['LayoutLMv2FeatureExtractor']
		lowercase_							=							['LayoutLMv2ImageProcessor']

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase_							=							[
		    'LAYOUTLMV2_PRETRAINED_MODEL_ARCHIVE_LIST',
		    'LayoutLMv2ForQuestionAnswering',
		    'LayoutLMv2ForSequenceClassification',
		    'LayoutLMv2ForTokenClassification',
		    'LayoutLMv2Layer',
		    'LayoutLMv2Model',
		    'LayoutLMv2PreTrainedModel',
		]

if TYPE_CHECKING:
		from .configuration_layoutlmva import LAYOUTLMV2_PRETRAINED_CONFIG_ARCHIVE_MAP, LayoutLMvaConfig
		from .processing_layoutlmva import LayoutLMvaProcessor
		from .tokenization_layoutlmva import LayoutLMvaTokenizer

		try:
				if not is_tokenizers_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .tokenization_layoutlmva_fast import LayoutLMvaTokenizerFast

		try:
				if not is_vision_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .feature_extraction_layoutlmva import LayoutLMvaFeatureExtractor, LayoutLMvaImageProcessor

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_layoutlmva import (
				    LAYOUTLMV2_PRETRAINED_MODEL_ARCHIVE_LIST,
				    LayoutLMvaForQuestionAnswering,
				    LayoutLMvaForSequenceClassification,
				    LayoutLMvaForTokenClassification,
				    LayoutLMvaLayer,
				    LayoutLMvaModel,
				    LayoutLMvaPreTrainedModel,
				)
else:
		import sys

		lowercase_							=							_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)