a
    !f                     @   s   d Z ddl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 G dd	 d	ejZi fd
dZedkrddlZdd Zejdd dS )z(Self-test suite for Crypto.Hash.SHA3_384    N)hexlify)load_test_vectors)list_test_cases)SHA3_384)bc                   @   s   e Zd Zdd ZdS )APITestc                 C   s   t d}tj|d d d}| }| t|j|dd   tj|d }tj|d d dd}| | | ||dd   | | | d S )NZrrrrttt   )dataT)r	   Zupdate_after_digest)r   SHA3newdigestassertRaises	TypeErrorupdateassertEqual)selfmsghZdig1Zdig2 r   c/var/www/html/python-backend/venv/lib/python3.9/site-packages/Crypto/SelfTest/Hash/test_SHA3_384.pytest_update_after_digest$   s    z APITest.test_update_after_digestN)__name__
__module____qualname__r   r   r   r   r   r   "   s   r   c                 C   s   ddl m} g }tdddddd ip(g }g }|D ]2}|jd	krJtd
|_|t|j|j|j	f q2||t
d|t
jdd7 }|tt7 }|S )N   )make_hash_tests)ZHashr
   zShortMsgKAT_SHA3-384.txtzKAT SHA-3 384lenc                 S   s   t | S N)int)xr   r   r   <lambda>>       zget_tests.<locals>.<lambda>r    r   z2.16.840.1.101.3.4.2.9)digest_sizeoid)commonr   r   r   r   r   appendr   mddescr
   r#   r   r   )configr   testsZtest_vectorsZ	test_datatvr   r   r   	get_tests6   s(    



r,   __main__c                   C   s   t t S r   )unittestZ	TestSuiter,   r   r   r   r   r    N   r!   r    suite)ZdefaultTest)__doc__r.   binasciir   ZCrypto.SelfTest.loaderr   ZCrypto.SelfTest.st_commonr   ZCrypto.Hashr   r
   ZCrypto.Util.py3compatr   ZTestCaser   r,   r   r/   mainr   r   r   r   <module>   s   