
# 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.
lowercase__							:							Union[str, Any]									=			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 	A_ (							snake_case							:   List[str] )      ->    Optional[Any]:



						'''simple docstring'''

						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 	A_ (							snake_case							:   str )      ->    List[Any]:



						'''simple docstring'''

						from transformers.testing_utils import pytest_addoption_shared

						pytest_addoption_shared(snake_case )




def 	A_ (							snake_case							:   Dict )      ->    int:



						'''simple docstring'''

						from transformers.testing_utils import pytest_terminal_summary_main

						__UpperCamelCase       =			terminalreporter.config.getoption('''--make-reports''' )
						if make_reports:
												pytest_terminal_summary_main(snake_case ,      id=snake_case )




def 	A_ (							snake_case							:   List[Any] ,      snake_case							:   int )      ->    str:



						'''simple docstring'''

						if exitstatus == 5:
												__UpperCamelCase       =			0


# Doctest custom flag to ignore output.
lowercase__							:							Optional[Any]									=			doctest.register_optionflag("IGNORE_RESULT")

lowercase__							:							int									=			doctest.OutputChecker






class        SCREAMING_SNAKE_CASE__    (							SCREAMING_SNAKE_CASE_    ):

							"""simple docstring"""






							def     A__		(  self     ,	SCREAMING_SNAKE_CASE_     ,	SCREAMING_SNAKE_CASE_     ,	SCREAMING_SNAKE_CASE_			)->   Optional[int]:





													'''simple docstring'''






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





lowercase__							:							Union[str, Any]									=			CustomOutputChecker
lowercase__							:							str									=			HfDoctestModule



lowercase__							:							Union[str, Any]									=			HfDocTestParser






from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


lowercase__							:							int									=			{
    "configuration_git": ["GIT_PRETRAINED_CONFIG_ARCHIVE_MAP", "GitConfig", "GitVisionConfig"],
    "processing_git": ["GitProcessor"],
}

try:
				if not is_torch_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				lowercase__							:							Tuple									=			[
				    "GIT_PRETRAINED_MODEL_ARCHIVE_LIST",
				    "GitForCausalLM",
				    "GitModel",
				    "GitPreTrainedModel",
				    "GitVisionModel",
				]

if TYPE_CHECKING:
				from .configuration_git import GIT_PRETRAINED_CONFIG_ARCHIVE_MAP, GitConfig, GitVisionConfig
				from .processing_git import GitProcessor

				try:
								if not is_torch_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_git import (
								    GIT_PRETRAINED_MODEL_ARCHIVE_LIST,
								    GitForCausalLM,
								    GitModel,
								    GitPreTrainedModel,
								    GitVisionModel,
								)

else:
				import sys

				lowercase__							:							Optional[Any]									=			_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)




