




'''simple docstring'''





# 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_		:     List[str]          =		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      (  _UpperCamelCase:       List[Any]       )		->					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      (  _UpperCamelCase:       Any       )		->					Optional[int]:

     """simple docstring"""




     from transformers.testing_utils import pytest_addoption_shared

     pytest_addoption_shared(_UpperCamelCase       )





def       __a      (  _UpperCamelCase:       Tuple       )		->					int:

     """simple docstring"""




     from transformers.testing_utils import pytest_terminal_summary_main

     _snake_case				= terminalreporter.config.getoption("--make-reports"       )
     if make_reports:
          pytest_terminal_summary_main(_UpperCamelCase   ,		id=_UpperCamelCase       )





def       __a      (  _UpperCamelCase:       List[Any]   ,		_UpperCamelCase:       Dict       )		->					Union[str, Any]:

     """simple docstring"""




     if exitstatus == 5:
          _snake_case				= 0


# Doctest custom flag to ignore output.
UpperCamelCase_		:     Dict          =		doctest.register_optionflag('''IGNORE_RESULT''')

UpperCamelCase_		:     Optional[Any]          =		doctest.OutputChecker

class   _a							(		__lowerCAmelCase				):






     def 							_lowercase      (					self   ,_SCREAMING_SNAKE_CASE   ,_SCREAMING_SNAKE_CASE   ,_SCREAMING_SNAKE_CASE       )				->     str:
          if IGNORE_RESULT & optionflags:
               return True
          return OutputChecker.check_output(self   ,_SCREAMING_SNAKE_CASE   ,_SCREAMING_SNAKE_CASE   ,_SCREAMING_SNAKE_CASE       )







UpperCamelCase_		:     List[Any]          =		CustomOutputChecker
UpperCamelCase_		:     Tuple          =		HfDoctestModule





UpperCamelCase_		:     Tuple          =		HfDocTestParser








'''simple docstring'''





from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_flax_available,
    is_tf_available,
    is_tokenizers_available,
    is_torch_available,
)


UpperCamelCase_		:     Dict          =		{
    '''configuration_roformer''': ['''ROFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''RoFormerConfig''', '''RoFormerOnnxConfig'''],
    '''tokenization_roformer''': ['''RoFormerTokenizer'''],
}

try:
   if not is_tokenizers_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   UpperCamelCase_		:     Union[str, Any]          =		['''RoFormerTokenizerFast''']

try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   UpperCamelCase_		:     Tuple          =		[
       '''ROFORMER_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''RoFormerForCausalLM''',
       '''RoFormerForMaskedLM''',
       '''RoFormerForMultipleChoice''',
       '''RoFormerForQuestionAnswering''',
       '''RoFormerForSequenceClassification''',
       '''RoFormerForTokenClassification''',
       '''RoFormerLayer''',
       '''RoFormerModel''',
       '''RoFormerPreTrainedModel''',
       '''load_tf_weights_in_roformer''',
   ]


try:
   if not is_tf_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   UpperCamelCase_		:     str          =		[
       '''TF_ROFORMER_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''TFRoFormerForCausalLM''',
       '''TFRoFormerForMaskedLM''',
       '''TFRoFormerForMultipleChoice''',
       '''TFRoFormerForQuestionAnswering''',
       '''TFRoFormerForSequenceClassification''',
       '''TFRoFormerForTokenClassification''',
       '''TFRoFormerLayer''',
       '''TFRoFormerModel''',
       '''TFRoFormerPreTrainedModel''',
   ]


try:
   if not is_flax_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   UpperCamelCase_		:     Tuple          =		[
       '''FLAX_ROFORMER_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''FlaxRoFormerForMaskedLM''',
       '''FlaxRoFormerForMultipleChoice''',
       '''FlaxRoFormerForQuestionAnswering''',
       '''FlaxRoFormerForSequenceClassification''',
       '''FlaxRoFormerForTokenClassification''',
       '''FlaxRoFormerModel''',
       '''FlaxRoFormerPreTrainedModel''',
   ]


if TYPE_CHECKING:
   from .configuration_roformer import ROFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP, RoFormerConfig, RoFormerOnnxConfig
   from .tokenization_roformer import RoFormerTokenizer

   try:
      if not is_tokenizers_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .tokenization_roformer_fast import RoFormerTokenizerFast

   try:
      if not is_torch_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_roformer import (
          ROFORMER_PRETRAINED_MODEL_ARCHIVE_LIST,
          RoFormerForCausalLM,
          RoFormerForMaskedLM,
          RoFormerForMultipleChoice,
          RoFormerForQuestionAnswering,
          RoFormerForSequenceClassification,
          RoFormerForTokenClassification,
          RoFormerLayer,
          RoFormerModel,
          RoFormerPreTrainedModel,
          load_tf_weights_in_roformer,
      )

   try:
      if not is_tf_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_tf_roformer import (
          TF_ROFORMER_PRETRAINED_MODEL_ARCHIVE_LIST,
          TFRoFormerForCausalLM,
          TFRoFormerForMaskedLM,
          TFRoFormerForMultipleChoice,
          TFRoFormerForQuestionAnswering,
          TFRoFormerForSequenceClassification,
          TFRoFormerForTokenClassification,
          TFRoFormerLayer,
          TFRoFormerModel,
          TFRoFormerPreTrainedModel,
      )

   try:
      if not is_flax_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_flax_roformer import (
          FLAX_ROFORMER_PRETRAINED_MODEL_ARCHIVE_LIST,
          FlaxRoFormerForMaskedLM,
          FlaxRoFormerForMultipleChoice,
          FlaxRoFormerForQuestionAnswering,
          FlaxRoFormerForSequenceClassification,
          FlaxRoFormerForTokenClassification,
          FlaxRoFormerModel,
          FlaxRoFormerPreTrainedModel,
      )


else:
   import sys

   UpperCamelCase_		:     Optional[int]          =		_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)


