





import os
import shutil
import unittest
from unittest.mock import patch

from transformers.testing_utils import CaptureStd, is_pt_tf_cross_test, require_torch

class 		__a							(	unittest.TestCase      ):



       @patch("""sys.argv"""					,			["""fakeprogrampath""", """env"""]			)
       def  A							(     self	:   Optional[Any]			):
           # test transformers-cli env
           import transformers.commands.transformers_cli

           with CaptureStd() as cs:
               transformers.commands.transformers_cli.main()
           self.assertIn("""Python version"""					,			cs.out			)
           self.assertIn("""Platform"""					,			cs.out			)
           self.assertIn("""Using distributed or parallel set-up in script?"""					,			cs.out			)



       @is_pt_tf_cross_test
       @patch(
           """sys.argv"""					,			["""fakeprogrampath""", """pt-to-tf""", """--model-name""", """hf-internal-testing/tiny-random-gptj""", """--no-pr"""]			)
       def  A							(     self	:   Optional[int]			):
           import transformers.commands.transformers_cli

           shutil.rmtree("""/tmp/hf-internal-testing/tiny-random-gptj"""					,			ignore_errors=UpperCAmelCase			)  # cleans potential past runs
           transformers.commands.transformers_cli.main()

           # The original repo has no TF weights -- if they exist, they were created by the CLI
           self.assertTrue(os.path.exists("""/tmp/hf-internal-testing/tiny-random-gptj/tf_model.h5"""			)			)



       @require_torch
       @patch("""sys.argv"""					,			["""fakeprogrampath""", """download""", """hf-internal-testing/tiny-random-gptj""", """--cache-dir""", """/tmp"""]			)
       def  A							(     self	:   str			):
           import transformers.commands.transformers_cli

           # # remove any previously downloaded model to start clean
           shutil.rmtree("""/tmp/models--hf-internal-testing--tiny-random-gptj"""					,			ignore_errors=UpperCAmelCase			)

           # run the command
           transformers.commands.transformers_cli.main()

           # check if the model files are downloaded correctly on /tmp/models--hf-internal-testing--tiny-random-gptj
           self.assertTrue(os.path.exists("""/tmp/models--hf-internal-testing--tiny-random-gptj/blobs"""			)			)
           self.assertTrue(os.path.exists("""/tmp/models--hf-internal-testing--tiny-random-gptj/refs"""			)			)
           self.assertTrue(os.path.exists("""/tmp/models--hf-internal-testing--tiny-random-gptj/snapshots"""			)			)



       @require_torch
       @patch(
           """sys.argv"""					,			[
               """fakeprogrampath""",
               """download""",
               """hf-internal-testing/test_dynamic_model_with_tokenizer""",
               """--trust-remote-code""",
               """--cache-dir""",
               """/tmp""",
           ]					,			)
       def  A							(     self	:   Optional[int]			):
           import transformers.commands.transformers_cli

           # # remove any previously downloaded model to start clean
           shutil.rmtree("""/tmp/models--hf-internal-testing--test_dynamic_model_with_tokenizer"""					,			ignore_errors=UpperCAmelCase			)

           # run the command
           transformers.commands.transformers_cli.main()

           # check if the model files are downloaded correctly on /tmp/models--hf-internal-testing--test_dynamic_model_with_tokenizer
           self.assertTrue(os.path.exists("""/tmp/models--hf-internal-testing--test_dynamic_model_with_tokenizer/blobs"""			)			)
           self.assertTrue(os.path.exists("""/tmp/models--hf-internal-testing--test_dynamic_model_with_tokenizer/refs"""			)			)
           self.assertTrue(
               os.path.exists("""/tmp/models--hf-internal-testing--test_dynamic_model_with_tokenizer/snapshots"""			)			)









def 			__UpperCamelCase				(			lowercase__	:       set		,    lowercase__	:       set		)	->      set:
    '''simple docstring'''





    assert isinstance(lowercase__		,    lowercase__		), f'The input value of [set_a={set_a}] is not a set'
    assert isinstance(lowercase__		,    lowercase__		), f'The input value of [set_b={set_b}] is not a set'

    return {a + b for a in set_a for b in set_b}


if __name__ == "__main__":
  from doctest import testmod

  testmod()


