U
    ‘bÖe“  ã                   @   s   d dl Z d dlZzd dlZdZW n ek
r8   dZY nX zd dlZdZW n ek
rb   dZY nX zd dlZdZ	W n ek
rŒ   dZ	Y nX ej
dddgddd	„ ƒZd
d„ Zej ¡ dd„ ƒZej ¡ dd„ ƒZej ¡ dd„ ƒZej ¡ dd„ ƒZej ¡ dd„ ƒZej ¡ dd„ ƒZdS )é    NTFÚpylibmcÚmemcacheÚ
pymemcache)Úparamsc                 C   s²   | j dkr:tst d¡ t |› d|› g¡}ddi|_nl| j dkrjtsRt d¡ t |› d|› g¡}n<| j dkr”t	s‚t d	¡ t
j ||f¡}nt d
| j › ¡ | ¡  |S )Nr   zrequires pylibmcú:Ztcp_nodelayTr   zrequires python-memcachedr   zrequires pymemcachezunknown library )ÚparamÚHAS_PYLIBMCÚpytestÚskipr   ZClientZ	behaviorsÚHAS_MEMCACHEr   ÚHAS_PYMEMCACHEr   ÚclientZ	flush_all)ÚrequestÚhostÚportr   © r   ú`/var/www/html/services/stratfitenv/lib/python3.8/site-packages/pymemcache/test/test_benchmark.pyr   )   s     





r   c                 O   s<   t   ¡ }t| ƒD ]}|||Ž}qt   ¡ | }tt|ƒƒ |S ©N)ÚtimeÚrangeÚprintÚstr)ÚcountÚfuncÚargsÚkwargsÚstartÚ_ÚresultÚdurationr   r   r   Ú	benchmarkH   s    r    c                 C   s*   d}|| }|  ||¡ t||j|ƒ d S ©Nzpymemcache_test:0)Úsetr    Úget©r   r   Úpairsr   ÚkeyÚvaluer   r   r   Útest_bench_getT   s    r(   c                 C   s    d}|| }t ||j||ƒ d S r!   )r    r"   r$   r   r   r   Útest_bench_set\   s    r)   c                 C   s    |  |¡ t||jt|ƒƒ d S r   )Ú	set_multir    Z	get_multiÚlist©r   r   r%   r   r   r   r   Útest_bench_get_multic   s    
r-   c                 C   s   t ||j|ƒ d S r   )r    r*   r,   r   r   r   Útest_bench_set_multii   s    r.   c                 C   s   t ||jt|ƒƒ d S r   )r    ÚdeleteÚnextr,   r   r   r   Útest_bench_deleten   s    r1   c                 C   s   t ||jt| ¡ ƒƒ d S r   )r    Zdelete_multir+   Úkeysr,   r   r   r   Útest_bench_delete_multis   s    r3   )r   r	   r   r   Ú	Exceptionr   r   Zpymemcache.clientr   r   Zfixturer   r    Úmarkr(   r)   r-   r.   r1   r3   r   r   r   r   Ú<module>   sH   


ýÿ





