
    tf                         d Z ddlmZmZ ddlmZ ddlmZ ddlm	Z	 ddl
mZ ddlmZmZ  G d	 d
e	j                  ZdS )z+
Test cases for L{twisted.logger._buffer}.
    )Listcast)BrokenMethodImplementation)verifyObject)unittest   )LimitedHistoryLogObserver)ILogObserverLogEventc                   *    e Zd ZdZddZddZddZdS )LimitedHistoryLogObserverTestsz1
    Tests for L{LimitedHistoryLogObserver}.
    returnNc                     t          d          }	 t          t          |           dS # t          $ r }|                     |           Y d}~dS d}~ww xY w)zH
        L{LimitedHistoryLogObserver} provides L{ILogObserver}.
        r   N)r	   r   r
   r   fail)selfobserveres      ^/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/twisted/logger/test/test_buffer.pytest_interfacez-LimitedHistoryLogObserverTests.test_interface   sf     -Q//	x00000) 	 	 	IIaLLLLLLLLL	s   ( 
AAAc                 
   d}d t          |dz            D             }t          |          }|D ]} ||           g }|                    t          t          |j                             |                     ||           dS )zY
        L{LimitedHistoryLogObserver} saves history in the order it is received.
           c                 .    g | ]}t          |           S )ndict.0r   s     r   
<listcomp>z=LimitedHistoryLogObserverTests.test_order.<locals>.<listcomp>&   s     666$)))666    r   Nranger	   replayTor   r
   appendassertEqualr   sizeeventsr   event	outEventss         r   
test_orderz)LimitedHistoryLogObserverTests.test_order!   s     66U419%5%5666,T22 	 	EHUOOOO$&	$|Y-=>>???+++++r    c                    d}d t          |dz            D             }t          |          }|D ]} ||           g }|                    t          t          |j                             |                     || d         |           dS )z
        When more events than a L{LimitedHistoryLogObserver}'s maximum size are
        buffered, older events will be dropped.
        r   c                 .    g | ]}t          |           S r   r   r   s     r   r   z=LimitedHistoryLogObserverTests.test_limit.<locals>.<listcomp>6   s     555$)))555r    r   Nr!   r&   s         r   
test_limitz)LimitedHistoryLogObserverTests.test_limit0   s    
 55U4!8__555,T22 	 	EHUOOOO$&	$|Y-=>>???33333r    )r   N)__name__
__module____qualname____doc__r   r+   r.    r    r   r   r      sZ            , , , ,4 4 4 4 4 4r    r   N)r2   typingr   r   zope.interface.exceptionsr   zope.interface.verifyr   twisted.trialr   _bufferr	   _interfacesr
   r   TestCaser   r3   r    r   <module>r;      s             @ @ @ @ @ @ . . . . . . " " " " " " / / / / / / 0 0 0 0 0 0 0 0,4 ,4 ,4 ,4 ,4X%6 ,4 ,4 ,4 ,4 ,4r    