


# tests directory-specific settings - this file is run automatically
# by pytest before any tests are run

import doctest
import sys
import warnings
from os.path import abspath, dirname, join

import _pytest

from transformers.testing_utils import HfDoctestModule, HfDocTestParser


# allow having multiple repository checkouts and not needing to remember to rerun
# 'pip install -e .[dev]' when switching between checkouts and running tests.
__UpperCamelCase    		=       abspath(join(dirname(__file__), 'src'))
sys.path.insert(1, git_repo_path)

# silence FutureWarning warnings in tests since often we can't act on them until
# they become normal warnings - i.e. the tests still need to test the current functionality
warnings.simplefilter(action='ignore', category=FutureWarning)
def        UpperCamelCase_(				_A   :str  )->		int:
			config.addinivalue_line(
			    "markers"				,     "is_pt_tf_cross_test: mark test to run only when PT and TF interactions are tested"  )
			config.addinivalue_line(
			    "markers"				,     "is_pt_flax_cross_test: mark test to run only when PT and FLAX interactions are tested"  )
			config.addinivalue_line("markers"				,     "is_pipeline_test: mark test to run only when pipelines are tested"  )
			config.addinivalue_line("markers"				,     "is_staging_test: mark test to run only in the staging environment"  )
			config.addinivalue_line("markers"				,     "accelerate_tests: mark test that require accelerate"  )
			config.addinivalue_line("markers"				,     "tool_tests: mark the tool tests that are run on their specific schedule"  )
def        UpperCamelCase_(				_A   :str  )->		Optional[Any]:
			from transformers.testing_utils import pytest_addoption_shared

			pytest_addoption_shared(_A  )
def        UpperCamelCase_(				_A   :List[Any]  )->		Optional[Any]:
			from transformers.testing_utils import pytest_terminal_summary_main

			UpperCamelCase__					=       terminalreporter.config.getoption("--make-reports"  )
			if make_reports:
						pytest_terminal_summary_main(_A				,     id=_A  )
def        UpperCamelCase_(				_A   :List[str]				,     _A   :Optional[int]  )->		Union[str, Any]:
			# If no tests are collected, pytest exists with code 5, which makes the CI fail.
			if exitstatus == 5:
						UpperCamelCase__					=       0


# Doctest custom flag to ignore output.
__UpperCamelCase    		=       doctest.register_optionflag('IGNORE_RESULT')

__UpperCamelCase    		=       doctest.OutputChecker







class        lowerCamelCase__	(							UpperCAmelCase      ):






			"""simple docstring"""






			def 				snake_case__				(							self      ,						snake_case      ,						snake_case      ,						snake_case     ):

						'''simple docstring'''


						if IGNORE_RESULT & optionflags:
									return True
						return OutputChecker.check_output(self      ,						snake_case      ,						snake_case      ,						snake_case     )



__UpperCamelCase    		=       CustomOutputChecker
__UpperCamelCase    		=       HfDoctestModule







__UpperCamelCase    		=       HfDocTestParser






from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_speech_available,
    is_torch_available,
)


__UpperCamelCase    		=       {
    'configuration_trocr': ['TROCR_PRETRAINED_CONFIG_ARCHIVE_MAP', 'TrOCRConfig'],
    'processing_trocr': ['TrOCRProcessor'],
}


try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						__UpperCamelCase    		=       [
						    'TROCR_PRETRAINED_MODEL_ARCHIVE_LIST',
						    'TrOCRForCausalLM',
						    'TrOCRPreTrainedModel',
						]


if TYPE_CHECKING:
						from .configuration_trocr import TROCR_PRETRAINED_CONFIG_ARCHIVE_MAP, TrOCRConfig
						from .processing_trocr import TrOCRProcessor

						try:
												if not is_torch_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_trocr import TROCR_PRETRAINED_MODEL_ARCHIVE_LIST, TrOCRForCausalLM, TrOCRPreTrainedModel

else:
						import sys

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


