
    X-Ph                    n    d Z ddlmZ ddlZddlZddlmZmZ ddlm	Z	 ddl
mZmZ  G d de          ZdS )	zEnsure the argparse parser and Options class are in sync.

In particular, verify that the argparse defaults are the same as the Options
defaults, and that argparse doesn't assign any new members to the Options
object it creates.
    )annotationsN)infer_python_executableprocess_options)Options)Suiteassert_equalc                      e Zd ZddZddZdS )ArgSuitereturnNonec                    t                      }t          g d          \  }}|j        |_        t          |                                |                                           d S )NF)require_targets)r   r   config_filer   snapshot)selfoptions_parsed_optionss       R/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/mypy/test/testargs.pytest_coherencezArgSuite.test_coherence   s[    ))+BFFF>,8W%%'')@)@)B)BCCCCC    c                   d                     t          j                  }dg}|d| gz   }t          |          \  }}|j        t          j        dd         k    sJ |j        t          j        k    sJ |dt          j         gz   }t          |          \  }}|j        t          j        dd         k    sJ |j        t          j        k    sJ |d| dt          j         gz   }t          |          \  }}|j        t          j        dd         k    sJ |j        t          j        k    sJ |d| dgz   }t          |          \  }}|j        t          j        dd         k    sJ |j        J t          j                    }d|_        d|_        d|_	        t                      }d|_        t          j        dd         |_        t          ||           |j        t          j        dd         k    sJ |j        t          j        k    sJ t                      }t          j        |_        t          ||           |j        t          j        dd         k    sJ |j        t          j        k    sJ dS )	z7Test the --python-executable flag with --python-versionz{ver.major}.{ver.minor})verzfile.pyz--python-version=N   z--python-executable=z--no-site-packages)formatsysversion_infor   python_versionpython_executable
executableargparse	Namespaceno_executabler   r   )r   sys_ver_strbasematching_versionr   r   special_optss          r   test_executable_inferencez"ArgSuite.test_executable_inference   s   /663;K6LL{  #D{#D#D"EE$%566
7%)9"1")=====(CN::::#J#.#J#J"KK$%566
7%)9"1")=====(CN::::  ---33>33#
 
 %%566
7%)9"1")=====(CN::::  #D{#D#DFZ"[[$%566
7%)9"1")=====(000  )++)-&&*#%)" ))$(!!$!1"1"!5666%)9"1")=====(CN:::: ))$'N!666%)9"1")=====(CN::::::r   N)r   r   )__name__
__module____qualname__r   r(    r   r   r
   r
      s@        D D D D3; 3; 3; 3; 3; 3;r   r
   )__doc__
__future__r   r!   r   	mypy.mainr   r   mypy.optionsr   mypy.test.helpersr   r   r
   r,   r   r   <module>r2      s     # " " " " "  



 > > > > > > > >             1 1 1 1 1 1 1 1;; ;; ;; ;; ;;u ;; ;; ;; ;; ;;r   