OwlCyberSecurity - MANAGER
Edit File: util.cpython-312.pyc
� ֓�g � �` � d dl mZ d dlZd dlmZ d dlmZ ddlmZ d� Z d� Z dd �Zd d �Zdd�Z y)� )�annotationsN)�Union)�inspect_getfullargspec� )�sqla_2c �P �� ddl m} t � }| D ] �|j �� � t |� } |j | D ��cg c]2 �dj �fd�|D � � ft �fd�|D � � z ��4 c}ddt |� z z dj |� d ��S c c}w ) a A facade around @testing.combinations() oriented towards boolean keyword-based arguments. Basically generates a nice looking identifier based on the keywords and also sets up the argument names. E.g.:: @testing.flag_combinations( dict(lazy=False, passive=False), dict(lazy=True, passive=False), dict(lazy=False, passive=True), dict(lazy=False, passive=True, raiseload=True), ) would result in:: @testing.combinations( ('', False, False, False), ('lazy', True, False, False), ('lazy_passive', True, True, False), ('lazy_passive', True, True, True), id_='iaaa', argnames='lazy,passive,raiseload' ) r ��config�_c 3 �H �K � | ] }�j |d � s�|�� � y�w�FN��get��.0�k�ds ��C/opt/hc_python/lib/python3.12/site-packages/alembic/testing/util.py� <genexpr>z$flag_combinations.<locals>.<genexpr>9 s �� �� �9��A����q�%��a��s �"�"c 3 �B �K � | ] }�j |d � �� � y�wr r r s �r r z$flag_combinations.<locals>.<genexpr>: s �� �� �2�T��A�E�E�!�U�O�T�s ��i�a�,)�id_�argnames) �sqlalchemy.testingr �set�update�sorted�combinations�join�tuple�len)r r �keysr s `r �flag_combinationsr% s� �� �: *��5�D� �����A�� � �$�<�D��6��� "� � "�� �X�X�9��9� 9�;��2�T�2�2� 3�!� � �3��T��?�#����$��� �� s �7B#c � � t | � d }|D �ci c] }||j |� �� }}t | j � }|j |� t j | j |� } |di |��S c c}w )z�Given a no-arg lambda and a namespace, return a new lambda that has all the values filled in. This is used so that we can have module-level fixtures that refer to instance-level variables using lambdas. r � )r �pop�dict�__globals__r �types�FunctionType�__code__)�__fn�kw�pos_args�arg� pass_pos_args�glb�new_fns r �resolve_lambdar5 B sx � � &�d�+�A�.�H�19�:��#�S�"�&�&��+�%��M�:� �t��� �C��J�J�r�N� � � �� � �s� 3�F��"�M�"�"�� ;s �A<c �2 � ��� ddl m� ddlm� �� �fd�}|S )z&Provide MetaData for a pytest fixture.r r � )�fixture_functionsc �B �� � �� fd�} �j ��� |� S )Nc 3 � �K � ddl m} |j � x}| _ �| |� }|j �j � |�� |j �j � y # |j �j � w xY w�w)Nr )�schema)� sqlalchemyr; �MetaData�metadata� create_all�db�drop_all)�selfr; r>