o
    e%                     @   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rGddlZdd Zejdd dS dS )z,Self-test suite for Cryptodome.Hash.SHA3_256    N)hexlify)load_test_vectors)list_test_cases)SHA3_256)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 )Nrrrrttt   )dataT)r
   update_after_digest)r   SHA3newdigestassertRaises	TypeErrorupdateassertEquals)selfmsghdig1dig2 r   H/usr/lib/python3/dist-packages/Cryptodome/SelfTest/Hash/test_SHA3_256.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 ]}|jd	kr%td
|_|t|j|j|j	f q||t
d|t
jdd7 }|tt7 }|S )N   )make_hash_tests)Hashr   zShortMsgKAT_SHA3-256.txtzKAT SHA-3 256lenc                 S   s   t | S N)int)xr   r   r   <lambda>>   s    zget_tests.<locals>.<lambda>r    r   z2.16.840.1.101.3.4.2.8)digest_sizeoid)commonr   r   r!   r   r   appendr   mddescr   r'   r   r   )configr   teststest_vectors	test_datatvr   r   r   	get_tests6   s(   



r2   __main__c                   C   s   t t S r"   )unittest	TestSuiter2   r   r   r   r   r%   O   s    r%   suite)defaultTest)__doc__r4   binasciir   Cryptodome.SelfTest.loaderr   Cryptodome.SelfTest.st_commonr   Cryptodome.Hashr   r   Cryptodome.Util.py3compatr   TestCaser   r2   r   r6   mainr   r   r   r   <module>   s   