Sindbad~EG File Manager
�
(Μg�� � �` � d dl Z d dl mZ d dlZd dlZd dlZdZ ej e� Zd� Z G d� de j � Z
G d� de j � Z G d � d
e j � Z G d� de j � Z
G d
� de j � Zedk( r e j � yy)� N)�mockz�^<(?P<class>.*?) object at (?P<address>.*?)\[(?P<extras>(set|unset|locked|unlocked|filling|draining|resetting|broken)(, value:\d)?(, waiters:\d+)?(, waiters:\d+\/\d+)?)\]>\Zc �. � t j d � y �N)�asyncio�set_event_loop_policy� � �9/usr/local/lib/python3.12/test/test_asyncio/test_locks.py�tearDownModuler s � ��!�!�$�'r c �T � e Zd Zd� Zd� Zd� Zd� Zd� Zd� Zd� Z d� Z
d � Zd
� Zd� Z
d� Zy
)� LockTestsc � � K � t j � }| j t |� j d� � | j t
j
t |� � � |j � � d { ��� | j t |� j d� � | j t
j
t |� � � y 7 �[�w)Nz[unlocked]>� [locked]>)r �Lock�
assertTrue�repr�endswith�RGX_REPR�match�acquire��self�locks r
� test_reprzLockTests.test_repr s� � �� ��|�|�~������T�
�+�+�M�:�;�������t�D�z�2�3��l�l�n�������T�
�+�+�K�8�9�������t�D�z�2�3� �s �A>C� C�ACc � �� K � t j � }| j t d� 5 |� d { ��� d d d � | j |j � � y 7 �,# 1 sw Y �+xY w�w)Nz/object Lock can't be used in 'await' expression)r r �assertRaisesRegex� TypeError�assertFalse�lockedr s r
� test_lockzLockTests.test_lock% sY � �� ��|�|�~��
�
#�
#��=�
� �J�J�
�
�������'�
��
�
�s+ �+A.�A"�A �A"�(A.� A"�"A+�'A.c � �^ K � t j t j t j t j t j
g}t j � }|D ]7 }| j t |j � d�� 5 ||�� d d d � �9 y # 1 sw Y �DxY w�w)Nz8\.__init__\(\) got an unexpected keyword argument 'loop'��loop)
r r � Condition�Event� Semaphore�BoundedSemaphore�get_running_loopr r �__name__)r �primitives_clsr# �clss r
�&test_lock_doesnt_accept_loop_parameterz0LockTests.test_lock_doesnt_accept_loop_parameter0 s� � �� ��L�L�����M�M�����$�$�
�� �'�'�)��!�C��'�'���L�L�>� "+� ,��
���� � "�� �s �B
B-�
B!�B-�!B* �&B-c � �
K � t j � t j � t j � t j � g}|D ]� }t j
d� � d { ��� | j
|j � � | j t d� 5 |� d { ��� 5 d d d � d d d � | j
|j � � �� y 7 �x7 �:# 1 sw Y �7xY w# 1 sw Y �;xY w�w)N�{�G�z�?z.object \w+ can't be used in 'await' expression)
r r r$ r&