o
    DDi7                     @   s\   d dl mZ d dlmZ d dlmZ d dlmZmZm	Z	 d dl
mZmZ G dd deZdS )	    )Union)detect_config)PythonVersionInfo)parser_config_asdictParserConfigPartialParserConfig)data_providerUnitTestc                   @   s  e Zd Zei ddeddddeddgdd	dd
edde ddddeddd
dedgdd	dd
edde ddddeddd
d
eddgdd	dd
edde ddddeddddeg ddd	ddedde ddddedddddeg ddd	ddedde ddddeddddeg dddddedde dddded dd!ddeg ddd ddedde ddd"d#eddddeg d$d%d	ddedde ddd&d#ed'dd(ddeg d$d'd	ddedde ddd)d*eddddeg d$dd	ddedde ddd+d,ed-dd(dded.dgd-d	dd
edde ddd/d0edddded.dgdd	dd
edde ddd1d2edddded.dgdd	ddedde ddd3d4eddddeg d5dd	dd
edde ddd6d7eddddeg d5dd	ddedde ddd8d9eddddeg d:dd	ddedded;hddd<d=eddddeg d>dd	ddedded;d?hddd@ee	e
f dAedBedCedDedEdFfdGdHZdFS )ITestDetectConfigempty_input    z3.7)python_versionT
 zutf-8z    F      )linesencodingdefault_indentdefault_newlinehas_trailing_newlineversionfuture_imports)sourcepartialdetect_trailing_newlinedetect_default_newlineexpected_config detect_trailing_newline_disableddetect_default_newline_disableds   passzpassnewline_inferreds   first_line

something
)first_line
r   z
something
r   z
newline_partial_givens   first_line
second_line
)r   r   )r!   zsecond_line
r   indent_inferreds   if test:
	  something
)z	if test:
z	  something
r   z	  indent_partial_givenz      )r   r   encoding_inferreds2   #!/usr/bin/python3
# -*- coding: latin-1 -*-
pass
)z#!/usr/bin/python3
z# -*- coding: latin-1 -*-
zpass
r   z
iso-8859-1encoding_partial_givenzus-ascii)r   r   )encoding_str_not_bytes_disables_inferencez2#!/usr/bin/python3
# -*- coding: latin-1 -*-
pass
-encoding_non_ascii_compatible_utf_16_with_boms
   t e s t zutf-16ztest
'detect_trailing_newline_missing_newlines   test#detect_trailing_newline_has_newlines   test
?detect_trailing_newline_missing_newline_after_line_continuations   test\
)ztest\
r   r   ;detect_trailing_newline_has_newline_after_line_continuations   test\

"future_imports_in_correct_positions,   # C
''' D '''
from __future__ import a as b
)z# C
z
''' D '''
zfrom __future__ import a as b
r   a future_imports_in_mixed_positions?   from __future__ import a, b
import os
from __future__ import c
)zfrom __future__ import a, b
z
import os
zfrom __future__ import c
r   br   r   r   r   r   returnNc             	   C   s&   |  tt||||djt| d S )N)r   r   r   )assertEqualr   r   config)selfr   r   r   r   r    r5   `/var/www/Datamplify/venv/lib/python3.10/site-packages/libcst/_parser/tests/test_detect_config.pytest_detect_module_config   s     0z*TestDetectConfig.test_detect_module_config)__name__
__module____qualname__r   r   r   r   	frozensetr   strbytesboolr7   r5   r5   r5   r6   r
      sz   .=N]n     -
  <  K  Z  i  x   
    '
r
   N)typingr   libcst._parser.detect_configr   libcst._parser.parso.utilsr   libcst._parser.types.configr   r   r   libcst.testing.utilsr   r	   r
   r5   r5   r5   r6   <module>   s   