← Back
Editing: test_memory.cpython-38.pyc
U W[d � @ sX d Z ddlmZmZmZ ddlmZ ddlmZ ddl m Z mZmZ G dd� de�Z d S ) z( Tests for L{twisted._threads._memory}. � )�absolute_import�division�print_function)�verifyObject)�SynchronousTestCase� )�AlreadyQuit�IWorker�createMemoryWorkerc @ s( e Zd ZdZdd� Zdd� Zdd� ZdS ) �MemoryWorkerTestsz$ Tests for L{MemoryWorker}. c s� t � \}}tt|� g � |�� fdd�� |�� fdd�� | �� g � | �|� d� | �� dg� | �|� d� | �� ddg� dS )z� L{createMemoryWorker} creates an L{IWorker} and a callable that can perform work on it. The performer returns C{True} if it accomplished useful work. c s � � d�S )N� ��append� �Zdoner �C/usr/lib/python3/dist-packages/twisted/_threads/test/test_memory.py�<lambda> � z?MemoryWorkerTests.test_createWorkerAndPerform.<locals>.<lambda>c s � � d�S )N� r r r r r r r Tr r N)r r r �do�assertEqual��self�worker� performerr r r �test_createWorkerAndPerform s z-MemoryWorkerTests.test_createWorkerAndPerformc sp t � \}}g � � fdd�}|�|� |�� | �t|j|� | �t|j� |� | �� dg� | �|� d� dS )a Calling C{quit} on the worker returned by L{createMemoryWorker} causes its C{do} and C{quit} methods to raise L{AlreadyQuit}; its C{perform} callable will start raising L{AlreadyQuit} when the work already provided to C{do} has been exhausted. c s � � d� d S )N� r r r r r �moreWork/ s z2MemoryWorkerTests.test_quitQuits.<locals>.moreWorkr FN)r r �quitZassertRaisesr r )r r r r r r r �test_quitQuits&