



# 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_						=       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 __lowerCAmelCase	(       SCREAMING_SNAKE_CASE_					):
			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 __lowerCAmelCase	(       SCREAMING_SNAKE_CASE_					):
			from transformers.testing_utils import pytest_addoption_shared

			pytest_addoption_shared(SCREAMING_SNAKE_CASE_					)



def __lowerCAmelCase	(       SCREAMING_SNAKE_CASE_					):
			from transformers.testing_utils import pytest_terminal_summary_main

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



def __lowerCAmelCase	(       SCREAMING_SNAKE_CASE_  ,					SCREAMING_SNAKE_CASE_					):
			# If no tests are collected, pytest exists with code 5, which makes the CI fail.
			if exitstatus == 5:
						lowercase__   					=			0


# Doctest custom flag to ignore output.
lowercase_						=       doctest.register_optionflag("""IGNORE_RESULT""")

lowercase_						=       doctest.OutputChecker
class 			_snake_case     (   lowercase__):




				def 							A__ (  self   :  Tuple,   __lowercase   :  int,   __lowercase   :  Optional[int],   __lowercase   :  int  ):
							if IGNORE_RESULT & optionflags:
										return True
							return OutputChecker.check_output(self,   __lowercase,   __lowercase,   __lowercase  )
lowercase_						=       CustomOutputChecker
lowercase_						=       HfDoctestModule




lowercase_						=       HfDocTestParser









from pathlib import Path

import fire



def __lowerCAmelCase	(       SCREAMING_SNAKE_CASE_  ,					SCREAMING_SNAKE_CASE_  ,					SCREAMING_SNAKE_CASE_					):
			lowercase__   					=			Path(SCREAMING_SNAKE_CASE_					)
			lowercase__   					=			Path(SCREAMING_SNAKE_CASE_					)
			dest_dir.mkdir(exist_ok=SCREAMING_SNAKE_CASE_					)
			for path in src_dir.iterdir():
						lowercase__   					=			[x.rstrip() for x in list(path.open().readlines()					)][:n]
						lowercase__   					=			dest_dir.joinpath(path.name					)
						print(SCREAMING_SNAKE_CASE_					)
						dest_path.open("w"					).write("\n".join(SCREAMING_SNAKE_CASE_					)					)


if __name__ == "__main__":
							fire.Fire(minify)




